tx · DNUpuYH3XLS7VppsBSopAiGHodbbzbofzuC5BgzXzzkZ
3N7Gg64FJ3ESaqn41qu1ete7zmzbmoP1AAV: -0.01000000 Waves
2021.12.08 16:36 [1825344] smart account 3N7Gg64FJ3ESaqn41qu1ete7zmzbmoP1AAV > SELF 0.00000000 Waves
{
"type": 13,
"id": "DNUpuYH3XLS7VppsBSopAiGHodbbzbofzuC5BgzXzzkZ",
"fee": 1000000,
"feeAssetId": null,
"timestamp": 1638970559849,
"version": 2,
"chainId": 84,
"sender": "3N7Gg64FJ3ESaqn41qu1ete7zmzbmoP1AAV",
"senderPublicKey": "5amLtMwixiEesBDKPy9dkFWntG2fNxhTs5n69JbQE9F7",
"proofs": [
"2Bh1r1SocbgU8Z76EAGecBmYedibiG2JML9A3gvCo6B8pxudmqYWAjPR7rkYwHYGsT8xywHwTZaVc8WUmLckJunK"
],
"script": "base64:AAIFAAAAAAAAAA0IAhIECgIIARIDCgEIAAAAAQAAAAAFc2VwYXICAAAAAXwAAAACAAAAAWkBAAAADHNldGNoYWxsZW5nZQAAAAIAAAAEc2lkZQAAAAVzdGFrZQMDCQAAAAAAAAIFAAAABHNpZGUCAAAABWJsYWNrBgkAAAAAAAACBQAAAARzaWRlAgAAAAV3aGl0ZQQAAAADcG10AwkAAAAAAAACCQABkAAAAAEIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAABCQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAACQAAAgAAAAECAAAAFW11c3Qgc3Rha2Ugc29tZSB3YXZlcwMJAQAAAAlpc0RlZmluZWQAAAABCAUAAAADcG10AAAAB2Fzc2V0SWQJAAACAAAAAQIAAAAVd29ya3Mgd2l0aCB3YXZlcyBvbmx5BAAAAAxjYWxsZXJBZHJlc3MJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQABLAAAAAICAAAACmNoYWxsZW5nZS0FAAAADGNhbGxlckFkcmVzcwkABLkAAAACCQAETAAAAAICAAAACGF3YWl0aW5nCQAETAAAAAIFAAAABHNpZGUJAARMAAAAAgkAAaQAAAABCAUAAAADcG10AAAABmFtb3VudAUAAAADbmlsBQAAAAVzZXBhcgUAAAADbmlsCQAAAgAAAAECAAAADGludmFsaWQgc2lkZQAAAAFpAQAAAA51bnNldGNoYWxsZW5nZQAAAAEAAAALY2hhbGxlbmRnZXIEAAAADGNhbGxlckFkcmVzcwkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzCgEAAAAMZ2V0Y2hhbGxlbmdlAAAAAQAAAAtjaGFsbGVuZGdlcgQAAAAHJG1hdGNoMAkABCIAAAABBQAAAAtjaGFsbGVuZGdlcgMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAGU3RyaW5nBAAAAAFhBQAAAAckbWF0Y2gwCQEAAAARQGV4dHJOYXRpdmUoMTA1OCkAAAABBQAAAAtjaGFsbGVuZGdlcgIAAAAABAAAAAljaGFsbGVuZ2UJAAS1AAAAAgkBAAAADGdldGNoYWxsZW5nZQAAAAEFAAAADGNhbGxlckFkcmVzcwUAAAAFc2VwYXIDCQAAAAAAAAIJAAGQAAAAAQUAAAAJY2hhbGxlbmdlAAAAAAAAAAABAwkAAAAAAAACCQABkQAAAAIFAAAACWNoYWxsZW5nZQAAAAAAAAAAAAIAAAAIYXdhaXRpbmcJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkAASwAAAACAgAAAApjaGFsbGVuZ2UtBQAAAAxjYWxsZXJBZHJlc3MJAAS5AAAAAgkABEwAAAACAgAAAAV1bnNldAkABEwAAAACCQABkQAAAAIFAAAACWNoYWxsZW5nZQAAAAAAAAAAAQkABEwAAAACCQABkQAAAAIFAAAACWNoYWxsZW5nZQAAAAAAAAAAAgUAAAADbmlsBQAAAAVzZXBhcgUAAAADbmlsCQAAAgAAAAECAAAAFGNoYWxsZW5nZSBub3QgZXhpc3RzCQAAAgAAAAECAAAAFGNoYWxsZW5nZSBub3QgZXhpc3RzAAAAAGTEkP8=",
"height": 1825344,
"applicationStatus": "succeeded",
"spentComplexity": 0
}
View: original | compacted
Prev: 9mmVcWFQCAvvrCFxdxHMaBhap8EcyRWPM7ev5s6C9msd
Next: 43QB5RjGWZtfzu51SMmd3Xi2A8iRfob7tj3vEaZBfRA5
Diff:
Old | New | | Differences |
---|
15 | 15 | | then throw("works with waves only") |
---|
16 | 16 | | else { |
---|
17 | 17 | | let callerAdress = toBase58String(i.caller.bytes) |
---|
18 | | - | [StringEntry(callerAdress, makeString([side, toString(pmt.amount)], separ))] |
---|
| 18 | + | [StringEntry(("challenge-" + callerAdress), makeString(["awaiting", side, toString(pmt.amount)], separ))] |
---|
19 | 19 | | } |
---|
20 | 20 | | } |
---|
21 | 21 | | else throw("invalid side") |
---|
| 22 | + | |
---|
| 23 | + | |
---|
| 24 | + | |
---|
| 25 | + | @Callable(i) |
---|
| 26 | + | func unsetchallenge (challendger) = { |
---|
| 27 | + | let callerAdress = toBase58String(i.caller.bytes) |
---|
| 28 | + | func getchallenge (challendger) = match getString(challendger) { |
---|
| 29 | + | case a: String => |
---|
| 30 | + | getStringValue(challendger) |
---|
| 31 | + | case _ => |
---|
| 32 | + | "" |
---|
| 33 | + | } |
---|
| 34 | + | |
---|
| 35 | + | let challenge = split(getchallenge(callerAdress), separ) |
---|
| 36 | + | if ((size(challenge) == 1)) |
---|
| 37 | + | then if ((challenge[0] == "awaiting")) |
---|
| 38 | + | then [StringEntry(("challenge-" + callerAdress), makeString(["unset", challenge[1], challenge[2]], separ))] |
---|
| 39 | + | else throw("challenge not exists") |
---|
| 40 | + | else throw("challenge not exists") |
---|
| 41 | + | } |
---|
22 | 42 | | |
---|
23 | 43 | | |
---|
Full:
Old | New | | Differences |
---|
1 | 1 | | {-# STDLIB_VERSION 5 #-} |
---|
2 | 2 | | {-# SCRIPT_TYPE ACCOUNT #-} |
---|
3 | 3 | | {-# CONTENT_TYPE DAPP #-} |
---|
4 | 4 | | let separ = "|" |
---|
5 | 5 | | |
---|
6 | 6 | | @Callable(i) |
---|
7 | 7 | | func setchallenge (side,stake) = if (if ((side == "black")) |
---|
8 | 8 | | then true |
---|
9 | 9 | | else (side == "white")) |
---|
10 | 10 | | then { |
---|
11 | 11 | | let pmt = if ((size(i.payments) == 1)) |
---|
12 | 12 | | then i.payments[0] |
---|
13 | 13 | | else throw("must stake some waves") |
---|
14 | 14 | | if (isDefined(pmt.assetId)) |
---|
15 | 15 | | then throw("works with waves only") |
---|
16 | 16 | | else { |
---|
17 | 17 | | let callerAdress = toBase58String(i.caller.bytes) |
---|
18 | | - | [StringEntry(callerAdress, makeString([side, toString(pmt.amount)], separ))] |
---|
| 18 | + | [StringEntry(("challenge-" + callerAdress), makeString(["awaiting", side, toString(pmt.amount)], separ))] |
---|
19 | 19 | | } |
---|
20 | 20 | | } |
---|
21 | 21 | | else throw("invalid side") |
---|
| 22 | + | |
---|
| 23 | + | |
---|
| 24 | + | |
---|
| 25 | + | @Callable(i) |
---|
| 26 | + | func unsetchallenge (challendger) = { |
---|
| 27 | + | let callerAdress = toBase58String(i.caller.bytes) |
---|
| 28 | + | func getchallenge (challendger) = match getString(challendger) { |
---|
| 29 | + | case a: String => |
---|
| 30 | + | getStringValue(challendger) |
---|
| 31 | + | case _ => |
---|
| 32 | + | "" |
---|
| 33 | + | } |
---|
| 34 | + | |
---|
| 35 | + | let challenge = split(getchallenge(callerAdress), separ) |
---|
| 36 | + | if ((size(challenge) == 1)) |
---|
| 37 | + | then if ((challenge[0] == "awaiting")) |
---|
| 38 | + | then [StringEntry(("challenge-" + callerAdress), makeString(["unset", challenge[1], challenge[2]], separ))] |
---|
| 39 | + | else throw("challenge not exists") |
---|
| 40 | + | else throw("challenge not exists") |
---|
| 41 | + | } |
---|
22 | 42 | | |
---|
23 | 43 | | |
---|