tx · GzKLNWueaFXZYrDjnb2FfCqX3hcmYyyRTZCEaTFSUXLZ

3N356YfN19XTJNfZ1sE9kssQwTxvyMLq7MT:  -0.01000000 Waves

2022.05.31 13:47 [2075735] smart account 3N356YfN19XTJNfZ1sE9kssQwTxvyMLq7MT > SELF 0.00000000 Waves

{ "type": 13, "id": "GzKLNWueaFXZYrDjnb2FfCqX3hcmYyyRTZCEaTFSUXLZ", "fee": 1000000, "feeAssetId": null, "timestamp": 1653994083232, "version": 2, "chainId": 84, "sender": "3N356YfN19XTJNfZ1sE9kssQwTxvyMLq7MT", "senderPublicKey": "5FCKdCQ3s4naiaoX3iSwKqTAHzcVkGi6M48BnWuHjJ5u", "proofs": [ "2fhsauM54yqvxNXpgKqdWSDdigVEyJGdxMPEWanWSqdgrEvnAsgFqhnm3wCmk9USkPCACssv572ruxLv5KCggU6q" ], "script": "base64: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", "height": 2075735, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: 2ui9HngL45hMbzpu7KFXjXRYRuq2Jzuh8gjdLcn2dkHy Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 5 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+let PAYMENT_ASSET = base58'CgidgEMbCKXXErgJXVyZCFRaK8SBNA73Jg8mNXALtVKh'
5+
6+func isPaymentOk (i) = {
7+ let acceptableAssetId = PAYMENT_ASSET
8+ if ((size(i.payments) == 0))
9+ then throw("Payment not attached")
10+ else {
11+ let p = i.payments[0]
12+ let priceKey = "last_price"
13+ let integerVal = valueOrElse(getIntegerValue(this, priceKey), 50000000)
14+ match p.assetId {
15+ case assetId: ByteVector =>
16+ if ((assetId == PAYMENT_ASSET))
17+ then (p.amount == integerVal)
18+ else false
19+ case _ =>
20+ throw("Wrong payment asset or min amount 50 USDN")
21+ }
22+ }
23+ }
24+
25+
26+func pricer () = {
27+ let priceKey = "last_price"
28+ let integerVal = valueOrElse(getIntegerValue(this, priceKey), 0)
29+ if ((integerVal == 0))
30+ then [IntegerEntry(priceKey, 50000000)]
31+ else {
32+ let newPrice = (integerVal + 10000000)
33+[IntegerEntry(priceKey, newPrice)]
34+ }
35+ }
36+
37+
38+@Callable(i)
39+func mintPokemon (id) = {
40+ let walletString = toBase58String(i.caller.bytes)
41+ if (if ((id > 0))
42+ then true
43+ else (151 >= id))
44+ then if (isPaymentOk(i))
45+ then {
46+ let stringId = toString(id)
47+ let idCheck = valueOrElse(getString(this, stringId), "none")
48+ let toSet = ((toString(id) + "_w_") + walletString)
49+ let NFTNAME = ("POKEMON_NFT" + toString(id))
50+ if ((idCheck == "none"))
51+ then {
52+ let issuer = Issue(NFTNAME, ("POKEMON_NFT_" + toString(id)), 1, 0, false)
53+ let priceKey = "last_price"
54+ let integerVal = valueOrElse(getIntegerValue(this, priceKey), 0)
55+ let newPrice = (integerVal + 10000000)
56+ let ida = calculateAssetId(issuer)
57+ valueOrErrorMessage([issuer, StringEntry(((toString(id) + "_") + walletString), toBase58String(ida)), ScriptTransfer(i.caller, 1, ida), IntegerEntry(priceKey, newPrice)], "an error occured")
58+ }
59+ else throw("already minted by someone else")
60+ }
61+ else throw("Wrong payment amount or asset.")
62+ else throw("out of range")
63+ }
64+
65+

github/deemru/w8io/169f3d6 
19.61 ms