tx · 43Dd97N6KbfN7PzKzcxvAKGhDL9iYjLGbyyvwUdKYe2U 3Mra7mjPipcQd5sJaRmXK8xgS4scb8gPF4A: -0.01000000 Waves 2022.05.12 12:01 [2048255] smart account 3Mra7mjPipcQd5sJaRmXK8xgS4scb8gPF4A > SELF 0.00000000 Waves
{ "type": 13, "id": "43Dd97N6KbfN7PzKzcxvAKGhDL9iYjLGbyyvwUdKYe2U", "fee": 1000000, "feeAssetId": null, "timestamp": 1652346107689, "version": 2, "chainId": 84, "sender": "3Mra7mjPipcQd5sJaRmXK8xgS4scb8gPF4A", "senderPublicKey": "HTEmPgvFxYj3ixqqyCZYUX15Z31rMbac2vWaQw8vrPRj", "proofs": [ "j4AGXRrR93x8jvBcA1d8TBpcLSD18HS3Rc84c3EFq25sF79RdB9xqTZ3D7KYwAt3kfFArsFzHzxWbnvg31xxLDM" ], "script": "base64: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", "height": 2048255, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: H972JVnSr1wqKgGResq7VNiXKvV1xMjVzAWKUCkZut4M Full:
Old | New | Differences | |
---|---|---|---|
1 | - | # no script | |
1 | + | {-# STDLIB_VERSION 5 #-} | |
2 | + | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | + | {-# CONTENT_TYPE DAPP #-} | |
4 | + | let a = base58'AFQS5E4ELtxex3iANtWtUU2V2oWJZSo8VVnK8z3VFmqf' | |
5 | + | ||
6 | + | let b = base58'3MyDGEoKp1gF4LSRknk9vSuDEyrwuYXcQEQ' | |
7 | + | ||
8 | + | let c = base58'3N8WDKbqGox5Eky326PHHT7rUyrby5MXdmb' | |
9 | + | ||
10 | + | let d = base58'3MvyzDtzWWV5MZ1GP8JfQhhQqiGU4Nbifdy' | |
11 | + | ||
12 | + | let e = addressFromStringValue("3MpNtiPSRSq6NnaQYk38BfWSzZcgAYTyrQ9") | |
13 | + | ||
14 | + | func f (g) = { | |
15 | + | let h = getString(this, g) | |
16 | + | if ($isInstanceOf(h, "String")) | |
17 | + | then { | |
18 | + | let i = h | |
19 | + | i | |
20 | + | } | |
21 | + | else "" | |
22 | + | } | |
23 | + | ||
24 | + | ||
25 | + | func j (g) = { | |
26 | + | let h = getInteger(this, g) | |
27 | + | if ($isInstanceOf(h, "Int")) | |
28 | + | then { | |
29 | + | let i = h | |
30 | + | i | |
31 | + | } | |
32 | + | else 0 | |
33 | + | } | |
34 | + | ||
35 | + | ||
36 | + | func k (l) = (l + "_Owner") | |
37 | + | ||
38 | + | ||
39 | + | func m (l) = (l + "_Price") | |
40 | + | ||
41 | + | ||
42 | + | @Callable(n) | |
43 | + | func putOnSale (l,o,p) = { | |
44 | + | let q = toString(n.originCaller) | |
45 | + | $Tuple2([StringEntry(k(l), q), IntegerEntry(m(l), p), IntegerEntry(l, o)], p) | |
46 | + | } | |
47 | + | ||
48 | + | ||
49 | + | ||
50 | + | @Callable(n) | |
51 | + | func buyItem (l) = { | |
52 | + | let r = f(k(l)) | |
53 | + | let s = j(m(l)) | |
54 | + | let t = value(n.payments[0].amount) | |
55 | + | if ((s > t)) | |
56 | + | then throw("You provided less $heg than the needed cost for buying this Item") | |
57 | + | else if ((n.payments[0].assetId != a)) | |
58 | + | then throw("Only $HEG payments allowed") | |
59 | + | else { | |
60 | + | let u = j(l) | |
61 | + | let v = invoke(Address(c), "AddAssetFromMarkeplace", [l, r, u], nil) | |
62 | + | if ((v == r)) | |
63 | + | then { | |
64 | + | let w = invoke(Address(c), "transferOwnership", [l, toString(n.caller)], nil) | |
65 | + | if ((w == toString(n.caller))) | |
66 | + | then [ScriptTransfer(addressFromStringValue(r), t, a), DeleteEntry(k(l)), DeleteEntry(m(l)), DeleteEntry(l)] | |
67 | + | else throw("Error transferring the ownership of the item") | |
68 | + | } | |
69 | + | else throw("Error removing the item from the marketplace") | |
70 | + | } | |
71 | + | } | |
72 | + | ||
73 | + | ||
74 | + | ||
75 | + | @Callable(n) | |
76 | + | func removeFromSale (l) = { | |
77 | + | let r = f(k(l)) | |
78 | + | if ((toString(n.caller) != r)) | |
79 | + | then throw("Only the owner of the Item can remove it from the marketplace") | |
80 | + | else { | |
81 | + | let u = j(l) | |
82 | + | let v = invoke(Address(c), "AddAssetFromMarkeplace", [l, r, u], nil) | |
83 | + | if ((v == r)) | |
84 | + | then [DeleteEntry(k(l)), DeleteEntry(m(l)), DeleteEntry(l)] | |
85 | + | else throw("Error removing the item from the marketplace") | |
86 | + | } | |
87 | + | } | |
88 | + | ||
89 | + |
github/deemru/w8io/873ac7e 34.75 ms ◑