tx · 52R2xEBhA6fpH6T8qJN4R4KBgW8aKZ5jDWeWYbcTDLaG

3NBFHpzVTqcHQB6Zxec1f6N6ZGBWQ4VsBFD:  -0.01500000 Waves

2019.10.06 17:59 [708075] smart account 3NBFHpzVTqcHQB6Zxec1f6N6ZGBWQ4VsBFD > SELF 0.00000000 Waves

{ "type": 13, "id": "52R2xEBhA6fpH6T8qJN4R4KBgW8aKZ5jDWeWYbcTDLaG", "fee": 1500000, "feeAssetId": null, "timestamp": 1570373976677, "version": 1, "sender": "3NBFHpzVTqcHQB6Zxec1f6N6ZGBWQ4VsBFD", "senderPublicKey": "8W9JLTJTfxrJrBNXxngzueBF4vJqeb6p9jFob7wb6QWQ", "proofs": [ "4zZHnYvgQbmM2c4uEbJakijxTxX6iGGthTztGFVzp1eiaiQ9AsYMGsWigRXirvyzwsbeucmu6BnDCdBASjMj4zko" ], "script": "base64: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AAQFAAAABlNIQTI1NgkAAZsAAAABBQAAAAZnYW1lSWQJAAJbAAAAAQUAAAAHcnNhU2lnbgUAAAAMcnNhUHVibGljS2V5AwUAAAAIcnNhQ2hlY2sEAAAABnJzYUludAkAAGoAAAACCQAEsQAAAAEJAAH3AAAAAQkAAlsAAAABBQAAAAdyc2FTaWduAAAAAAAAAAATAwMJAABnAAAAAgUAAAAGcnNhSW50AAAAAAAAAAAACQAAZwAAAAIAAAAAAAAAABMFAAAABnJzYUludAcFAAAABnJzYUludAkAAAIAAAABAgAAABdJbnRlZ2VyIGlzIG5vdCBpbiByYW5nZQkAAAIAAAABAgAAABhSc2EgU2lnbmF0dXJlIGlzIGludmFsaWQBAAAAF2luY3JlYXNlUmVzZXJ2ZWRCYWxhbmNlAAAAAwAAAAZwbXRBbXQAAAAMcG10QXNzZXROYW1lAAAACWFzc2V0SWQ1OAQAAAAWY3VycmVudFJlc2VydmVkQmFsYW5jZQQAAAAUdmFsdWVSZXNlcnZlZEJhbGFuY2UJAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACBQAAAAxwbXRBc3NldE5hbWUCAAAACV9SZXNlcnZlZAQAAAAHJG1hdGNoMAUAAAAUdmFsdWVSZXNlcnZlZEJhbGFuY2UDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAASbmV3UmVzZXJ2ZWRCYWxhbmNlCQAAZAAAAAIFAAAAFmN1cnJlbnRSZXNlcnZlZEJhbGFuY2UFAAAABnBtdEFtdAMJAABnAAAAAgkAA+sAAAACBQAAAAR0aGlzBQAAAAlhc3NldElkNTgFAAAAEm5ld1Jlc2VydmVkQmFsYW5jZQQAAAAXaW5jcmVhc2VSZXNlcnZlZEJhbGFuY2UFAAAAEm5ld1Jlc2VydmVkQmFsYW5jZQUAAAAXaW5jcmVhc2VSZXNlcnZlZEJhbGFuY2UJAAACAAAAAQIAAAA1QmV0IHdhcyByZWplY3RlZC4gSW5zdWZmaWNpZW50IGZ1bmRzIG9uIGdhbWUgYWNjb3VudC4BAAAAF2RlY3JlYXNlUmVzZXJ2ZWRCYWxhbmNlAAAAAgAAAAZiZXRBbXQAAAAHYXNzZXRJZAQA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AAAAA25pbAkAAAIAAAABAgAAABRhc3NldElkIGlzIGluY29ycmVjdAAAAAFpAQAAAAhwbGF5R2FtZQAAAAQAAAAGZ2FtZUlkAAAACHJzYVNpZ24xAAAACHJzYVNpZ24yAAAACHJzYVNpZ24zBAAAAAhkYXRhTGlzdAkBAAAAC2dldERhdGFMaXN0AAAAAQUAAAAGZ2FtZUlkBAAAAAlnYW1lU3RhdGUJAAGRAAAAAgUAAAAIZGF0YUxpc3QAAAAAAAAAAAAEAAAADXBsYXllckFkZHJlc3MJAQAAABRhZGRyZXNzRnJvbVB1YmxpY0tleQAAAAEJAAJZAAAAAQkAAZEAAAACBQAAAAhkYXRhTGlzdAAAAAAAAAAAAQQAAAAGYmV0QW10CQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAAIZGF0YUxpc3QAAAAAAAAAAAIEAAAACWFzc2V0TmFtZQkAAZEAAAACBQAAAAhkYXRhTGlzdAAAAAAAAAAAAwQAAAAJZ2FtZVN0YXJ0CQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAAIZGF0YUxpc3QAAAAAAAAAAAQEAAAACWFzc2V0SWQ1OAkBAAAAEUFzc2V0TmFtZVRvQmFzZTU4AAAAAQUAAAAJYXNzZXROYW1lBAAAABJzZXRSZXNlcnZlZEJhbGFuY2UJAQAAABdkZWNyZWFzZVJlc2VydmVkQmFsYW5jZQAAAAIFAAAABmJldEFtdAUAAAAJYXNzZXROYW1lBAAAAAhkcnVtMUludAkBAAAACHJzYVRvSW50AAAAAwUAAAAGZ2FtZUlkBQAAAAhyc2FTaWduMQUAAAANcnNhUHVibGljS2V5MQQAAAAIZHJ1bTJJbnQJAQAAAAhyc2FUb0ludAAAAAMFAAAABmdhbWVJZAUAAAAIcnNhU2lnbjIFAAAADXJzYVB1YmxpY0tleTIEAAAACGRydW0zSW50CQEAAAAIcnNhVG9JbnQAAAADBQAAAAZnYW1lSWQFAAAACHJzYVNpZ24zBQAAAA1yc2FQdWJsaWNLZXkzBAAAAAt0aHJlZUluQVJvdwkAASwAAAACCQABLAAAAAIJAAGRAAAAAgUAAAAFZHJ1bTEFAAAACGRydW0xSW50CQABkQAAAAIFAAAABWRydW0yBQAAAAhkcnVtMkludAkAAZEAAAACBQAAAAVkcnVtMwUAAAAIZHJ1bTNJbnQEAAAACXR3b0luQVJvdwkAASwAAAACCQABkQAAAAIFAAAABWRydW0xBQAAAAhkcnVtMUludAkAAZEAAAACBQAAAAVkcnVtMgUAAAAIZHJ1bTJJbnQEAAAAFWRyb3BwZWRFbGVtZW50c1N0cmluZwQAAAANZHJ1bTFUb1N0cmluZwkBAAAAD2RydW1JbnRUb1N0cmluZwAAAAEFAAAACGRydW0xSW50BAAAAA1kcnVtMlRvU3RyaW5nCQEAAAAPZHJ1bUludFRvU3RyaW5nAAAAAQUAAAAIZHJ1bTJJbnQEAAAADWRydW0zVG9TdHJpbmcJAQAAAA9kcnVtSW50VG9TdHJpbmcAAAABBQAAAAhkcnVtM0ludAkAASwAAAACCQABLAAAAAIFAAAADWRydW0xVG9TdHJpbmcFAAAADWRydW0yVG9TdHJpbmcFAAAADWRydW0zVG9TdHJpbmcEAAAABndpbkFtdAQAAAAKbXVsdGlwbGllcgkBAAAAEGRlZmluZU11bHRpcGxpZXIAAAACBQAAAAt0aHJlZUluQVJvdwUAAAAJdHdvSW5BUm93CQAAaQAAAAIJAABoAAAAAgUAAAAGYmV0QW10BQAAAAptdWx0aXBsaWVyAAAAAAAAAAAKBAAAAAl3aW5QbXRBbXQEAAAAB2JhbGFuY2UJAAPrAAAAAgUAAAAEdGhpcwUAAAAJYXNzZXRJZDU4AwkAAGYAAAACBQAAAAZ3aW5BbXQFAAAAB2JhbGFuY2UJAABoAAAAAgUAAAAGYmV0QW10AAAAAAAAAAACBQAAAAZ3aW5BbXQEAAAADWdhbWVUaW1lQ2hlY2sJAABmAAAAAgUAAAANZ2FtZVRpbWVGcmFtZQkAAGUAAAACBQAAAAZoZWlnaHQFAAAACWdhbWVTdGFydAQAAAAMc3RhdGVDb3JyZWN0CQAAAAAAAAIFAAAACWdhbWVTdGF0ZQUAAAAIc3RhdGVBY2MDBQAAAAxzdGF0ZUNvcnJlY3QDBQAAAA1nYW1lVGltZUNoZWNrAwkAAAAAAAACBQAAAAZ3aW5BbXQAAAAAAAAAAAAJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgUAAAAG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AAAAAAQAAAAEZGF0YQIAAABSTG9zZV85RVk4S2Z4MzJUVDJHTXJZMUpoOG5tYk14WWttRE1FTGJubnFkRHF2VnhYa18xMDAwMDBfV0FWRVNfNzA3NzM5XzBfMzI1XzA5MTgwNAkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgIAAAAzRlhHdGs3QnNhOEVzWmhiU2FoaVU3d3NoeU54OU1hWlFoZkdQMlIyQm00RnZfR2FtZUlkBQAAAARkYXRhBQAAAANuaWwAAAABAAAAAnR4AQAAAAZ2ZXJpZnkAAAAABAAAAAckbWF0Y2gwBQAAAAJ0eAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAATVHJhbnNmZXJUcmFuc2FjdGlvbgQAAAADdHR4BQAAAAckbWF0Y2gwBAAAAAlhc3NldE5hbWUJAQAAABFhc3NldEJhc2U1OFRvTmFtZQAAAAEIBQAAAAN0dHgAAAAHYXNzZXRJZAQAAAAUdmFsdWVSZXNlcnZlZEJhbGFuY2UJAAQaAAAAAgUAAAAEdGhpcwkAASwAAAACBQAAAAlhc3NldE5hbWUCAAAACV9SZXNlcnZlZAQAAAAPcmVzZXJ2ZWRCYWxhbmNlBAAAAAckbWF0Y2gxBQAAABR2YWx1ZVJlc2VydmVkQmFsYW5jZQMJAAABAAAAAgUAAAAHJG1hdGNoMQIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gxBQAAAAFhAAAAAAAAAAAABAAAABBhdmFpbGFibGVCYWxhbmNlCQAAZQAAAAIJAAPrAAAAAgUAAAAEdGhpcwgFAAAAA3R0eAAAAAdhc3NldElkBQAAAA9yZXNlcnZlZEJhbGFuY2UEAAAAD2F2YWlsaWJsZUFtb3VudAkAAGcAAAACBQAAABBhdmFpbGFibGVCYWxhbmNlCAUAAAADdHR4AAAABmFtb3VudAQAAAAJc2lnbmF0dXJlCQAB9AAAAAMIBQAAAAN0dHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAN0dHgAAAAGcHJvb2ZzAAAAAAAAAAAACAUAAAADdHR4AAAAD3NlbmRlclB1YmxpY0tleQMFAAAAD2F2YWlsaWJsZUFtb3VudAUAAAAJc2lnbmF0dXJlBwMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAUU2V0U2NyaXB0VHJhbnNhY3Rpb24EAAAABHNzdHgFAAAAByRtYXRjaDAJAAH0AAAAAwgFAAAABHNzdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAARzc3R4AAAABnByb29mcwAAAAAAAAAAAAgFAAAABHNzdHgAAAAPc2VuZGVyUHVibGljS2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAABdJbnZva2VTY3JpcHRUcmFuc2FjdGlvbgQAAAAEaXN0eAUAAAAHJG1hdGNoMAkAAfQAAAADCAUAAAAEaXN0eAAAAAlib2R5Qnl0ZXMJAAGRAAAAAggFAAAABGlzdHgAAAAGcHJvb2ZzAAAAAAAAAAAACAUAAAAEaXN0eAAAAA9zZW5kZXJQdWJsaWNLZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAD0RhdGFUcmFuc2FjdGlvbgQAAAADZHR4BQAAAAckbWF0Y2gwBgcXCpmS", "chainId": 84, "height": 708075, "spentComplexity": 0 } View: original | compacted Prev: ABgD7TaaoTB3n7q8QC6dXkhKgW4BG6RLYuTQuj56kzRn Next: 3FkWUS8R8ABeAH3frBUXz5PZeBBCZVLF4HrL89Gvc3mB Diff:
OldNewDifferences
292292 }
293293
294294
295+
296+@Callable(i)
297+func data () = {
298+ let data = "Lose_9EY8Kfx32TT2GMrY1Jh8nmbMxYkmDMELbnnqdDqvVxXk_100000_WAVES_707739_0_325_091804"
299+ WriteSet([DataEntry("FXGtk7Bsa8EsZhbSahiU7wshyNx9MaZQhfGP2R2Bm4Fv_GameId", data)])
300+ }
301+
302+
295303 @Verifier(tx)
296304 func verify () = match tx {
297305 case ttx: TransferTransaction =>
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let rsaPublicKey1 = fromBase64String("MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAOkiuz/BV4EjoxGhTmNCbt2TgkbSPH/w69b3F1rKmD61JiPXvvF8L2pI9xOYcW4FmoEZVHlRQtAlaJykl3+rsrECAwEAAQ==")
55
66 let rsaPublicKey2 = fromBase64String("MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAJnXzbM/V2sDV1ULbPSOlHkldOTWRrHi5fxIkBmuevrClMPVH7rqccwirDNcMdIdwXHI9Adhj9FWjwGIwfU/K6MCAwEAAQ==")
77
88 let rsaPublicKey3 = fromBase64String("MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAORDevy0r4kzLqOySloB63Huv2e4zeHKHjCsy5vtFKmWZbXJa8gZYt4+EklFIo1K9oqu5BAPVfJ3FOzs2U1A+g0CAwEAAQ==")
99
1010 let drum1 = ["2", "1", "2", "5", "1", "3", "1", "3", "4", "3", "4", "2", "1", "5", "2", "7", "4", "6", "1", "3"]
1111
1212 let drum2 = ["7", "6", "3", "1", "4", "2", "1", "2", "5", "3", "1", "4", "3", "6", "5", "2", "1", "1", "2", "4"]
1313
1414 let drum3 = ["4", "3", "1", "6", "5", "7", "4", "3", "6", "1", "2", "4", "3", "1", "2", "5", "2", "1", "5", "1"]
1515
1616 let gameTimeFrame = (1440 * 2)
1717
1818 let commission = 500000
1919
2020 let stateAcc = "Accepted"
2121
2222 let stateWin = "Win"
2323
2424 let stateTimeout = "WinByTimeout"
2525
2626 let stateLose = "Lose"
2727
2828 let wavesId = unit
2929
3030 let btcId = base58'Gt4HLkHunts7bWbtYP5UCsAPW7TUA4gmQEnjgjbZ2NqB'
3131
3232 let ethId = base58'6A79GDQj8bdHqUaoJQ3qE1TCPnBc3wFirNCSsAY5RKry'
3333
3434 let ltcId = base58'7oRhs4zoufHM4KiBDuJwRXUWb9JQaFt98N8ubpmytMmw'
3535
3636 let vstId = base58'5UyDjBMx1Q8UWhJj1r7JuA6h4aCkKrHE1J19HvMXRpRd'
3737
3838 let wctId = base58'Ae5W927iuKSLLT6Sdt3bqWze6ZUbYHDWzPY6dLKQusZv'
3939
4040 let divider = 1000
4141
4242 let WavesMinAmt = (100000000 / divider)
4343
4444 let WavesMaxAmt = (WavesMinAmt * 10)
4545
4646 let BtcMinAmt = (10000 / divider)
4747
4848 let BtcMaxAmt = (BtcMinAmt * 10)
4949
5050 let EthMinAmt = (1000000 / divider)
5151
5252 let EthMaxAmt = (EthMinAmt * 10)
5353
5454 let LtcMinAmt = (2000000 / divider)
5555
5656 let LtcMaxAmt = (LtcMinAmt * 10)
5757
5858 let WctMinAmt = (500000000 / divider)
5959
6060 let WctMaxAmt = (WctMinAmt * 10)
6161
6262 let VstMinAmt = (500000000 / divider)
6363
6464 let VstMaxAmt = (VstMinAmt * 10)
6565
6666 func pmtAmtCheck (pmtAssetId,betAmount) = if ((pmtAssetId == "WAVES"))
6767 then if (if ((betAmount >= WavesMinAmt))
6868 then (WavesMaxAmt >= betAmount)
6969 else false)
7070 then true
7171 else throw("Bet amount is not in range")
7272 else if ((pmtAssetId == "BTC"))
7373 then if (if ((betAmount >= BtcMinAmt))
7474 then (BtcMaxAmt >= betAmount)
7575 else false)
7676 then true
7777 else throw("Bet amount is not in range")
7878 else if ((pmtAssetId == "ETH"))
7979 then if (if ((betAmount >= EthMinAmt))
8080 then (EthMaxAmt >= betAmount)
8181 else false)
8282 then true
8383 else throw("Bet amount is not in range")
8484 else if ((pmtAssetId == "LTC"))
8585 then if (if ((betAmount >= LtcMinAmt))
8686 then (LtcMaxAmt >= betAmount)
8787 else false)
8888 then true
8989 else throw("Bet amount is not in range")
9090 else if ((pmtAssetId == "WCT"))
9191 then if (if ((betAmount >= WctMinAmt))
9292 then (WctMaxAmt >= betAmount)
9393 else false)
9494 then true
9595 else throw("Bet amount is not in range")
9696 else if (if ((betAmount >= VstMinAmt))
9797 then (VstMaxAmt >= betAmount)
9898 else false)
9999 then true
100100 else throw("Bet amount is not in range")
101101
102102
103103 func getDataList (gameId) = {
104104 let getDataString = getString(this, (gameId + "_GameId"))
105105 let a = match getDataString {
106106 case a: String =>
107107 a
108108 case _ =>
109109 throw("GameId was not found")
110110 }
111111 split(a, "_")
112112 }
113113
114114
115115 func rsaToInt (gameId,rsaSign,rsaPublicKey) = {
116116 let rsaCheck = rsaVerify(SHA256, toBytes(gameId), fromBase64String(rsaSign), rsaPublicKey)
117117 if (rsaCheck)
118118 then {
119119 let rsaInt = (toInt(sha256(fromBase64String(rsaSign))) % 19)
120120 if (if ((rsaInt >= 0))
121121 then (19 >= rsaInt)
122122 else false)
123123 then rsaInt
124124 else throw("Integer is not in range")
125125 }
126126 else throw("Rsa Signature is invalid")
127127 }
128128
129129
130130 func increaseReservedBalance (pmtAmt,pmtAssetName,assetId58) = {
131131 let currentReservedBalance = {
132132 let valueReservedBalance = getInteger(this, (pmtAssetName + "_Reserved"))
133133 match valueReservedBalance {
134134 case a: Int =>
135135 a
136136 case _ =>
137137 0
138138 }
139139 }
140140 let newReservedBalance = (currentReservedBalance + pmtAmt)
141141 if ((assetBalance(this, assetId58) >= newReservedBalance))
142142 then {
143143 let increaseReservedBalance = newReservedBalance
144144 increaseReservedBalance
145145 }
146146 else throw("Bet was rejected. Insufficient funds on game account.")
147147 }
148148
149149
150150 func decreaseReservedBalance (betAmt,assetId) = {
151151 let valueReservedBalance = getInteger(this, (assetId + "_Reserved"))
152152 let extractReservedBalance = match valueReservedBalance {
153153 case a: Int =>
154154 a
155155 case _ =>
156156 0
157157 }
158158 let decreaseReservedBalance = (extractReservedBalance - betAmt)
159159 if ((decreaseReservedBalance >= 0))
160160 then decreaseReservedBalance
161161 else throw("Reserved balance couldn't be less than 0")
162162 }
163163
164164
165165 func drumIntToString (drumInt) = if ((10 > drumInt))
166166 then ("0" + toString(drumInt))
167167 else toString(drumInt)
168168
169169
170170 func defineMultiplier (threeInARow,twoInARow) = if ((threeInARow == "777"))
171171 then 5370
172172 else if ((threeInARow == "666"))
173173 then 1300
174174 else if ((threeInARow == "555"))
175175 then 450
176176 else if ((threeInARow == "444"))
177177 then 200
178178 else if ((threeInARow == "333"))
179179 then 150
180180 else if ((threeInARow == "222"))
181181 then 110
182182 else if ((threeInARow == "111"))
183183 then 40
184184 else if ((twoInARow == "77"))
185185 then 270
186186 else if ((twoInARow == "66"))
187187 then 130
188188 else if ((twoInARow == "55"))
189189 then 65
190190 else if ((twoInARow == "44"))
191191 then 30
192192 else if ((twoInARow == "33"))
193193 then 20
194194 else if ((twoInARow == "22"))
195195 then 15
196196 else if ((twoInARow == "11"))
197197 then 10
198198 else 0
199199
200200
201201 func AssetNameToBase58 (assetName) = if ((assetName == "WAVES"))
202202 then wavesId
203203 else if ((assetName == "BTC"))
204204 then btcId
205205 else if ((assetName == "ETH"))
206206 then ethId
207207 else if ((assetName == "LTC"))
208208 then ltcId
209209 else if ((assetName == "VST"))
210210 then vstId
211211 else if ((assetName == "WCT"))
212212 then wctId
213213 else throw("Asset name is incorrect")
214214
215215
216216 func assetBase58ToName (assetId) = if (!(isDefined(assetId)))
217217 then "WAVES"
218218 else if ((assetId == btcId))
219219 then "BTC"
220220 else if ((assetId == ethId))
221221 then "ETH"
222222 else if ((assetId == ltcId))
223223 then "LTC"
224224 else if ((assetId == wctId))
225225 then "WCT"
226226 else if ((assetId == vstId))
227227 then "VST"
228228 else throw("AssetId is incorrect")
229229
230230
231231 @Callable(i)
232232 func makeBet () = {
233233 let pmt = extract(i.payment)
234234 let betAmount = (pmt.amount - commission)
235235 let assetId = pmt.assetId
236236 let gameId = toBase58String(i.transactionId)
237237 let gameStart = height
238238 let playerPublicKey = toBase58String(i.callerPublicKey)
239239 let pmtAssetName = assetBase58ToName(assetId)
240240 let setReservedBalance = increaseReservedBalance(betAmount, pmtAssetName, pmt.assetId)
241241 let pmtAmtCorrect = pmtAmtCheck(pmtAssetName, betAmount)
242242 if (pmtAmtCorrect)
243243 then {
244244 let dataString = ((((((((stateAcc + "_") + playerPublicKey) + "_") + toString(betAmount)) + "_") + pmtAssetName) + "_") + toString(gameStart))
245245 WriteSet([DataEntry((gameId + "_GameId"), dataString), DataEntry((pmtAssetName + "_Reserved"), setReservedBalance)])
246246 }
247247 else throw("assetId is incorrect")
248248 }
249249
250250
251251
252252 @Callable(i)
253253 func playGame (gameId,rsaSign1,rsaSign2,rsaSign3) = {
254254 let dataList = getDataList(gameId)
255255 let gameState = dataList[0]
256256 let playerAddress = addressFromPublicKey(fromBase58String(dataList[1]))
257257 let betAmt = parseIntValue(dataList[2])
258258 let assetName = dataList[3]
259259 let gameStart = parseIntValue(dataList[4])
260260 let assetId58 = AssetNameToBase58(assetName)
261261 let setReservedBalance = decreaseReservedBalance(betAmt, assetName)
262262 let drum1Int = rsaToInt(gameId, rsaSign1, rsaPublicKey1)
263263 let drum2Int = rsaToInt(gameId, rsaSign2, rsaPublicKey2)
264264 let drum3Int = rsaToInt(gameId, rsaSign3, rsaPublicKey3)
265265 let threeInARow = ((drum1[drum1Int] + drum2[drum2Int]) + drum3[drum3Int])
266266 let twoInARow = (drum1[drum1Int] + drum2[drum2Int])
267267 let droppedElementsString = {
268268 let drum1ToString = drumIntToString(drum1Int)
269269 let drum2ToString = drumIntToString(drum2Int)
270270 let drum3ToString = drumIntToString(drum3Int)
271271 ((drum1ToString + drum2ToString) + drum3ToString)
272272 }
273273 let winAmt = {
274274 let multiplier = defineMultiplier(threeInARow, twoInARow)
275275 ((betAmt * multiplier) / 10)
276276 }
277277 let winPmtAmt = {
278278 let balance = assetBalance(this, assetId58)
279279 if ((winAmt > balance))
280280 then (betAmt * 2)
281281 else winAmt
282282 }
283283 let gameTimeCheck = (gameTimeFrame > (height - gameStart))
284284 let stateCorrect = (gameState == stateAcc)
285285 if (stateCorrect)
286286 then if (gameTimeCheck)
287287 then if ((winAmt == 0))
288288 then WriteSet([DataEntry((gameId + "_GameId"), ((((((((((((((stateLose + "_") + dataList[1]) + "_") + dataList[2]) + "_") + dataList[3]) + "_") + dataList[4]) + "_") + toString(winAmt)) + "_") + threeInARow) + "_") + droppedElementsString)), DataEntry((assetName + "_Reserved"), setReservedBalance)])
289289 else ScriptResult(WriteSet([DataEntry((gameId + "_GameId"), ((((((((((((((stateWin + "_") + dataList[1]) + "_") + dataList[2]) + "_") + dataList[3]) + "_") + dataList[4]) + "_") + toString(winAmt)) + "_") + threeInARow) + "_") + droppedElementsString)), DataEntry((assetName + "_Reserved"), setReservedBalance)]), TransferSet([ScriptTransfer(playerAddress, winPmtAmt, assetId58)]))
290290 else ScriptResult(WriteSet([DataEntry((gameId + "_GameId"), ((((((((((((((stateTimeout + "_") + dataList[1]) + "_") + dataList[2]) + "_") + dataList[3]) + "_") + dataList[4]) + "_") + toString((betAmt * 2))) + "_") + "000") + "_") + "000000")), DataEntry((assetName + "_Reserved"), setReservedBalance)]), TransferSet([ScriptTransfer(playerAddress, betAmt, assetId58)]))
291291 else throw("Game state is incorrect")
292292 }
293293
294294
295+
296+@Callable(i)
297+func data () = {
298+ let data = "Lose_9EY8Kfx32TT2GMrY1Jh8nmbMxYkmDMELbnnqdDqvVxXk_100000_WAVES_707739_0_325_091804"
299+ WriteSet([DataEntry("FXGtk7Bsa8EsZhbSahiU7wshyNx9MaZQhfGP2R2Bm4Fv_GameId", data)])
300+ }
301+
302+
295303 @Verifier(tx)
296304 func verify () = match tx {
297305 case ttx: TransferTransaction =>
298306 let assetName = assetBase58ToName(ttx.assetId)
299307 let valueReservedBalance = getInteger(this, (assetName + "_Reserved"))
300308 let reservedBalance = match valueReservedBalance {
301309 case a: Int =>
302310 a
303311 case _ =>
304312 0
305313 }
306314 let availableBalance = (assetBalance(this, ttx.assetId) - reservedBalance)
307315 let availibleAmount = (availableBalance >= ttx.amount)
308316 let signature = sigVerify(ttx.bodyBytes, ttx.proofs[0], ttx.senderPublicKey)
309317 if (availibleAmount)
310318 then signature
311319 else false
312320 case sstx: SetScriptTransaction =>
313321 sigVerify(sstx.bodyBytes, sstx.proofs[0], sstx.senderPublicKey)
314322 case istx: InvokeScriptTransaction =>
315323 sigVerify(istx.bodyBytes, istx.proofs[0], istx.senderPublicKey)
316324 case dtx: DataTransaction =>
317325 true
318326 case _ =>
319327 false
320328 }
321329

github/deemru/w8io/873ac7e 
38.49 ms