tx · EQJbX28c9j1tPMMRN5JLpRhvWEgM4cN7sW8unUBkpBrQ

3N99w48M6Xg9uY1R1HoDHmBpQff3Ni5vGpm:  -0.05000000 Waves

2021.04.05 22:04 [1469545] smart account 3N99w48M6Xg9uY1R1HoDHmBpQff3Ni5vGpm > SELF 0.00000000 Waves

{ "type": 13, "id": "EQJbX28c9j1tPMMRN5JLpRhvWEgM4cN7sW8unUBkpBrQ", "fee": 5000000, "feeAssetId": null, "timestamp": 1617649574889, "version": 2, "chainId": 84, "sender": "3N99w48M6Xg9uY1R1HoDHmBpQff3Ni5vGpm", "senderPublicKey": "HGQSJy3ik1sdoefTWS4qQBxDJZThuqyPuQmf1z87CU7q", "proofs": [ "2Cvgq6EWHgmkVYvEVZpsSACfBu2RLd4psgwzE9NyZSPFfobwuhbHCr2i6SKELW2ebZgojmcXFJrmcgWbrX8xRMRv" ], "script": "base64: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", "height": 1469545, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 2c78aHfeckApuDzc5JbELsqEfCn2mteDNmYJYK65434F Next: 6de97xuFRzVFJQNVKShGt2R3obdVtxZRtVFWz9zqAdSK Diff:
OldNewDifferences
99
1010 @Callable(i)
1111 func createNFT () = if ((kolejnytoken > 100))
12- then throw("Nie mozna już generować tokenów")
13- else if (if ((1000000000 > i.payments[0].amount))
14- then true
15- else (i.payments[0].assetId != unit))
16- then throw("Koszt wygenerowania nowego NFT to 10 WAVES")
17- else {
18- let asset = Issue((kolejnytokentxt + "NFT 1000WAVES"), "Dzięki temu tokenowi mozna uzyskać dotęp do 1000 WAVES pod adresem ... więcej informacji na stronie www", 1, 0, false, unit, 0)
19- let assetId = calculateAssetId(asset)
20- let nazwatokena = toBase58String(assetId)
12+ then throw("Nie mozna już generować tokenów / Tokens can no longer be generated ")
13+ else if ((size(i.payments) != 1))
14+ then throw("Musisz wykonać płatność za wygenerowanie NFT 10 WAVES / You need to make a payment to generate NFT 10 WAVES ")
15+ else if (if ((1000000000 > i.payments[0].amount))
16+ then true
17+ else (i.payments[0].assetId != unit))
18+ then throw("Koszt wygenerowania nowego NFT to 10 WAVES / The cost of generating a new NFT is 10 WAVES ")
19+ else {
20+ let asset = Issue((kolejnytokentxt + "NFT"), "Dzięki temu tokenowi mozna uzyskać dotęp do 1000 WAVES pod adresem ... więcej informacji na stronie www / With this token, you can access 1000 WAVES at ... more information at www ", 1, 0, false, unit, 0)
21+ let assetId = calculateAssetId(asset)
22+ let nazwatokena = toBase58String(assetId)
2123 [asset, IntegerEntry("NFTtokens", (liczbaNFT + 1)), StringEntry((kolejnytokentxt + " token"), nazwatokena), ScriptTransfer(i.caller, 1, assetId)]
22- }
24+ }
2325
2426
2527
2628 @Callable(j)
27-func singnNFT (NFT) = {
28- let NFTissuer = match assetInfo(valueOrErrorMessage(fromBase58String(NFT), "Błędny Asset")) {
29+func signNFT (OriginNFT) = {
30+ let NFTissuer = match assetInfo(valueOrErrorMessage(fromBase58String(OriginNFT), "Błędny Asset / Wrong Asset")) {
2931 case t: Asset =>
3032 t.issuer
3133 case _ =>
32- throw("Błędny Asset")
34+ throw("Błędny Asset / Wrong Asset")
3335 }
3436 if ((this != NFTissuer))
35- then throw("Błędny NFT")
36- else if ((assetBalance(j.caller, fromBase58String(NFT)) != 1))
37- then throw("Nie posiadasz tego NFT")
38- else if ((getBoolean(this, ((toString(j.caller) + "_") + NFT)) == true))
39- then throw("Już podpisywałeś tym NFT")
37+ then throw("Błędny NFT / Wrong NFT")
38+ else if ((assetBalance(j.caller, fromBase58String(OriginNFT)) != 1))
39+ then throw("Nie posiadasz tego NFT / You don't own this NFT")
40+ else if ((getBoolean(this, ((toString(j.caller) + "_") + OriginNFT)) == true))
41+ then throw("Już podpisywałeś tym NFT / You already signed the NFT with this")
4042 else if ((size(j.payments) != 1))
4143 then throw("Musisz wykonać płatność za podpisanie NFT 1 WAVES")
4244 else if (if ((100000000 > j.payments[0].amount))
4345 then true
4446 else (j.payments[0].assetId != unit))
45- then throw("Koszt podpisania przez NFT to 1 WAVES")
47+ then throw("Koszt podpisania przez NFT to 1 WAVES / You need to make NFT 1 WAVES signing payment")
4648 else {
4749 let liczbapodpisow = match getInteger(this, toString(j.caller)) {
4850 case t: Int =>
5052 case _ =>
5153 0
5254 }
53-[BooleanEntry(((toString(j.caller) + "_") + NFT), true), IntegerEntry(toString(j.caller), (liczbapodpisow + 1))]
55+[BooleanEntry(((toString(j.caller) + "_") + OriginNFT), true), IntegerEntry(toString(j.caller), (liczbapodpisow + 1))]
5456 }
5557 }
5658
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 4 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let liczbaNFT = getIntegerValue(this, "NFTtokens")
55
66 let kolejnytoken = (liczbaNFT + 1)
77
88 let kolejnytokentxt = toString(kolejnytoken)
99
1010 @Callable(i)
1111 func createNFT () = if ((kolejnytoken > 100))
12- then throw("Nie mozna już generować tokenów")
13- else if (if ((1000000000 > i.payments[0].amount))
14- then true
15- else (i.payments[0].assetId != unit))
16- then throw("Koszt wygenerowania nowego NFT to 10 WAVES")
17- else {
18- let asset = Issue((kolejnytokentxt + "NFT 1000WAVES"), "Dzięki temu tokenowi mozna uzyskać dotęp do 1000 WAVES pod adresem ... więcej informacji na stronie www", 1, 0, false, unit, 0)
19- let assetId = calculateAssetId(asset)
20- let nazwatokena = toBase58String(assetId)
12+ then throw("Nie mozna już generować tokenów / Tokens can no longer be generated ")
13+ else if ((size(i.payments) != 1))
14+ then throw("Musisz wykonać płatność za wygenerowanie NFT 10 WAVES / You need to make a payment to generate NFT 10 WAVES ")
15+ else if (if ((1000000000 > i.payments[0].amount))
16+ then true
17+ else (i.payments[0].assetId != unit))
18+ then throw("Koszt wygenerowania nowego NFT to 10 WAVES / The cost of generating a new NFT is 10 WAVES ")
19+ else {
20+ let asset = Issue((kolejnytokentxt + "NFT"), "Dzięki temu tokenowi mozna uzyskać dotęp do 1000 WAVES pod adresem ... więcej informacji na stronie www / With this token, you can access 1000 WAVES at ... more information at www ", 1, 0, false, unit, 0)
21+ let assetId = calculateAssetId(asset)
22+ let nazwatokena = toBase58String(assetId)
2123 [asset, IntegerEntry("NFTtokens", (liczbaNFT + 1)), StringEntry((kolejnytokentxt + " token"), nazwatokena), ScriptTransfer(i.caller, 1, assetId)]
22- }
24+ }
2325
2426
2527
2628 @Callable(j)
27-func singnNFT (NFT) = {
28- let NFTissuer = match assetInfo(valueOrErrorMessage(fromBase58String(NFT), "Błędny Asset")) {
29+func signNFT (OriginNFT) = {
30+ let NFTissuer = match assetInfo(valueOrErrorMessage(fromBase58String(OriginNFT), "Błędny Asset / Wrong Asset")) {
2931 case t: Asset =>
3032 t.issuer
3133 case _ =>
32- throw("Błędny Asset")
34+ throw("Błędny Asset / Wrong Asset")
3335 }
3436 if ((this != NFTissuer))
35- then throw("Błędny NFT")
36- else if ((assetBalance(j.caller, fromBase58String(NFT)) != 1))
37- then throw("Nie posiadasz tego NFT")
38- else if ((getBoolean(this, ((toString(j.caller) + "_") + NFT)) == true))
39- then throw("Już podpisywałeś tym NFT")
37+ then throw("Błędny NFT / Wrong NFT")
38+ else if ((assetBalance(j.caller, fromBase58String(OriginNFT)) != 1))
39+ then throw("Nie posiadasz tego NFT / You don't own this NFT")
40+ else if ((getBoolean(this, ((toString(j.caller) + "_") + OriginNFT)) == true))
41+ then throw("Już podpisywałeś tym NFT / You already signed the NFT with this")
4042 else if ((size(j.payments) != 1))
4143 then throw("Musisz wykonać płatność za podpisanie NFT 1 WAVES")
4244 else if (if ((100000000 > j.payments[0].amount))
4345 then true
4446 else (j.payments[0].assetId != unit))
45- then throw("Koszt podpisania przez NFT to 1 WAVES")
47+ then throw("Koszt podpisania przez NFT to 1 WAVES / You need to make NFT 1 WAVES signing payment")
4648 else {
4749 let liczbapodpisow = match getInteger(this, toString(j.caller)) {
4850 case t: Int =>
4951 t
5052 case _ =>
5153 0
5254 }
53-[BooleanEntry(((toString(j.caller) + "_") + NFT), true), IntegerEntry(toString(j.caller), (liczbapodpisow + 1))]
55+[BooleanEntry(((toString(j.caller) + "_") + OriginNFT), true), IntegerEntry(toString(j.caller), (liczbapodpisow + 1))]
5456 }
5557 }
5658
5759

github/deemru/w8io/873ac7e 
31.62 ms