2022.12.14 12:21 [3425274] smart account 3PD18pUDH3EPtqLzC1w2AK33PVBu6qnSLS1 > SELF 0.00000000 Waves

{ "type": 13, "id": "CZwXGQERDk9BaybZ3DccXW5xje5a9pncF5Mhcq5DHyQQ", "fee": 1000000, "feeAssetId": null, "timestamp": 1671009794175, "version": 2, "chainId": 87, "sender": "3PD18pUDH3EPtqLzC1w2AK33PVBu6qnSLS1", "senderPublicKey": "HmVJ1kiwhwwy3iHzDJqs4etemzQeGtHh9jngHyrnTBFU", "proofs": [ "5TNVRkZrcEhVDHqeeS1d29tnqTSBTKxsLERF9uTyx4sdLWMpaMoQkV3HQ8jh56p3BS2rFfUz6Nrufy1YjsfuzryE" ], "script": "base64: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", "height": 3425274, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: FXan6YsLkYPFkTpmZCgukSYhfRjDZCytyVxmQJJfynVw Next: B3EAMuGTHLfSok51HDMmsNhcQYMHR9ehGWfkJ2MSV13W Diff:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let GENES = ["shell", "fangs", "horns", "long tongue", "poison", "scavenger", "camouflage"]
4+let GENES = ["shell", "fangs", "horns", "long tongue", "poison", "scavenger", "camouflage", "immunity"]
55
66 func tryGetInteger (key) = match getInteger(this, key) {
77 case b: Int =>
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let GENES = ["shell", "fangs", "horns", "long tongue", "poison", "scavenger", "camouflage"]
4+let GENES = ["shell", "fangs", "horns", "long tongue", "poison", "scavenger", "camouflage", "immunity"]
55
66 func tryGetInteger (key) = match getInteger(this, key) {
77 case b: Int =>
88 b
99 case _ =>
1010 0
1111 }
1212
1313
1414 func getRandomNumber (variants,txId,offset) = {
1515 let randomSeedBlock = value(blockInfoByHeight((height - 1)))
1616 let randomHash = sha256((txId + value(randomSeedBlock.vrf)))
1717 (toInt(randomHash, (offset * 8)) % variants)
1818 }
1919
2020
2121 let nftCreationAddress = Address(base58'3PFQjjDMiZKQZdu5JqTHD7HwgSXyp9Rw9By')
2222
2323 func mintNFT (name,desc,link,collection) = {
2424 let NFTId = match invoke(nftCreationAddress, "createNFT", [name, desc, link, collection], nil) {
2525 case x: String =>
2626 x
2727 case _ =>
2828 throw("something went wrong during the creation of NFT")
2929 }
3030 if ((NFTId == NFTId))
3131 then NFTId
3232 else throw("Strict value is not equal to itself.")
3333 }
3434
3535
3636 @Callable(i)
3737 func mintAnimal (name) = {
3838 let domain = ((toString((getRandomNumber(2, i.transactionId, 0) + 1)) + toString((getRandomNumber(3, i.transactionId, 1) + 1))) + "000000|")
3939 let desc = ("WAVES ANIMALS |" + domain)
4040 let nftID = mintNFT(name, desc, ("https://animals-back.herokuapp.com/image?domain=" + domain), "Waves Animals")
4141 if ((nftID == nftID))
4242 then [IntegerEntry(("quantity_" + domain), (tryGetInteger(("quantity_" + domain)) + 1)), StringEntry((("animal_" + nftID) + "_issuer"), toString(i.caller)), ScriptTransfer(i.caller, 1, fromBase58String(nftID))]
4343 else throw("Strict value is not equal to itself.")
4444 }
4545
4646
4747
4848 @Callable(i)
4949 func mintRandomGene () = if (if ((i.payments[0].assetId != base58'HEB8Qaw9xrWpWs8tHsiATYGBWDBtP2S7kcPALrMu43AS'))
5050 then true
5151 else (i.payments[0].amount != 1000000))
5252 then throw("please attach 0.01 PUZZLE as a payment. thanks!")
5353 else {
5454 let num = getRandomNumber(size(GENES), i.transactionId, 0)
5555 let nftID = mintNFT(GENES[num], ("WAVES ANIMALS GENES |" + GENES[num]), ("https://animals-back.herokuapp.com/image?gene=" + GENES[num]), "Animals Genes")
5656 if ((nftID == nftID))
5757 then [ScriptTransfer(i.caller, 1, fromBase58String(nftID))]
5858 else throw("Strict value is not equal to itself.")
5959 }
6060
6161
6262
6363 @Callable(i)
6464 func addGene () = {
6565 let animalId = value(i.payments[0].assetId)
6666 let geneId = value(i.payments[1].assetId)
6767 if (if ((i.payments[0].amount != 1))
6868 then true
6969 else (i.payments[1].amount != 1))
7070 then throw("attach payment")
7171 else {
7272 let name = value(assetInfo(animalId)).name
7373 let genName = value(assetInfo(geneId)).name
7474 let desc = ((value(assetInfo(animalId)).description + ",") + genName)
7575 let domain = ((value(split(desc, "|")[1]) + "|") + value(split(desc, "|")[2]))
7676 let nftID = mintNFT(name, desc, ("https://animals-back.herokuapp.com/image?domain=" + domain), "Waves Animals")
7777 if ((nftID == nftID))
7878 then [ScriptTransfer(i.caller, 1, fromBase58String(nftID))]
7979 else throw("Strict value is not equal to itself.")
8080 }
8181 }
8282
8383
8484 @Verifier(tx)
8585 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
8686

github/deemru/w8io/786bc32 
32.86 ms