tx · AdysQvGg9eoyZnb6cQffiMisNBgJVDczND1uaywn4Bvg 3Mr97MBt1TwRZHBK8R1EFDz8S8mxui5U4zB: -0.01400000 Waves 2021.05.26 13:00 [1542483] smart account 3Mr97MBt1TwRZHBK8R1EFDz8S8mxui5U4zB > SELF 0.00000000 Waves
{ "type": 13, "id": "AdysQvGg9eoyZnb6cQffiMisNBgJVDczND1uaywn4Bvg", "fee": 1400000, "feeAssetId": null, "timestamp": 1622023227141, "version": 2, "chainId": 84, "sender": "3Mr97MBt1TwRZHBK8R1EFDz8S8mxui5U4zB", "senderPublicKey": "CQ7vntBAYh2QZcKcqiiyEnQWWXsr98ysDptD23Wgxmvb", "proofs": [ "6BEkPD6xDb14JwGzkkwwv7pYJahNgMz3KMYXxXyH9z1qpdQahLmSMACJE5AEAnYybjKrdPtrZB41TmezkVPEJZv" ], "script": "base64:AAIEAAAAAAAAAAQIAhIAAAAAAgAAAAAIa2l0dGVuSWQCAAAALDhMTHBqNnlRTFV1MzdLVXQzclZvMVM2OWoyZ1dNYmdiTTZxcWd0MmFjMVZiAQAAAApnZW5lcmF0aW9uAAAAAQAAAANudW0DAwkAAGYAAAACBQAAAANudW0AAAAAAAAAAAAGCQAAZwAAAAIAAAAAAAAAAGQFAAAAA251bQIAAAACRzEDAwkAAGYAAAACBQAAAANudW0AAAAAAAAAAGQGCQAAZwAAAAIAAAAAAAAAA4QFAAAAA251bQIAAAACRzICAAAAAkczAAAAAQAAAAFpAQAAAA9naXZlQmlydGhLaXR0ZW4AAAAABAAAAANwbXQJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAEAAAABXBtdElkCQACWAAAAAEJAQAAAAV2YWx1ZQAAAAEIBQAAAANwbXQAAAAHYXNzZXRJZAMJAQAAAAIhPQAAAAIFAAAABXBtdElkBQAAAAhraXR0ZW5JZAkAAAIAAAABAgAAABlQbGVhc2Ugc2VuZCBLaXR0ZW4gdG9rZW4uBAAAAAxraXR0ZW5BbW91bnQIBQAAAANwbXQAAAAGYW1vdW50BAAAAA1pc3N1ZVF1YW50aXR5BAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMCAAAADWlzc3VlUXVhbnRpdHkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAALbmV3UXVhbnRpdHkJAABkAAAAAgUAAAANaXNzdWVRdWFudGl0eQAAAAAAAAAAAQQAAAAOZ2VuZXJhdGlvblR5cGUJAQAAAApnZW5lcmF0aW9uAAAAAQUAAAALbmV3UXVhbnRpdHkDCQAAZgAAAAIFAAAADGtpdHRlbkFtb3VudAAAAAAAAAAAAwkAAAIAAAABAgAAAClBbW91bnQgb2YgS2l0dGVuIHRva2VucyBzZW50IGlzIDMgdG9rZW5zLgMJAABmAAAAAgAAAAAAAAAAAwUAAAAMa2l0dGVuQW1vdW50CQAAAgAAAAECAAAAKUFtb3VudCBvZiBLaXR0ZW4gdG9rZW5zIHNlbnQgaXMgMyB0b2tlbnMuBAAAAAlraXR0ZW5OZnQJAARCAAAABQIAAAAPS2l0dGVuKD1e44O7Xj0pCQABLAAAAAICAAAAC2dlbmVyYXRpb246BQAAAA5nZW5lcmF0aW9uVHlwZQAAAAAAAAAAAQAAAAAAAAAAAAcEAAAAC2tpdHRlbk5mdElkCQAEOAAAAAEFAAAACWtpdHRlbk5mdAkABEwAAAACBQAAAAlraXR0ZW5OZnQJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwgFAAAAAWkAAAAGY2FsbGVyAAAAAAAAAAABBQAAAAtraXR0ZW5OZnRJZAUAAAADbmlsAAAAAQAAAAJ0eAEAAAAGdmVyaWZ5AAAAAAkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAAIBQAAAAJ0eAAAAA9zZW5kZXJQdWJsaWNLZXmz/8RA", "height": 1542483, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: D4Q7dT7KW8UKaJPskYFrH6FRRjmJ7ANkRv3GuP9DLaXJ Next: DthZSH1gMzDMG9Yxhj6MTyBbre7KqTpniNoYcQSVeW5P Diff:
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 4 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | + | let kittenId = "8LLpj6yQLUu37KUt3rVo1S69j2gWMbgbM6qqgt2ac1Vb" | |
5 | + | ||
4 | 6 | func generation (num) = if (if ((num > 0)) | |
5 | 7 | then true | |
6 | 8 | else (100 >= num)) | |
15 | 17 | @Callable(i) | |
16 | 18 | func giveBirthKitten () = { | |
17 | 19 | let pmt = i.payments[0] | |
18 | - | let kittenAmount = pmt.amount | |
19 | - | let kittenId = toBase58String(value(pmt.assetId)) | |
20 | - | let issueQuantity = match getInteger(this, "issueQuantity") { | |
21 | - | case a: Int => | |
22 | - | a | |
23 | - | case _ => | |
24 | - | 0 | |
25 | - | } | |
26 | - | let newQuantity = (issueQuantity + 1) | |
27 | - | let generationType = generation(newQuantity) | |
28 | - | if ((kittenAmount > 3)) | |
29 | - | then throw("Amount of Kitten tokens sent is 3 tokens.") | |
30 | - | else if ((3 > kittenAmount)) | |
31 | - | then throw("Amount of Kitten tokens sent is 3 tokens.") | |
32 | - | else { | |
33 | - | let kittenNft = Issue("Kitten(=^・^=)", ("generation:" + generationType), 1, 0, false) | |
34 | - | let kittenNftId = calculateAssetId(kittenNft) | |
20 | + | let pmtId = toBase58String(value(pmt.assetId)) | |
21 | + | if ((pmtId != kittenId)) | |
22 | + | then throw("Please send Kitten token.") | |
23 | + | else { | |
24 | + | let kittenAmount = pmt.amount | |
25 | + | let issueQuantity = match getInteger(this, "issueQuantity") { | |
26 | + | case a: Int => | |
27 | + | a | |
28 | + | case _ => | |
29 | + | 0 | |
30 | + | } | |
31 | + | let newQuantity = (issueQuantity + 1) | |
32 | + | let generationType = generation(newQuantity) | |
33 | + | if ((kittenAmount > 3)) | |
34 | + | then throw("Amount of Kitten tokens sent is 3 tokens.") | |
35 | + | else if ((3 > kittenAmount)) | |
36 | + | then throw("Amount of Kitten tokens sent is 3 tokens.") | |
37 | + | else { | |
38 | + | let kittenNft = Issue("Kitten(=^・^=)", ("generation:" + generationType), 1, 0, false) | |
39 | + | let kittenNftId = calculateAssetId(kittenNft) | |
35 | 40 | [kittenNft, ScriptTransfer(i.caller, 1, kittenNftId)] | |
36 | - | } | |
41 | + | } | |
42 | + | } | |
37 | 43 | } | |
38 | 44 | ||
39 | 45 |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 4 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | + | let kittenId = "8LLpj6yQLUu37KUt3rVo1S69j2gWMbgbM6qqgt2ac1Vb" | |
5 | + | ||
4 | 6 | func generation (num) = if (if ((num > 0)) | |
5 | 7 | then true | |
6 | 8 | else (100 >= num)) | |
7 | 9 | then "G1" | |
8 | 10 | else if (if ((num > 100)) | |
9 | 11 | then true | |
10 | 12 | else (900 >= num)) | |
11 | 13 | then "G2" | |
12 | 14 | else "G3" | |
13 | 15 | ||
14 | 16 | ||
15 | 17 | @Callable(i) | |
16 | 18 | func giveBirthKitten () = { | |
17 | 19 | let pmt = i.payments[0] | |
18 | - | let kittenAmount = pmt.amount | |
19 | - | let kittenId = toBase58String(value(pmt.assetId)) | |
20 | - | let issueQuantity = match getInteger(this, "issueQuantity") { | |
21 | - | case a: Int => | |
22 | - | a | |
23 | - | case _ => | |
24 | - | 0 | |
25 | - | } | |
26 | - | let newQuantity = (issueQuantity + 1) | |
27 | - | let generationType = generation(newQuantity) | |
28 | - | if ((kittenAmount > 3)) | |
29 | - | then throw("Amount of Kitten tokens sent is 3 tokens.") | |
30 | - | else if ((3 > kittenAmount)) | |
31 | - | then throw("Amount of Kitten tokens sent is 3 tokens.") | |
32 | - | else { | |
33 | - | let kittenNft = Issue("Kitten(=^・^=)", ("generation:" + generationType), 1, 0, false) | |
34 | - | let kittenNftId = calculateAssetId(kittenNft) | |
20 | + | let pmtId = toBase58String(value(pmt.assetId)) | |
21 | + | if ((pmtId != kittenId)) | |
22 | + | then throw("Please send Kitten token.") | |
23 | + | else { | |
24 | + | let kittenAmount = pmt.amount | |
25 | + | let issueQuantity = match getInteger(this, "issueQuantity") { | |
26 | + | case a: Int => | |
27 | + | a | |
28 | + | case _ => | |
29 | + | 0 | |
30 | + | } | |
31 | + | let newQuantity = (issueQuantity + 1) | |
32 | + | let generationType = generation(newQuantity) | |
33 | + | if ((kittenAmount > 3)) | |
34 | + | then throw("Amount of Kitten tokens sent is 3 tokens.") | |
35 | + | else if ((3 > kittenAmount)) | |
36 | + | then throw("Amount of Kitten tokens sent is 3 tokens.") | |
37 | + | else { | |
38 | + | let kittenNft = Issue("Kitten(=^・^=)", ("generation:" + generationType), 1, 0, false) | |
39 | + | let kittenNftId = calculateAssetId(kittenNft) | |
35 | 40 | [kittenNft, ScriptTransfer(i.caller, 1, kittenNftId)] | |
36 | - | } | |
41 | + | } | |
42 | + | } | |
37 | 43 | } | |
38 | 44 | ||
39 | 45 | ||
40 | 46 | @Verifier(tx) | |
41 | 47 | func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey) | |
42 | 48 |
github/deemru/w8io/026f985 27.33 ms ◑