tx · HGZFn7rV6tHwSaiDZumdBS9ewMxCTaQjkXWtC658STP3
3MpdJJV3WyZufiGHRtb7xbY2Vsc2pBFcJYZ: -0.01400000 Waves
2021.05.12 16:19 [1522508] smart account 3MpdJJV3WyZufiGHRtb7xbY2Vsc2pBFcJYZ > SELF 0.00000000 Waves
{
"type": 13,
"id": "HGZFn7rV6tHwSaiDZumdBS9ewMxCTaQjkXWtC658STP3",
"fee": 1400000,
"feeAssetId": null,
"timestamp": 1620825561870,
"version": 1,
"sender": "3MpdJJV3WyZufiGHRtb7xbY2Vsc2pBFcJYZ",
"senderPublicKey": "ALG9JVGNn9aCL68dbg1AmW6yDQv1b8EDLq99pQS8L1k6",
"proofs": [
"5Z9BctCeMmwRM41SqgZnnogMM4PAGy6SzpzxkxX5gQfjubmdyKdQYRZPqQo2ra9c1f5oNhM6ewuMvP7fg7znm5WR"
],
"script": "base64:AAIEAAAAAAAAAAkIAhIAEgMKAQgAAAATAAAAABNnYW1lTWFzdGVyUHVibGljS2V5AQAAACCKqFcQ1VSNQa7ZONz4ZD59H7wLfuowVwcQ1qI/fK6ACwAAAAAKZGljZU51bWJlcgkABEwAAAACAAAAAAAAAAABCQAETAAAAAIAAAAAAAAAAAIJAARMAAAAAgAAAAAAAAAAAwkABEwAAAACAAAAAAAAAAAECQAETAAAAAIAAAAAAAAAAAUJAARMAAAAAgAAAAAAAAAABgkABEwAAAACAAAAAAAAAAAHCQAETAAAAAIAAAAAAAAAAAgFAAAAA25pbAAAAAAJZ2FtZVRva2VuAQAAACCvQNOoGbkt3wVk9kpr+yD9dOUY7LBdGNCbLK5MVkSodQAAAAAJR0FNRVNUQVJUAAAAAAAAAAAAAAAAAA5HQU1FSU5QUk9HUkVTUwAAAAAAAAAAAQAAAAAMR0FNRUZJTklTSEVEAAAAAAAAAAACAAAAABBnYW1lQ291bnRlckxhYmVsAgAAAA1HX0dBTUVDT1VOVEVSAAAAABBnYW1lUGFzc0JldExhYmVsAgAAAAtCX1BBU1NCRVRTXwAAAAAVZ2FtZUN1cnJlbnRQb2ludExhYmFsAgAAAA9HX0N1cnJlbnRQb2ludF8AAAAAEGxhc3RSb2xsZWROdW1iZXIAAAAAAAAAAAABAAAAE2F1dGhvcml6ZVBlcm1pc3Npb24AAAABAAAAD2NhbGxlclB1YmxpY0tleQkBAAAAAiE9AAAAAgUAAAAPY2FsbGVyUHVibGljS2V5BQAAABNnYW1lTWFzdGVyUHVibGljS2V5AQAAAA5nYW1lU3RhdGVMYWJlbAAAAAEAAAALZ2FtZUNvdW50ZXIJAAEsAAAAAgkAASwAAAACAgAAAAJHXwkAAaQAAAABBQAAAAtnYW1lQ291bnRlcgIAAAAGX1NUQVRFAQAAAA9nYW1lU3VtU2hhTGFiZWwAAAABAAAAC2dhbWVDb3VudGVyCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAJHXwkAAaQAAAABBQAAAAtnYW1lQ291bnRlcgIAAAABXwIAAAAHX1NVTVNIQQEAAAAUZ2FtZVN0YXJ0SGVpZ2h0TGFiZWwAAAABAAAAC2dhbWVDb3VudGVyCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAJHXwkAAaQAAAABBQAAAAtnYW1lQ291bnRlcgIAAAABXwIAAAAMX1NUQVJUSEVJR0hUAQAAAAxnZXRHYW1lU3RhdGUAAAABAAAAC2dhbWVDb3VudGVyCQAEGgAAAAIFAAAABHRoaXMJAQAAAA5nYW1lU3RhdGVMYWJlbAAAAAEFAAAAC2dhbWVDb3VudGVyAQAAAA1nZXRHYW1lU3VtU2hhAAAAAQAAAAtnYW1lQ291bnRlcgkABB0AAAACBQAAAAR0aGlzCQEAAAAPZ2FtZVN1bVNoYUxhYmVsAAAAAQUAAAALZ2FtZUNvdW50ZXIBAAAADmdldFN0YXJ0SGVpZ2h0AAAAAQAAAAtnYW1lQ291bnRlcgkABBoAAAACBQAAAAR0aGlzCQEAAAAUZ2FtZVN0YXJ0SGVpZ2h0TGFiZWwAAAABBQAAAAtnYW1lQ291bnRlcgEAAAASZ2V0Q3JhcEdhbWVDb3VudGVyAAAAAAkABBoAAAACBQAAAAR0aGlzBQAAABBnYW1lQ291bnRlckxhYmVsAQAAABVnZXRSYW5kb21JbmRleEZvckRpY2UAAAABAAAACnJhbmRvbUhhc2gJAAGRAAAAAgUAAAAKZGljZU51bWJlcgkAAGoAAAACCQAEsQAAAAEFAAAACnJhbmRvbUhhc2gAAAAAAAAAAAgAAAACAAAAAWkBAAAACGluaXRHYW1lAAAAAAMJAQAAABNhdXRob3JpemVQZXJtaXNzaW9uAAAAAQgFAAAAAWkAAAAPY2FsbGVyUHVibGljS2V5CQAAAgAAAAECAAAAEmluaXRHYW1lX0ZPUkJJRERFTgQAAAAHJG1hdGNoMAkBAAAAEmdldENyYXBHYW1lQ291bnRlcgAAAAADCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAAHY291bnRlcgUAAAAHJG1hdGNoMAkAAAIAAAABAgAAABFJTklUX0FMUkVBRFlfRE9ORQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAAQZ2FtZUNvdW50ZXJMYWJlbAAAAAAAAAAAAAUAAAADbmlsAAAAAWkBAAAACXN0YXJ0R2FtZQAAAAEAAAAKcmFuZG9tSGFzaAMJAQAAABNhdXRob3JpemVQZXJtaXNzaW9uAAAAAQgFAAAAAWkAAAAPY2FsbGVyUHVibGljS2V5CQAAAgAAAAECAAAAE3N0YXJ0R2FtZV9GT1JCSURERU4EAAAAByRtYXRjaDAJAQAAABJnZXRDcmFwR2FtZUNvdW50ZXIAAAAAAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAABm51bWJlcgUAAAAHJG1hdGNoMAQAAAAJbmV3TnVtYmVyCQAAZAAAAAIFAAAABm51bWJlcgAAAAAAAAAAAQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgUAAAAQZ2FtZUNvdW50ZXJMYWJlbAUAAAAJbmV3TnVtYmVyCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAOZ2FtZVN0YXRlTGFiZWwAAAABBQAAAAluZXdOdW1iZXIAAAAAAAAAAAAJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAABRnYW1lU3RhcnRIZWlnaHRMYWJlbAAAAAEFAAAACW5ld051bWJlcggFAAAACWxhc3RCbG9jawAAAAZoZWlnaHQJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkBAAAAD2dhbWVTdW1TaGFMYWJlbAAAAAEFAAAABm51bWJlcgkAAlgAAAABCQAB9wAAAAEJAAJbAAAAAQUAAAAKcmFuZG9tSGFzaAUAAAADbmlsCQAAAgAAAAECAAAACUlOSVRfTkVFRAAAAAEAAAACdHgBAAAABnZlcmlmeQAAAAAEAAAAByRtYXRjaDAFAAAAAnR4CQAB9AAAAAMIBQAAAAJ0eAAAAAlib2R5Qnl0ZXMJAAGRAAAAAggFAAAAAnR4AAAABnByb29mcwAAAAAAAAAAAAgFAAAAAnR4AAAAD3NlbmRlclB1YmxpY0tleUbBY7I=",
"chainId": 84,
"height": 1522508,
"applicationStatus": "succeeded",
"spentComplexity": 0
}
View: original | compacted
Prev: 6gK36wAP54nFVrp1p3ANaoAdXUMhkRrPyFHhwdNdvsiC
Next: 7z78JiN3D8bQ7oJ4SqWSE6nnG8ZBHYQPKT9fyhbLtnyM
Full:
Old | New | | Differences |
---|
1 | 1 | | {-# STDLIB_VERSION 4 #-} |
---|
2 | 2 | | {-# SCRIPT_TYPE ACCOUNT #-} |
---|
3 | 3 | | {-# CONTENT_TYPE DAPP #-} |
---|
4 | | - | let a = base58'ALG9JSGNn9aCL68dbg1AmW6yDQv1b8EDLq99pQS8L1k6' |
---|
| 4 | + | let a = base58'ALG9JVGNn9aCL68dbg1AmW6yDQv1b8EDLq99pQS8L1k6' |
---|
5 | 5 | | |
---|
6 | | - | func b (c) = (c != a) |
---|
| 6 | + | let b = [1, 2, 3, 4, 5, 6, 7, 8] |
---|
7 | 7 | | |
---|
| 8 | + | let c = base58'Co7gTLr7ZJvVKwToLpuZJqmkVecy5uwupYH6qCkKuhc8' |
---|
8 | 9 | | |
---|
9 | | - | let d = [1, 2, 3, 4, 5, 6, 7, 8] |
---|
| 10 | + | let d = 0 |
---|
10 | 11 | | |
---|
11 | 12 | | let e = 1 |
---|
12 | 13 | | |
---|
13 | | - | let f = 0 |
---|
| 14 | + | let f = 2 |
---|
14 | 15 | | |
---|
15 | 16 | | let g = "G_GAMECOUNTER" |
---|
16 | 17 | | |
---|
17 | | - | let h = "G_STATE" |
---|
| 18 | + | let h = "B_PASSBETS_" |
---|
18 | 19 | | |
---|
19 | | - | let i = "G_CurrentPoint " |
---|
| 20 | + | let i = "G_CurrentPoint_" |
---|
20 | 21 | | |
---|
21 | | - | let j = base58'Co7gTLr7ZJvVKwToLpuZJqmkVecy5uwupYH6qCkKuhc8' |
---|
| 22 | + | let j = 0 |
---|
22 | 23 | | |
---|
23 | | - | let k = 0 |
---|
24 | | - | |
---|
25 | | - | func l (m) = ((("G_" + toString(m)) + "_") + h) |
---|
| 24 | + | func k (l) = (l != a) |
---|
26 | 25 | | |
---|
27 | 26 | | |
---|
28 | | - | func n (m) = getInteger(this, l(m)) |
---|
| 27 | + | func m (n) = (("G_" + toString(n)) + "_STATE") |
---|
29 | 28 | | |
---|
30 | 29 | | |
---|
31 | | - | func o () = getInteger(this, g) |
---|
| 30 | + | func o (n) = ((("G_" + toString(n)) + "_") + "_SUMSHA") |
---|
32 | 31 | | |
---|
33 | 32 | | |
---|
34 | | - | @Callable(p) |
---|
35 | | - | func initGame () = if (b(p.callerPublicKey)) |
---|
| 33 | + | func p (n) = ((("G_" + toString(n)) + "_") + "_STARTHEIGHT") |
---|
| 34 | + | |
---|
| 35 | + | |
---|
| 36 | + | func q (n) = getInteger(this, m(n)) |
---|
| 37 | + | |
---|
| 38 | + | |
---|
| 39 | + | func r (n) = getString(this, o(n)) |
---|
| 40 | + | |
---|
| 41 | + | |
---|
| 42 | + | func s (n) = getInteger(this, p(n)) |
---|
| 43 | + | |
---|
| 44 | + | |
---|
| 45 | + | func t () = getInteger(this, g) |
---|
| 46 | + | |
---|
| 47 | + | |
---|
| 48 | + | func u (v) = b[(toInt(v) % 8)] |
---|
| 49 | + | |
---|
| 50 | + | |
---|
| 51 | + | @Callable(w) |
---|
| 52 | + | func initGame () = if (k(w.callerPublicKey)) |
---|
36 | 53 | | then throw("initGame_FORBIDDEN") |
---|
37 | 54 | | else { |
---|
38 | | - | let q = o() |
---|
39 | | - | if ($isInstanceOf(q, "Int")) |
---|
| 55 | + | let x = t() |
---|
| 56 | + | if ($isInstanceOf(x, "Int")) |
---|
40 | 57 | | then { |
---|
41 | | - | let r = q |
---|
| 58 | + | let y = x |
---|
42 | 59 | | throw("INIT_ALREADY_DONE") |
---|
43 | 60 | | } |
---|
44 | | - | else [IntegerEntry(g, 1)] |
---|
| 61 | + | else [IntegerEntry(g, 0)] |
---|
45 | 62 | | } |
---|
46 | 63 | | |
---|
47 | 64 | | |
---|
48 | | - | @Verifier(s) |
---|
49 | | - | func t () = { |
---|
50 | | - | let q = s |
---|
51 | | - | sigVerify(s.bodyBytes, s.proofs[0], s.senderPublicKey) |
---|
| 65 | + | |
---|
| 66 | + | @Callable(w) |
---|
| 67 | + | func startGame (v) = if (k(w.callerPublicKey)) |
---|
| 68 | + | then throw("startGame_FORBIDDEN") |
---|
| 69 | + | else { |
---|
| 70 | + | let x = t() |
---|
| 71 | + | if ($isInstanceOf(x, "Int")) |
---|
| 72 | + | then { |
---|
| 73 | + | let z = x |
---|
| 74 | + | let A = (z + 1) |
---|
| 75 | + | [IntegerEntry(g, A), IntegerEntry(m(A), 0), IntegerEntry(p(A), lastBlock.height), StringEntry(o(z), toBase58String(sha256(fromBase64String(v))))] |
---|
| 76 | + | } |
---|
| 77 | + | else throw("INIT_NEED") |
---|
| 78 | + | } |
---|
| 79 | + | |
---|
| 80 | + | |
---|
| 81 | + | @Verifier(B) |
---|
| 82 | + | func C () = { |
---|
| 83 | + | let x = B |
---|
| 84 | + | sigVerify(B.bodyBytes, B.proofs[0], B.senderPublicKey) |
---|
52 | 85 | | } |
---|
53 | 86 | | |
---|