tx · 81qQKoze3CsNWkaHSMk8tjhBoMjFWccJA3tHGhpVnqTk

3MwpUQwpSfHV1rFfHqCuuYL7A9K8ursTQWk:  -0.01420000 Waves

2018.10.08 18:48 [366743] smart account 3MwpUQwpSfHV1rFfHqCuuYL7A9K8ursTQWk > SELF 0.00000000 Waves

{ "type": 13, "id": "81qQKoze3CsNWkaHSMk8tjhBoMjFWccJA3tHGhpVnqTk", "fee": 1420000, "feeAssetId": null, "timestamp": 1539013806090, "version": 1, "sender": "3MwpUQwpSfHV1rFfHqCuuYL7A9K8ursTQWk", "senderPublicKey": "5ydncg624xM6LmJKWJ26iZoy7XBdGx9JxcgqKMNhJPaz", "proofs": [ "3viXmj4BWZs2PeMsn5UGxC7WgjWY9xVv8M4Vqipm22FyGUVGGQGVkrFcL18g4twN2cbfwxTN21YRwtccj4ouajHP" ], "script": "base64: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", "chainId": 84, "height": 366743, "spentComplexity": 0 } View: original | compacted Prev: 5Hv5XwkwYmRt79KTgtsW19r6zo72R61FP5sjhT2BMXaF Next: 5UupBa4se4zefNdhZgDHVrsJUyqjjc5uti3D5oZYDm7q Diff:
OldNewDifferences
99 true
1010 }
1111 let oldGameState = extract(getInteger(dt.sender, "gameState"))
12- let newGameState = extract(getInteger(dt.data, "gameState"))
12+ let newGameState = match getInteger(dt.data, "gameState") {
13+ case k: Int =>
14+ k
15+ case _ =>
16+ 7
17+ }
1318 let validStep = ((oldGameState + 1) == newGameState)
1419 let gameInitialization = if (if (gameNotStarted)
1520 then (extract(getInteger(dt.data, "command")) == 0)
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 1 #-}
22 {-# CONTENT_TYPE EXPRESSION #-}
33 match tx {
44 case dt: DataTransaction =>
55 let gameNotStarted = match getInteger(dt.sender, "gameState") {
66 case i: Int =>
77 false
88 case _ =>
99 true
1010 }
1111 let oldGameState = extract(getInteger(dt.sender, "gameState"))
12- let newGameState = extract(getInteger(dt.data, "gameState"))
12+ let newGameState = match getInteger(dt.data, "gameState") {
13+ case k: Int =>
14+ k
15+ case _ =>
16+ 7
17+ }
1318 let validStep = ((oldGameState + 1) == newGameState)
1419 let gameInitialization = if (if (gameNotStarted)
1520 then (extract(getInteger(dt.data, "command")) == 0)
1621 else false)
1722 then (extract(getInteger(dt.data, "gameState")) == 0)
1823 else false
1924 let playersRegistration = if (if (if (validStep)
2025 then (extract(getInteger(dt.data, "command")) == 1)
2126 else false)
2227 then (extract(getString(dt.data, "player1")) == "")
2328 else false)
2429 then (extract(getString(dt.data, "player2")) == "")
2530 else false
2631 let player1Registration = if (if (validStep)
2732 then (extract(getInteger(dt.data, "command")) == 2)
2833 else false)
2934 then sigVerify(dt.bodyBytes, dt.proofs[0], fromBase58String(extract(getString(dt.data, "player1"))))
3035 else false
3136 let player2Registration = if (if (validStep)
3237 then (extract(getInteger(dt.data, "command")) == 3)
3338 else false)
3439 then sigVerify(dt.bodyBytes, dt.proofs[0], fromBase58String(extract(getString(dt.data, "player2"))))
3540 else false
3641 let gameBegin = if (validStep)
3742 then (extract(getInteger(dt.data, "command")) == 4)
3843 else false
3944 let move1 = if (if (if (validStep)
4045 then (extract(getInteger(dt.data, "command")) == 5)
4146 else false)
4247 then (2 >= extract(getInteger(dt.data, "move1")))
4348 else false)
4449 then sigVerify(dt.bodyBytes, dt.proofs[0], fromBase58String(extract(getString(dt.sender, "player1"))))
4550 else false
4651 let move2 = if (if (if (validStep)
4752 then (extract(getInteger(dt.data, "command")) == 6)
4853 else false)
4954 then (2 >= extract(getInteger(dt.data, "move2")))
5055 else false)
5156 then sigVerify(dt.bodyBytes, dt.proofs[0], fromBase58String(extract(getString(dt.sender, "player2"))))
5257 else false
5358 let gameEnd = if (if ((extract(getInteger(dt.sender, "gameState")) == 6))
5459 then (extract(getInteger(dt.data, "command")) == 7)
5560 else false)
5661 then (extract(getString(dt.data, "gameState")) == "ended")
5762 else false
5863 if (if (if (if (if (if (if (gameInitialization)
5964 then true
6065 else playersRegistration)
6166 then true
6267 else player1Registration)
6368 then true
6469 else player2Registration)
6570 then true
6671 else gameBegin)
6772 then true
6873 else move1)
6974 then true
7075 else move2)
7176 then true
7277 else gameEnd
7378 case _ =>
7479 true
7580 }

github/deemru/w8io/873ac7e 
23.08 ms