tx · 6Ts1NGqJnzToAF6zLuV6Esmgo2mTvoGNdiSawgPQLwaS 3MvjAaDYHpS4A5K4CV3kZMMEH9m9JdBSvbq: -0.01000000 Waves 2022.11.14 19:53 [2317059] smart account 3MvjAaDYHpS4A5K4CV3kZMMEH9m9JdBSvbq > SELF 0.00000000 Waves
{ "type": 13, "id": "6Ts1NGqJnzToAF6zLuV6Esmgo2mTvoGNdiSawgPQLwaS", "fee": 1000000, "feeAssetId": null, "timestamp": 1668444841168, "version": 2, "chainId": 84, "sender": "3MvjAaDYHpS4A5K4CV3kZMMEH9m9JdBSvbq", "senderPublicKey": "H6UqxUDcJamDRg1uykVcWMn4zhAMTV7i1nfPq1moLWmJ", "proofs": [ "47RbS2xCSSGcP9CfsgZ8uSCChJW2eF5djW74pChpY8DjaiJPX84KJcUM93qNLGmGjrFDshi1SkpCFk2JfztoezfS" ], "script": "base64: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", "height": 2317059, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 6q7TRhkjBDAGcoLNjBBa6pAsq652fVLBei8Ex6YnKLb9 Next: 8UQikxBWKz8GC4DavBN49HvBQUsnEifdetfn3fdpY25J Diff:
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 5 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | + | let separator = "_" | |
5 | + | ||
6 | + | let kBuy = "buy" | |
7 | + | ||
8 | + | let kSell = "sell" | |
9 | + | ||
10 | + | let kPrice = "price" | |
11 | + | ||
12 | + | func isNft (assetId) = match assetInfo(assetId) { | |
13 | + | case token: Asset => | |
14 | + | if (if ((token.decimals == 0)) | |
15 | + | then (token.quantity == 1) | |
16 | + | else false) | |
17 | + | then (token.reissuable == false) | |
18 | + | else false | |
19 | + | case _ => | |
20 | + | false | |
21 | + | } | |
4 | 22 | ||
5 | 23 | ||
6 | 24 | @Callable(i) | |
26 | 44 | func createNFT (nft_name,nft_owner,nft_dAppAddress,nft_type,nft_tags,nft_selling_price,nft_description,nft_onSell,nft_data) = { | |
27 | 45 | let asset = Issue(nft_name, nft_description, 1, 0, false, unit, 0) | |
28 | 46 | let assetId = calculateAssetId(asset) | |
29 | - | [StringEntry("nft_name", nft_name), StringEntry("nft_owner", nft_owner), StringEntry("nft_dAppAddress", nft_dAppAddress), StringEntry("nft_type", nft_type), StringEntry("nft_tags", nft_tags), IntegerEntry("nft_selling_price", nft_selling_price), StringEntry("nft_description", nft_description), StringEntry("nft_onSell", nft_onSell), StringEntry("nft_data", nft_data), asset, ScriptTransfer(i.caller, 1, assetId)] | |
47 | + | let caller = toString(i.caller) | |
48 | + | [StringEntry(("nftName_" + caller), nft_name), StringEntry(("nftOwner_" + caller), nft_owner), StringEntry(("nftDappAddress_" + caller), nft_dAppAddress), StringEntry(("nftType_" + caller), nft_type), StringEntry(("nftTags_" + caller), nft_tags), IntegerEntry(("nftSellingPrice_" + caller), nft_selling_price), StringEntry(("nftDescription_" + caller), nft_description), StringEntry(("nftOnSell_" + caller), "false"), StringEntry(("nftImageData_" + caller), nft_data), asset, ScriptTransfer(i.caller, 1, assetId)] | |
30 | 49 | } | |
31 | 50 | ||
32 | 51 |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 5 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | + | let separator = "_" | |
5 | + | ||
6 | + | let kBuy = "buy" | |
7 | + | ||
8 | + | let kSell = "sell" | |
9 | + | ||
10 | + | let kPrice = "price" | |
11 | + | ||
12 | + | func isNft (assetId) = match assetInfo(assetId) { | |
13 | + | case token: Asset => | |
14 | + | if (if ((token.decimals == 0)) | |
15 | + | then (token.quantity == 1) | |
16 | + | else false) | |
17 | + | then (token.reissuable == false) | |
18 | + | else false | |
19 | + | case _ => | |
20 | + | false | |
21 | + | } | |
4 | 22 | ||
5 | 23 | ||
6 | 24 | @Callable(i) | |
7 | 25 | func call () = { | |
8 | 26 | let asset = Issue("Asset", "", 1, 0, true, unit, 0) | |
9 | 27 | let assetId = calculateAssetId(asset) | |
10 | 28 | [BinaryEntry("bin", base58''), BooleanEntry("bool", true), IntegerEntry("int", 1), StringEntry("str", ""), DeleteEntry("str"), asset, Reissue(assetId, 1, false), Burn(assetId, 1), ScriptTransfer(i.caller, 1, assetId)] | |
11 | 29 | } | |
12 | 30 | ||
13 | 31 | ||
14 | 32 | ||
15 | 33 | @Callable(i) | |
16 | 34 | func transferAmount (recipient) = { | |
17 | 35 | let recipientAddr = addressFromStringValue(recipient) | |
18 | 36 | let amountTransfer = i.payments[0].amount | |
19 | 37 | let assettype = i.payments[0].assetId | |
20 | 38 | [ScriptTransfer(recipientAddr, amountTransfer, assettype)] | |
21 | 39 | } | |
22 | 40 | ||
23 | 41 | ||
24 | 42 | ||
25 | 43 | @Callable(i) | |
26 | 44 | func createNFT (nft_name,nft_owner,nft_dAppAddress,nft_type,nft_tags,nft_selling_price,nft_description,nft_onSell,nft_data) = { | |
27 | 45 | let asset = Issue(nft_name, nft_description, 1, 0, false, unit, 0) | |
28 | 46 | let assetId = calculateAssetId(asset) | |
29 | - | [StringEntry("nft_name", nft_name), StringEntry("nft_owner", nft_owner), StringEntry("nft_dAppAddress", nft_dAppAddress), StringEntry("nft_type", nft_type), StringEntry("nft_tags", nft_tags), IntegerEntry("nft_selling_price", nft_selling_price), StringEntry("nft_description", nft_description), StringEntry("nft_onSell", nft_onSell), StringEntry("nft_data", nft_data), asset, ScriptTransfer(i.caller, 1, assetId)] | |
47 | + | let caller = toString(i.caller) | |
48 | + | [StringEntry(("nftName_" + caller), nft_name), StringEntry(("nftOwner_" + caller), nft_owner), StringEntry(("nftDappAddress_" + caller), nft_dAppAddress), StringEntry(("nftType_" + caller), nft_type), StringEntry(("nftTags_" + caller), nft_tags), IntegerEntry(("nftSellingPrice_" + caller), nft_selling_price), StringEntry(("nftDescription_" + caller), nft_description), StringEntry(("nftOnSell_" + caller), "false"), StringEntry(("nftImageData_" + caller), nft_data), asset, ScriptTransfer(i.caller, 1, assetId)] | |
30 | 49 | } | |
31 | 50 | ||
32 | 51 | ||
33 | 52 | @Verifier(tx) | |
34 | 53 | func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey) | |
35 | 54 |
github/deemru/w8io/169f3d6 27.02 ms ◑![]()