tx · 2TCsh25Sochw5wUvwPmzDnBXCjgvmQ346U7n8XRTcMsW 3N5BTH4bjnXn7AAKoj4sswxytsPGmdXUuTx: -0.01000000 Waves 2023.03.23 09:19 [2502297] smart account 3N5BTH4bjnXn7AAKoj4sswxytsPGmdXUuTx > SELF 0.00000000 Waves
{ "type": 13, "id": "2TCsh25Sochw5wUvwPmzDnBXCjgvmQ346U7n8XRTcMsW", "fee": 1000000, "feeAssetId": null, "timestamp": 1679552512218, "version": 2, "chainId": 84, "sender": "3N5BTH4bjnXn7AAKoj4sswxytsPGmdXUuTx", "senderPublicKey": "DyeDJ3fgwVVux2WRkxpLU9BbVjTM96AyV58b7bRFzCBx", "proofs": [ "Jxv3cHYdRe3YwjjRgfMBbABQ9dodhRmFfxpJKmDVGztzmumaDcqjJEojTxrhEYaTLjxsdbVUUJWtff7kCBk7kSu" ], "script": "base64:BgIJCAISBQoDGBgRAAEBaQEGYnV5TmZ0AwZzZWxsZXIEbmZ0cwVwcmljZQQFYnV5ZXIIBQFpBmNhbGxlcgQMYnV5ZXJCYWxhbmNlCQDvBwEFBWJ1eWVyBAZhbW91bnQJAQV2YWx1ZQEICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50BAZsZW5ndGgJALECAQIFbmZ0SWQKAQNzdW0CBWFjY3VtBG5leHQJAGQCBQVhY2N1bQUEbmV4dAQDYXJyBQVwcmljZQQJdG90YWxDb3N0CgACJGwFA2FycgoAAiRzCQCQAwEFAiRsCgAFJGFjYzAAAAoBBSRmMF8xAgIkYQIkaQMJAGcCBQIkaQUCJHMFAiRhCQEDc3VtAgUCJGEJAJEDAgUCJGwFAiRpCgEFJGYwXzICAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAAIBAhNMaXN0IHNpemUgZXhjZWVkcyA1CQEFJGYwXzICCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECBQUkYWNjMAAAAAEAAgADAAQABQMDCQECIT0CCQCQAwEFBG5mdHMJAJADAQUGc2VsbGVyBgkBAiE9AgkAkAMBBQZzZWxsZXIJAJADAQUFcHJpY2UJAAIBAkxJbnZhbGlkIGlucHV0OiBOdW1iZXIgb2YgTkZUcywgc2VsbGVyIGFkZHJlc3NlcywgYW5kIGNvc3RzIG11c3QgYmUgdGhlIHNhbWUuCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFBWJ1eWVyBQl0b3RhbENvc3QFBHVuaXQFA25pbABuaYG/", "height": 2502297, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: AvYVGqnG2AWFyr5DWqVRZ5MUZnrUqiJWxrh4wc1tHqk5 Next: 6g8scirUzqk9BP6DEs3ejcJ3THCSd9wrZKQwi6WNNvg9 Diff:
Old | New | Differences | |
---|---|---|---|
4 | 4 | ||
5 | 5 | ||
6 | 6 | @Callable(i) | |
7 | - | func mintNft (ImageHash,name,discription) = { | |
8 | - | let recipient = i.caller | |
9 | - | let asset1 = Issue(name[0], discription[0], 1, 0, false) | |
10 | - | let assetId1 = calculateAssetId(asset1) | |
11 | - | let asset2 = Issue(name[1], discription[1], 1, 0, false) | |
12 | - | let assetId2 = calculateAssetId(asset2) | |
13 | - | [asset1, asset2, StringEntry((toBase58String(assetId1) + "_ipfs"), ImageHash[0]), StringEntry((toBase58String(assetId2) + "_ipfs"), ImageHash[1]), StringEntry((toBase58String(assetId1) + "_name"), name[0]), StringEntry((toBase58String(assetId2) + "_name"), name[1]), StringEntry((toBase58String(assetId1) + "_discription"), discription[0]), StringEntry((toBase58String(assetId2) + "discription"), discription[1]), ScriptTransfer(recipient, 1, assetId1), ScriptTransfer(recipient, 1, assetId2)] | |
7 | + | func buyNft (seller,nfts,price) = { | |
8 | + | let buyer = i.caller | |
9 | + | let buyerBalance = wavesBalance(buyer) | |
10 | + | let amount = value(i.payments[0].amount) | |
11 | + | let length = size("nftId") | |
12 | + | func sum (accum,next) = (accum + next) | |
13 | + | ||
14 | + | let arr = price | |
15 | + | let totalCost = { | |
16 | + | let $l = arr | |
17 | + | let $s = size($l) | |
18 | + | let $acc0 = 0 | |
19 | + | func $f0_1 ($a,$i) = if (($i >= $s)) | |
20 | + | then $a | |
21 | + | else sum($a, $l[$i]) | |
22 | + | ||
23 | + | func $f0_2 ($a,$i) = if (($i >= $s)) | |
24 | + | then $a | |
25 | + | else throw("List size exceeds 5") | |
26 | + | ||
27 | + | $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5) | |
28 | + | } | |
29 | + | if (if ((size(nfts) != size(seller))) | |
30 | + | then true | |
31 | + | else (size(seller) != size(price))) | |
32 | + | then throw("Invalid input: Number of NFTs, seller addresses, and costs must be the same.") | |
33 | + | else [ScriptTransfer(buyer, totalCost, unit)] | |
14 | 34 | } | |
15 | 35 | ||
16 | 36 |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 6 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | ||
5 | 5 | ||
6 | 6 | @Callable(i) | |
7 | - | func mintNft (ImageHash,name,discription) = { | |
8 | - | let recipient = i.caller | |
9 | - | let asset1 = Issue(name[0], discription[0], 1, 0, false) | |
10 | - | let assetId1 = calculateAssetId(asset1) | |
11 | - | let asset2 = Issue(name[1], discription[1], 1, 0, false) | |
12 | - | let assetId2 = calculateAssetId(asset2) | |
13 | - | [asset1, asset2, StringEntry((toBase58String(assetId1) + "_ipfs"), ImageHash[0]), StringEntry((toBase58String(assetId2) + "_ipfs"), ImageHash[1]), StringEntry((toBase58String(assetId1) + "_name"), name[0]), StringEntry((toBase58String(assetId2) + "_name"), name[1]), StringEntry((toBase58String(assetId1) + "_discription"), discription[0]), StringEntry((toBase58String(assetId2) + "discription"), discription[1]), ScriptTransfer(recipient, 1, assetId1), ScriptTransfer(recipient, 1, assetId2)] | |
7 | + | func buyNft (seller,nfts,price) = { | |
8 | + | let buyer = i.caller | |
9 | + | let buyerBalance = wavesBalance(buyer) | |
10 | + | let amount = value(i.payments[0].amount) | |
11 | + | let length = size("nftId") | |
12 | + | func sum (accum,next) = (accum + next) | |
13 | + | ||
14 | + | let arr = price | |
15 | + | let totalCost = { | |
16 | + | let $l = arr | |
17 | + | let $s = size($l) | |
18 | + | let $acc0 = 0 | |
19 | + | func $f0_1 ($a,$i) = if (($i >= $s)) | |
20 | + | then $a | |
21 | + | else sum($a, $l[$i]) | |
22 | + | ||
23 | + | func $f0_2 ($a,$i) = if (($i >= $s)) | |
24 | + | then $a | |
25 | + | else throw("List size exceeds 5") | |
26 | + | ||
27 | + | $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5) | |
28 | + | } | |
29 | + | if (if ((size(nfts) != size(seller))) | |
30 | + | then true | |
31 | + | else (size(seller) != size(price))) | |
32 | + | then throw("Invalid input: Number of NFTs, seller addresses, and costs must be the same.") | |
33 | + | else [ScriptTransfer(buyer, totalCost, unit)] | |
14 | 34 | } | |
15 | 35 | ||
16 | 36 |
github/deemru/w8io/169f3d6 35.02 ms ◑![]()