tx · 98MFMy9g77h9tEmA6gGuG9P4tSPkVaibrLe3VCBPZvDR 3MshECSyzvqxEmRbzCGfL36NeZmJKLdo3nN: -0.01400000 Waves 2022.01.30 03:11 [1900933] smart account 3MshECSyzvqxEmRbzCGfL36NeZmJKLdo3nN > SELF 0.00000000 Waves
{ "type": 13, "id": "98MFMy9g77h9tEmA6gGuG9P4tSPkVaibrLe3VCBPZvDR", "fee": 1400000, "feeAssetId": null, "timestamp": 1643501476840, "version": 2, "chainId": 84, "sender": "3MshECSyzvqxEmRbzCGfL36NeZmJKLdo3nN", "senderPublicKey": "7VZDUsa6QgaFEedQ8z2o1pa7LT7hqMPf9ZaqKt4KzeC6", "proofs": [ "5zrv54B5fkj2uVpKJGQsVjC9HJ8xqATpYgwecCwCXbYCX5aRcUQ6SBoCXzkikaUJpPLxuqJNYTNAPn1cy8D7Ljv4" ], "script": "base64:AAIFAAAAAAAAAAgIAhIAEgASAAAAAAIAAAAAC2Jkc21Bc3NldElkAQAAACBV7sO+qgvwUOhxyBuqbnCepLHI/kouucHxzMVrD3iXSwAAAAAGYmRtc1NDAQAAABoBV5q1nbiLPkFqa+QYnS47CnavBiLQNYp1EAAAAAMAAAABaQEAAAAEYmRzbQAAAAAEAAAAC3dhdmVzQW1vdW50CAkAA+8AAAABBQAAAAR0aGlzAAAACWF2YWlsYWJsZQQAAAAKYmRzbUFtb3VudAkAA/AAAAACBQAAAAR0aGlzBQAAAAtiZHNtQXNzZXRJZAQAAAABcgkAA/wAAAAECQEAAAAHQWRkcmVzcwAAAAEFAAAABmJkbXNTQwIAAAAHYnV5TnNidAUAAAADbmlsCQAETAAAAAIJAQAAAA9BdHRhY2hlZFBheW1lbnQAAAACBQAAAAR1bml0AAAAAAA7msoABQAAAANuaWwDCQAAAAAAAAIFAAAAAXIFAAAAAXIEAAAADm5ld1dhdmVzQW1vdW50CAkAA+8AAAABBQAAAAR0aGlzAAAACWF2YWlsYWJsZQQAAAANbmV3QmRzbUFtb3VudAkAA/AAAAACBQAAAAR0aGlzBQAAAAtiZHNtQXNzZXRJZAMJAABmAAAAAgkAAGUAAAACBQAAAA1uZXdCZHNtQW1vdW50BQAAAApiZHNtQW1vdW50AAAAAAAAmJaABQAAAANuaWwJAAACAAAAAQkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAN3OiAJAAGkAAAAAQUAAAALd2F2ZXNBbW91bnQCAAAABSwgYjogCQABpAAAAAEFAAAACmJkc21BbW91bnQCAAAAB3cgbmV3OiAJAAGkAAAAAQUAAAAObmV3V2F2ZXNBbW91bnQCAAAACSwgYiBuZXc6IAkAAaQAAAABBQAAAA1uZXdCZHNtQW1vdW50CQAAAgAAAAECAAAAB2JhZCByZXEAAAABaQEAAAAFY2FsbDEAAAAABAAAAAFyCQAD/AAAAAQFAAAABHRoaXMCAAAABWNhbGwyBQAAAANuaWwFAAAAA25pbAMJAAAAAAAAAgUAAAABcgUAAAABcgUAAAADbmlsCQAAAgAAAAECAAAAB2JhZCByZXEAAAABaQEAAAAFY2FsbDIAAAAABAAAAAFyCQAD/AAAAAQFAAAABHRoaXMCAAAABWNhbGwxBQAAAANuaWwFAAAAA25pbAMJAAAAAAAAAgUAAAABcgUAAAABcgUAAAADbmlsCQAAAgAAAAECAAAAB2JhZCByZXEAAAAAeRe1Tg==", "height": 1900933, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: UKh9zuvWrsRuAMRBdyzffzsVUd2UxXxhz5cgs4g5zJJ Next: Cgs4kgSLhfrChh5WH96ugTMHy59aV293bcPdp3S2A4Wu Full:
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 5 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | + | let bdsmAssetId = base58'6nSpVyNH7yM69eg446wrQR94ipbbcmZMU1ENPwanC97g' | |
5 | + | ||
6 | + | let bdmsSC = base58'3PG2vMhK5CPqsCDodvLGzQ84QkoHXCJ3oNP' | |
7 | + | ||
8 | + | @Callable(i) | |
9 | + | func bdsm () = { | |
10 | + | let wavesAmount = wavesBalance(this).available | |
11 | + | let bdsmAmount = assetBalance(this, bdsmAssetId) | |
12 | + | let r = invoke(Address(bdmsSC), "buyNsbt", nil, [AttachedPayment(unit, 1000000000)]) | |
13 | + | if ((r == r)) | |
14 | + | then { | |
15 | + | let newWavesAmount = wavesBalance(this).available | |
16 | + | let newBdsmAmount = assetBalance(this, bdsmAssetId) | |
17 | + | if (((newBdsmAmount - bdsmAmount) > 10000000)) | |
18 | + | then nil | |
19 | + | else throw(((((((("w: " + toString(wavesAmount)) + ", b: ") + toString(bdsmAmount)) + "w new: ") + toString(newWavesAmount)) + ", b new: ") + toString(newBdsmAmount))) | |
20 | + | } | |
21 | + | else throw("bad req") | |
22 | + | } | |
23 | + | ||
4 | 24 | ||
5 | 25 | ||
6 | 26 | @Callable(i) | |
7 | - | func call () = { | |
8 | - | let asset = Issue("Asset", "", 1, 0, true, unit, 0) | |
9 | - | let assetId = calculateAssetId(asset) | |
10 | - | [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)] | |
27 | + | func call1 () = { | |
28 | + | let r = invoke(this, "call2", nil, nil) | |
29 | + | if ((r == r)) | |
30 | + | then nil | |
31 | + | else throw("bad req") | |
11 | 32 | } | |
12 | 33 | ||
13 | 34 | ||
14 | - | @Verifier(tx) | |
15 | - | func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey) | |
35 | + | ||
36 | + | @Callable(i) | |
37 | + | func call2 () = { | |
38 | + | let r = invoke(this, "call1", nil, nil) | |
39 | + | if ((r == r)) | |
40 | + | then nil | |
41 | + | else throw("bad req") | |
42 | + | } | |
43 | + | ||
16 | 44 |
github/deemru/w8io/169f3d6 32.19 ms ◑![]()