tx · 2NhTUvnShbYNEwiBVgKoXmUwSn7j8XUckLfayKdUgZty

3N7Gg64FJ3ESaqn41qu1ete7zmzbmoP1AAV:  -0.01000000 Waves

2021.12.08 18:09 [1825441] smart account 3N7Gg64FJ3ESaqn41qu1ete7zmzbmoP1AAV > SELF 0.00000000 Waves

{ "type": 13, "id": "2NhTUvnShbYNEwiBVgKoXmUwSn7j8XUckLfayKdUgZty", "fee": 1000000, "feeAssetId": null, "timestamp": 1638976235147, "version": 2, "chainId": 84, "sender": "3N7Gg64FJ3ESaqn41qu1ete7zmzbmoP1AAV", "senderPublicKey": "5amLtMwixiEesBDKPy9dkFWntG2fNxhTs5n69JbQE9F7", "proofs": [ "24Y3Fek68w7jgiG1YQUZHTzpWJYqYPFcPUeATAeXyaxoCcv2PcvwBG1cuNNyErMV4sUL3tqAYeA8vkhXMgLND281" ], "script": "base64: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", "height": 1825441, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: GADQ7j3qvGAxyzVnLkvy99DgkX6UrHwKGm3tutoprxTy Next: 97rfNZydsLbvHeat7BUXFAB6XyGvw5mXvWZy78mxr7uU Diff:
OldNewDifferences
3131 }
3232 else 1
3333 }
34- $Tuple2([StringEntry(("challenge-" + c), makeString(["awaiting", f[1], f[2], e], a))], [StringEntry(toString(i), makeString(["ongoing", h, g, f[2], "0", "white", "startblock", "laststepblock"], a))])
34+[StringEntry(("challenge-" + c), makeString(["answered", f[1], f[2], e], a)), StringEntry(toString(i), makeString(["ongoing", h, g, f[2], "0", "white", "startblock", "laststepblock"], a))]
3535 }
3636 else throw("no challenge awaiting")
3737 else throw("no challenge")
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "|"
55
66 @Callable(b)
77 func startgame (c) = {
88 let d = if ((size(b.payments) == 1))
99 then b.payments[0]
1010 else throw("must stake some waves")
1111 if (isDefined(d.assetId))
1212 then throw("works with waves only")
1313 else {
1414 let e = toBase58String(b.caller.bytes)
1515 let f = split(getStringValue(("challenge-" + c)), a)
1616 if ((size(f) > 0))
1717 then if ((f[0] == "awaiting"))
1818 then {
1919 let g = if ((f[1] == "black"))
2020 then c
2121 else e
2222 let h = if ((f[1] == "white"))
2323 then c
2424 else e
2525 let i = {
2626 let j = getInteger("lastgameid")
2727 if ($isInstanceOf(j, "Int"))
2828 then {
2929 let k = j
3030 getIntegerValue("lastgameid")
3131 }
3232 else 1
3333 }
34- $Tuple2([StringEntry(("challenge-" + c), makeString(["awaiting", f[1], f[2], e], a))], [StringEntry(toString(i), makeString(["ongoing", h, g, f[2], "0", "white", "startblock", "laststepblock"], a))])
34+[StringEntry(("challenge-" + c), makeString(["answered", f[1], f[2], e], a)), StringEntry(toString(i), makeString(["ongoing", h, g, f[2], "0", "white", "startblock", "laststepblock"], a))]
3535 }
3636 else throw("no challenge awaiting")
3737 else throw("no challenge")
3838 }
3939 }
4040
4141
4242
4343 @Callable(b)
4444 func setchallenge (l) = if (if ((l == "black"))
4545 then true
4646 else (l == "white"))
4747 then {
4848 let d = if ((size(b.payments) == 1))
4949 then b.payments[0]
5050 else throw("must stake some waves")
5151 if (isDefined(d.assetId))
5252 then throw("works with waves only")
5353 else {
5454 let e = toBase58String(b.caller.bytes)
5555 [StringEntry(("challenge-" + e), makeString(["awaiting", l, toString(d.amount)], a))]
5656 }
5757 }
5858 else throw("invalid side")
5959
6060
6161
6262 @Callable(b)
6363 func unsetchallenge () = {
6464 let e = toBase58String(b.caller.bytes)
6565 func m (n) = {
6666 let j = getString(("challenge-" + n))
6767 if ($isInstanceOf(j, "String"))
6868 then {
6969 let k = j
7070 getStringValue(("challenge-" + n))
7171 }
7272 else ""
7373 }
7474
7575 let o = split(m(e), a)
7676 if ((size(o) > 0))
7777 then if ((o[0] == "awaiting"))
7878 then [StringEntry(("challenge-" + e), makeString(["unset", o[1], o[2]], a))]
7979 else throw("challenge not exists")
8080 else throw("challenge not exists")
8181 }
8282
8383

github/deemru/w8io/169f3d6 
23.03 ms