tx · 9aGBoUFvAmTKobsJwcCNmJCwyuhX79iS4ES5mRonUrmD

3Mu8FKNn2fEuxsE5mVhCwDQ275Ygi3ejweU:  -0.01400000 Waves

2019.10.25 21:39 [736004] smart account 3Mu8FKNn2fEuxsE5mVhCwDQ275Ygi3ejweU > SELF 0.00000000 Waves

{ "type": 13, "id": "9aGBoUFvAmTKobsJwcCNmJCwyuhX79iS4ES5mRonUrmD", "fee": 1400000, "feeAssetId": null, "timestamp": 1572028760850, "version": 1, "sender": "3Mu8FKNn2fEuxsE5mVhCwDQ275Ygi3ejweU", "senderPublicKey": "6EzysHLfsAMmtxy8XtuFoQrCNTEkUdPSEzHYEwqpqSs3", "proofs": [ "2UBS6qkPh1SSndmtdbMkCsabrmAinFAgAEhBQini8XTpKzDSd3zvsymVS935q1o1QJ2oLrUf4TMkdDXMj2ADyyZ5" ], "script": "base64:AAIDAAAAAAAAAA4IARIECgIICBIECgIIAgAAABwAAAAACVJTQVBVQkxJQwkAAlsAAAABAgAAAcliYXNlNjQ6LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUlJQklqQU5CZ2txaGtpRzl3MEJBUUVGQUFPQ0FROEFNSUlCQ2dLQ0FRRUFtT2xSQlRZRU8zSDdZOXJCbW9GUQpGbjQzOTJQeDBRdzEzRHNkRWhuek1IMmNqNlk1eW1QdUNPTE1OZTVxclV6UWw4b1JMeklCekZWTVpsd1VZbDJiCm9zck9JeFFiWUY3V1ZRV3ZvVnhFVDFZSWdEbTNOenpPTEE1dUg3Q0tPMHNuc2htTUZDRE9aRWV3NDFHaktoM1AKZ3grbmJBZ3VQOVpRUGZxU2FmRW1DM0NOLzR5RHNKcktyaVJuaVpKbzlqUy80TExzUkt3QjdIQVpIem9GOUxMNwp0U1pIM2h0YU5HdGJkVGt4WjFUelNUM01iMlZQU3pzWnZRRG9jWFVWT21KT3UwbzI5YU9ZK0drRy9HNFJDSzBGCkJXUUhFVXZDNTFUUkRTNWs4amFkME8xTW9ialFjNmIxOGQrZnVvVkZkTmZad0dIK3VGdWR0UEczVUpUZjJta3oKWlFJREFRQUIKLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tAAAAAA9HQU1FU0NPVU5URVJLRVkCAAAACSRHQU1FX05VTQAAAAAOUkVTRVJWQVRJT05LRVkCAAAAECRSRVNFUlZFRF9BTU9VTlQAAAAADlNUQVRFU1VCTUlUVEVEAgAAAAlTVUJNSVRURUQAAAAACFNUQVRFV09OAgAAAANXT04AAAAACVNUQVRFTE9TVAIAAAAETE9TVAAAAAAMSWR4R2FtZVN0YXRlAAAAAAAAAAAAAAAAAA9JZHhQbGF5ZXJDaG9pY2UAAAAAAAAAAAEAAAAAB0lkeFR5cGUAAAAAAAAAAAIAAAAAEUlkeFBsYXllclB1YktleTU4AAAAAAAAAAADAAAAABBJZHhTdGFydGVkSGVpZ2h0AAAAAAAAAAAEAAAAAAlJZHhXaW5BbXQAAAAAAAAAAAUAAAAADklkeFJhbmRPckVtcHR5AAAAAAAAAAAGAQAAABBJbmNyZW1lbnRHYW1lTnVtAAAAAAQAAAAHZ2FtZU51bQQAAAAHJG1hdGNo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U2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAPR0FNRVNDT1VOVEVSS0VZBQAAAApuZXdHYW1lTnVtCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAAAZnYW1lSWQFAAAAC2dhbWVEYXRhU3RyBQAAAANuaWwJAQAAAAtUcmFuc2ZlclNldAAAAAEFAAAAA25pbAAAAAFpAQAAAAh3aXRoZHJhdwAAAAIAAAAGZ2FtZUlkAAAABnJzYVNpZwQAAAAMZ2FtZURhdGFMaXN0CQEAAAATRXh0cmFjdEdhbWVEYXRhTGlzdAAAAAEFAAAABmdhbWVJZAQAAAAJZ2FtZVN0YXRlCQABkQAAAAIFAAAADGdhbWVEYXRhTGlzdAUAAAAMSWR4R2FtZVN0YXRlBAAAAAxwbGF5ZXJDaG9pY2UJAAGRAAAAAgUAAAAMZ2FtZURhdGFMaXN0BQAAAA9JZHhQbGF5ZXJDaG9pY2UEAAAABHR5cGUJAAGRAAAAAgUAAAAMZ2FtZURhdGFMaXN0BQAAAAdJZHhUeXBlBAAAAA1zdGFydGVkSGVpZ2h0CQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAAMZ2FtZURhdGFMaXN0BQAAABBJZHhTdGFydGVkSGVpZ2h0BAAAAAZ3aW5BbXQJAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAAxnYW1lRGF0YUxpc3QFAAAACUlkeFdpbkFtdAQAAAAOcGxheWVyUHViS2V5NTgJAAGRAAAAAgUAAAAMZ2FtZURhdGFMaXN0BQAAABFJZHhQbGF5ZXJQdWJLZXk1OAQAAAANcGxheWVyQWRkcmVzcwkBAAAAFGFkZHJlc3NGcm9tUHVibGljS2V5AAAAAQkAAlkAAAABBQAAAA5wbGF5ZXJQdWJLZXk1OAMJAQAAAAIhPQAAAAIFAAAACWdhbWVTdGF0ZQUAAAAOU1RBVEVTVUJNSVRURUQJAAACAAAAAQIAAAAkSW52YWxpZCBnYW1lIHN0YXRlIGZvciBwYXNzZWQgZ2FtZUlkBAAAAARyYW5kCQEAAAAPR2VuZXJhdGVSYW5kSW50AAAAAgUAAAAGZ2FtZUlkBQAAAAZyc2FTaWcEAAAAB3JhbmRTdHIJAQAAAAlSYW5kVG9TdHIAAAABBQAAAARyYW5kAwkBAAAAB2RpY2VXaW4AAAADBQAAAAR0eXBlCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEFAAAADHBsYXllckNob2ljZQUAAAAEcmFuZAQAAAAObmV3R2FtZURhdGFTdHIJAQAAABFGb3JtYXRHYW1lRGF0YVN0cgAAAAcFAAAACFNUQVRFV09OBQAAAAxwbGF5ZXJDaG9pY2UFAAAABHR5cGUFAAAADnBsYXllclB1YktleTU4BQAAAA1zdGFydGVkSGVpZ2h0BQAAAAZ3aW5BbXQFAAAAB3JhbmRTdHIJAQAAAAxXaW5TY3JpcHRTZXQAAAAEBQAAAAZnYW1lSWQFAAAADXBsYXllckFkZHJlc3MFAAAABndpbkFtdAUAAAAObmV3R2FtZURhdGFTdHIEAAAADm5ld0dhbWVEYXRhU3RyCQEAAAARRm9ybWF0R2FtZURhdGFTdHIAAAAHBQAAAAlTVEFURUxPU1QFAAAADHBsYXllckNob2ljZQUAAAAEdHlwZQUAAAAOcGxheWVyUHViS2V5NTgFAAAADXN0YXJ0ZWRIZWlnaHQFAAAABndpbkFtdAUAAAAHcmFuZFN0cgkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAGZ2FtZUlkBQAAAA5uZXdHYW1lRGF0YVN0cgUAAAADbmlsAAAAAGBtcZE=", "chainId": 84, "height": 736004, "spentComplexity": 0 } View: original | compacted Prev: 2Z3BmVhVpYnS5sZZuucF9eNgWyUQ8sczLhHZs52DuWFa Next: rtPtktCe4K2mWfu64oec9eJJPgieJGYjUFHDcaut33B Diff:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let RSAPUBLIC = fromBase64String("base64:MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmpuXcI/o4pIB5ywv9DOOGapTBUwRVlM/6+H6hFelOXtkrwY/YItmPxEDpz7rAerQPQe9tDPEaAv/GnlEztybOFXgu9DzDe8YoMRD1vakgoAcogmbY58QD6KMj5HkoVj/yTNIc9szj5qhIlrAdmb3KLL6hQU7y8+Jj69BWVPsaQgkspSdeYtb1tHQc7t95n7OZ56r2A7G3+bQf6nSMkPkAhIrEpbCm58oiGBczdTd/LqFSVotZsbL7Yh6SHLfnHeD+QgcfJrnam8OHMGJEJTRXjILeHGjlRCP8oVpioHry1S2xPx5sVzIm2MM+CzYenAGlo0j26atBhiULoTulwD3pQIDAQAB")
4+let RSAPUBLIC = fromBase64String("base64:-----BEGIN PUBLIC KEY-----
5+MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmOlRBTYEO3H7Y9rBmoFQ
6+Fn4392Px0Qw13DsdEhnzMH2cj6Y5ymPuCOLMNe5qrUzQl8oRLzIBzFVMZlwUYl2b
7+osrOIxQbYF7WVQWvoVxET1YIgDm3NzzOLA5uH7CKO0snshmMFCDOZEew41GjKh3P
8+gx+nbAguP9ZQPfqSafEmC3CN/4yDsJrKriRniZJo9jS/4LLsRKwB7HAZHzoF9LL7
9+tSZH3htaNGtbdTkxZ1TzST3Mb2VPSzsZvQDocXUVOmJOu0o29aOY+GkG/G4RCK0F
10+BWQHEUvC51TRDS5k8jad0O1MobjQc6b18d+fuoVFdNfZwGH+uFudtPG3UJTf2mkz
11+ZQIDAQAB
12+-----END PUBLIC KEY-----")
513
614 let GAMESCOUNTERKEY = "$GAME_NUM"
715
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let RSAPUBLIC = fromBase64String("base64:MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmpuXcI/o4pIB5ywv9DOOGapTBUwRVlM/6+H6hFelOXtkrwY/YItmPxEDpz7rAerQPQe9tDPEaAv/GnlEztybOFXgu9DzDe8YoMRD1vakgoAcogmbY58QD6KMj5HkoVj/yTNIc9szj5qhIlrAdmb3KLL6hQU7y8+Jj69BWVPsaQgkspSdeYtb1tHQc7t95n7OZ56r2A7G3+bQf6nSMkPkAhIrEpbCm58oiGBczdTd/LqFSVotZsbL7Yh6SHLfnHeD+QgcfJrnam8OHMGJEJTRXjILeHGjlRCP8oVpioHry1S2xPx5sVzIm2MM+CzYenAGlo0j26atBhiULoTulwD3pQIDAQAB")
4+let RSAPUBLIC = fromBase64String("base64:-----BEGIN PUBLIC KEY-----
5+MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmOlRBTYEO3H7Y9rBmoFQ
6+Fn4392Px0Qw13DsdEhnzMH2cj6Y5ymPuCOLMNe5qrUzQl8oRLzIBzFVMZlwUYl2b
7+osrOIxQbYF7WVQWvoVxET1YIgDm3NzzOLA5uH7CKO0snshmMFCDOZEew41GjKh3P
8+gx+nbAguP9ZQPfqSafEmC3CN/4yDsJrKriRniZJo9jS/4LLsRKwB7HAZHzoF9LL7
9+tSZH3htaNGtbdTkxZ1TzST3Mb2VPSzsZvQDocXUVOmJOu0o29aOY+GkG/G4RCK0F
10+BWQHEUvC51TRDS5k8jad0O1MobjQc6b18d+fuoVFdNfZwGH+uFudtPG3UJTf2mkz
11+ZQIDAQAB
12+-----END PUBLIC KEY-----")
513
614 let GAMESCOUNTERKEY = "$GAME_NUM"
715
816 let RESERVATIONKEY = "$RESERVED_AMOUNT"
917
1018 let STATESUBMITTED = "SUBMITTED"
1119
1220 let STATEWON = "WON"
1321
1422 let STATELOST = "LOST"
1523
1624 let IdxGameState = 0
1725
1826 let IdxPlayerChoice = 1
1927
2028 let IdxType = 2
2129
2230 let IdxPlayerPubKey58 = 3
2331
2432 let IdxStartedHeight = 4
2533
2634 let IdxWinAmt = 5
2735
2836 let IdxRandOrEmpty = 6
2937
3038 func IncrementGameNum () = {
3139 let gameNum = match getInteger(this, GAMESCOUNTERKEY) {
3240 case num: Int =>
3341 num
3442 case _ =>
3543 0
3644 }
3745 (gameNum + 1)
3846 }
3947
4048
4149 func ExtractReservedAmt () = match getInteger(this, RESERVATIONKEY) {
4250 case a: Int =>
4351 a
4452 case _ =>
4553 0
4654 }
4755
4856
4957 func ValidateAndIncreaseReservedAmt (winAmt) = {
5058 let newReservedAmount = (ExtractReservedAmt() + winAmt)
5159 let balance = wavesBalance(this)
5260 if ((newReservedAmount > balance))
5361 then throw("Insufficient funds on Waves Rider account. Transaction was rejected for your safety.")
5462 else newReservedAmount
5563 }
5664
5765
5866 func FormatGameDataParam (p) = {
5967 let s = size(p)
6068 if ((s == 0))
6169 then throw("Parameter size must be greater then 0")
6270 else if ((s > 99))
6371 then throw("Parameter size must be less then 100")
6472 else if ((10 > s))
6573 then (("0" + toString(s)) + p)
6674 else (toString(s) + p)
6775 }
6876
6977
7078 func FormatGameDataStr (gameState,playerChoice,playerType,playerPubKey58,startedHeight,winAmt,randOrEmpty) = {
7179 let fullStateStr = ((((((((((FormatGameDataParam(gameState) + "_") + FormatGameDataParam(playerChoice)) + "_") + FormatGameDataParam(playerType)) + "_") + FormatGameDataParam(playerPubKey58)) + "_") + FormatGameDataParam(toString(startedHeight))) + "_") + FormatGameDataParam(toString(winAmt)))
7280 if ((randOrEmpty == ""))
7381 then fullStateStr
7482 else ((fullStateStr + "_") + FormatGameDataParam(randOrEmpty))
7583 }
7684
7785
7886 func RemoveUnderscoreIfPresent (remaining) = if ((size(remaining) > 0))
7987 then drop(remaining, 1)
8088 else remaining
8189
8290
8391 func ParseNextAttribute (remaining) = {
8492 let s = size(remaining)
8593 if ((s > 0))
8694 then {
8795 let nn = parseIntValue(take(remaining, 2))
8896 let v = take(drop(remaining, 2), nn)
8997 let tmpRemaining = drop(remaining, (nn + 2))
9098 let remainingState = RemoveUnderscoreIfPresent(tmpRemaining)
9199 [v, remainingState]
92100 }
93101 else throw("Empty string was passed into parseNextAttribute func")
94102 }
95103
96104
97105 func ParseGameRawDataStr (rawStateStr) = {
98106 let gameState = ParseNextAttribute(rawStateStr)
99107 let playerChoice = ParseNextAttribute(gameState[1])
100108 let type = ParseNextAttribute(playerChoice[1])
101109 let playerPubKey58 = ParseNextAttribute(type[1])
102110 let startedHeight = ParseNextAttribute(playerPubKey58[1])
103111 let winAmt = ParseNextAttribute(startedHeight[1])
104112 [gameState[0], playerChoice[0], type[0], playerPubKey58[0], startedHeight[0], winAmt[0]]
105113 }
106114
107115
108116 func ExtractGameDataList (gameId) = {
109117 let rawDataStr = match getString(this, gameId) {
110118 case str: String =>
111119 str
112120 case _ =>
113121 throw(("Couldn't find game by " + gameId))
114122 }
115123 ParseGameRawDataStr(rawDataStr)
116124 }
117125
118126
119127 func DecreaseReservedAmt (gameId,winAmt) = {
120128 let newReservedAmount = (ExtractReservedAmt() - winAmt)
121129 if ((0 > newReservedAmount))
122130 then throw("Invalid Dice Roller account state - reserved amount is less than 0")
123131 else DataEntry(RESERVATIONKEY, newReservedAmount)
124132 }
125133
126134
127135 func GenerateRandInt (gameId,rsaSign) = {
128136 let rsaSigValid = rsaVerify(SHA256, toBytes(gameId), rsaSign, RSAPUBLIC)
129137 if (rsaSigValid)
130138 then {
131139 let rand = (toInt(sha256(rsaSign)) % 100)
132140 if ((0 > rand))
133141 then ((-1 * rand) + 1)
134142 else (rand + 1)
135143 }
136144 else throw("Invalid RSA signature")
137145 }
138146
139147
140148 func RandToStr (r) = if (if ((r >= 1))
141149 then (100 >= r)
142150 else false)
143151 then toString(r)
144152 else throw(("Unsupported r parameter passed: expected=[1,...,100] actual=" + toString(r)))
145153
146154
147155 func WinScriptSet (gameId,playerAddress,winAmt,newGameDataStr) = {
148156 let tSetCommonData = [ScriptTransfer(playerAddress, winAmt, base58'4vPcbA5yiwpWBVPALPGXus6fNdGEuYTpe4hAeSxM9Kj4')]
149157 let writeDicePlay = WriteSet([DataEntry("Game Id", gameId), DataEntry("Player Address", toString(playerAddress))])
150158 ScriptResult(writeDicePlay, TransferSet(tSetCommonData))
151159 }
152160
153161
154162 func getMultiplier (type,playerPrediction) = {
155163 let prediction = 50
156164 if ((type == "Under"))
157165 then if ((prediction == 1))
158166 then 9850000
159167 else if ((prediction == 2))
160168 then 4925000
161169 else if ((prediction == 3))
162170 then 3283330
163171 else if ((prediction == 4))
164172 then 2462500
165173 else if ((prediction == 5))
166174 then 1970000
167175 else if ((prediction == 6))
168176 then 1641660
169177 else if ((prediction == 7))
170178 then 1407140
171179 else if ((prediction == 8))
172180 then 1231250
173181 else if ((prediction == 9))
174182 then 1094440
175183 else if ((prediction == 10))
176184 then 985000
177185 else if ((prediction == 11))
178186 then 895450
179187 else if ((prediction == 12))
180188 then 820830
181189 else if ((prediction == 13))
182190 then 757690
183191 else if ((prediction == 14))
184192 then 703570
185193 else if ((prediction == 15))
186194 then 656660
187195 else if ((prediction == 16))
188196 then 615620
189197 else if ((prediction == 17))
190198 then 579410
191199 else if ((prediction == 18))
192200 then 547220
193201 else if ((prediction == 19))
194202 then 518420
195203 else if ((prediction == 20))
196204 then 492500
197205 else if ((prediction == 21))
198206 then 469040
199207 else if ((prediction == 22))
200208 then 447720
201209 else if ((prediction == 23))
202210 then 428260
203211 else if ((prediction == 24))
204212 then 410410
205213 else if ((prediction == 25))
206214 then 394000
207215 else if ((prediction == 26))
208216 then 378840
209217 else if ((prediction == 27))
210218 then 364810
211219 else if ((prediction == 28))
212220 then 351780
213221 else if ((prediction == 29))
214222 then 339650
215223 else if ((prediction == 30))
216224 then 328330
217225 else if ((prediction == 31))
218226 then 317740
219227 else if ((prediction == 32))
220228 then 307810
221229 else if ((prediction == 33))
222230 then 298480
223231 else if ((prediction == 34))
224232 then 289700
225233 else if ((prediction == 35))
226234 then 281420
227235 else if ((prediction == 36))
228236 then 273610
229237 else if ((prediction == 37))
230238 then 259210
231239 else if ((prediction == 38))
232240 then 259210
233241 else if ((prediction == 39))
234242 then 252560
235243 else if ((prediction == 40))
236244 then 246250
237245 else if ((prediction == 41))
238246 then 240240
239247 else if ((prediction == 42))
240248 then 234520
241249 else if ((prediction == 43))
242250 then 229060
243251 else if ((prediction == 44))
244252 then 223860
245253 else if ((prediction == 45))
246254 then 218880
247255 else if ((prediction == 46))
248256 then 214130
249257 else if ((prediction == 47))
250258 then 209570
251259 else if ((prediction == 48))
252260 then 205200
253261 else if ((prediction == 49))
254262 then 201020
255263 else if ((prediction == 50))
256264 then 197000
257265 else if ((prediction == 51))
258266 then 193130
259267 else if ((prediction == 52))
260268 then 189420
261269 else if ((prediction == 53))
262270 then 185840
263271 else if ((prediction == 54))
264272 then 182400
265273 else if ((prediction == 55))
266274 then 179090
267275 else if ((prediction == 56))
268276 then 175890
269277 else if ((prediction == 57))
270278 then 172800
271279 else if ((prediction == 58))
272280 then 169820
273281 else if ((prediction == 59))
274282 then 166940
275283 else if ((prediction == 60))
276284 then 164160
277285 else if ((prediction == 61))
278286 then 161470
279287 else if ((prediction == 62))
280288 then 158870
281289 else if ((prediction == 63))
282290 then 156340
283291 else if ((prediction == 64))
284292 then 153900
285293 else if ((prediction == 65))
286294 then 151530
287295 else if ((prediction == 66))
288296 then 149240
289297 else if ((prediction == 67))
290298 then 147010
291299 else if ((prediction == 68))
292300 then 144850
293301 else if ((prediction == 69))
294302 then 142750
295303 else if ((prediction == 70))
296304 then 140710
297305 else if ((prediction == 71))
298306 then 138730
299307 else if ((prediction == 72))
300308 then 136800
301309 else if ((prediction == 73))
302310 then 134930
303311 else if ((prediction == 74))
304312 then 133100
305313 else if ((prediction == 75))
306314 then 131330
307315 else if ((prediction == 76))
308316 then 129600
309317 else if ((prediction == 77))
310318 then 127920
311319 else if ((prediction == 78))
312320 then 126280
313321 else if ((prediction == 79))
314322 then 124680
315323 else if ((prediction == 80))
316324 then 123120
317325 else if ((prediction == 81))
318326 then 121600
319327 else if ((prediction == 82))
320328 then 120120
321329 else if ((prediction == 83))
322330 then 118670
323331 else if ((prediction == 84))
324332 then 117260
325333 else if ((prediction == 85))
326334 then 115880
327335 else if ((prediction == 86))
328336 then 114530
329337 else if ((prediction == 87))
330338 then 113210
331339 else if ((prediction == 88))
332340 then 111930
333341 else if ((prediction == 89))
334342 then 110670
335343 else if ((prediction == 90))
336344 then 109440
337345 else if ((prediction == 91))
338346 then 108240
339347 else if ((prediction == 92))
340348 then 107060
341349 else if ((prediction == 93))
342350 then 105910
343351 else if ((prediction == 94))
344352 then 104780
345353 else if ((prediction == 95))
346354 then 103680
347355 else if ((prediction == 96))
348356 then 103680
349357 else 100000
350358 else if ((type == "Over"))
351359 then if ((prediction == 4))
352360 then 103680
353361 else if ((prediction == 5))
354362 then 103680
355363 else if ((prediction == 6))
356364 then 104780
357365 else if ((prediction == 7))
358366 then 105910
359367 else if ((prediction == 8))
360368 then 107060
361369 else if ((prediction == 9))
362370 then 108240
363371 else if ((prediction == 10))
364372 then 109440
365373 else if ((prediction == 11))
366374 then 110670
367375 else if ((prediction == 12))
368376 then 111930
369377 else if ((prediction == 13))
370378 then 113210
371379 else if ((prediction == 14))
372380 then 114530
373381 else if ((prediction == 15))
374382 then 115880
375383 else if ((prediction == 16))
376384 then 117260
377385 else if ((prediction == 17))
378386 then 118670
379387 else if ((prediction == 18))
380388 then 120120
381389 else if ((prediction == 19))
382390 then 121600
383391 else if ((prediction == 20))
384392 then 123120
385393 else if ((prediction == 21))
386394 then 124680
387395 else if ((prediction == 22))
388396 then 126280
389397 else if ((prediction == 23))
390398 then 127920
391399 else if ((prediction == 24))
392400 then 129600
393401 else if ((prediction == 25))
394402 then 131330
395403 else if ((prediction == 26))
396404 then 133100
397405 else if ((prediction == 27))
398406 then 134930
399407 else if ((prediction == 28))
400408 then 136800
401409 else if ((prediction == 29))
402410 then 138730
403411 else if ((prediction == 30))
404412 then 140710
405413 else if ((prediction == 31))
406414 then 142750
407415 else if ((prediction == 32))
408416 then 144850
409417 else if ((prediction == 33))
410418 then 147010
411419 else if ((prediction == 34))
412420 then 149240
413421 else if ((prediction == 35))
414422 then 151530
415423 else if ((prediction == 36))
416424 then 153900
417425 else if ((prediction == 37))
418426 then 156340
419427 else if ((prediction == 38))
420428 then 158870
421429 else if ((prediction == 39))
422430 then 161470
423431 else if ((prediction == 40))
424432 then 164160
425433 else if ((prediction == 41))
426434 then 166940
427435 else if ((prediction == 42))
428436 then 169820
429437 else if ((prediction == 43))
430438 then 172800
431439 else if ((prediction == 44))
432440 then 175890
433441 else if ((prediction == 45))
434442 then 179090
435443 else if ((prediction == 46))
436444 then 185840
437445 else if ((prediction == 47))
438446 then 185840
439447 else if ((prediction == 48))
440448 then 189420
441449 else if ((prediction == 49))
442450 then 193130
443451 else if ((prediction == 50))
444452 then 197000
445453 else if ((prediction == 51))
446454 then 201020
447455 else if ((prediction == 52))
448456 then 205200
449457 else if ((prediction == 53))
450458 then 209570
451459 else if ((prediction == 54))
452460 then 214130
453461 else if ((prediction == 55))
454462 then 218880
455463 else if ((prediction == 56))
456464 then 223860
457465 else if ((prediction == 57))
458466 then 229060
459467 else if ((prediction == 58))
460468 then 234520
461469 else if ((prediction == 59))
462470 then 240240
463471 else if ((prediction == 60))
464472 then 246250
465473 else if ((prediction == 61))
466474 then 252560
467475 else if ((prediction == 62))
468476 then 259210
469477 else if ((prediction == 63))
470478 then 259210
471479 else if ((prediction == 64))
472480 then 273610
473481 else if ((prediction == 65))
474482 then 281420
475483 else if ((prediction == 66))
476484 then 289700
477485 else if ((prediction == 67))
478486 then 298480
479487 else if ((prediction == 68))
480488 then 307810
481489 else if ((prediction == 69))
482490 then 317740
483491 else if ((prediction == 70))
484492 then 328330
485493 else if ((prediction == 71))
486494 then 339650
487495 else if ((prediction == 72))
488496 then 351780
489497 else if ((prediction == 73))
490498 then 364810
491499 else if ((prediction == 74))
492500 then 378840
493501 else if ((prediction == 75))
494502 then 394000
495503 else if ((prediction == 76))
496504 then 410410
497505 else if ((prediction == 77))
498506 then 428260
499507 else if ((prediction == 78))
500508 then 447720
501509 else if ((prediction == 79))
502510 then 469040
503511 else if ((prediction == 80))
504512 then 492500
505513 else if ((prediction == 81))
506514 then 518420
507515 else if ((prediction == 82))
508516 then 547220
509517 else if ((prediction == 83))
510518 then 579410
511519 else if ((prediction == 84))
512520 then 615620
513521 else if ((prediction == 85))
514522 then 656660
515523 else if ((prediction == 86))
516524 then 703570
517525 else if ((prediction == 87))
518526 then 757690
519527 else if ((prediction == 88))
520528 then 820830
521529 else if ((prediction == 89))
522530 then 895450
523531 else if ((prediction == 90))
524532 then 985000
525533 else if ((prediction == 91))
526534 then 1094440
527535 else if ((prediction == 92))
528536 then 1231250
529537 else if ((prediction == 93))
530538 then 1407140
531539 else if ((prediction == 94))
532540 then 1641660
533541 else if ((prediction == 95))
534542 then 1970000
535543 else if ((prediction == 96))
536544 then 2462500
537545 else if ((prediction == 97))
538546 then 3283330
539547 else if ((prediction == 98))
540548 then 4925000
541549 else if ((prediction == 99))
542550 then 9850000
543551 else 100000
544552 else 100000
545553 }
546554
547555
548556 func diceWin (type,prediction,number) = if ((type == "Under"))
549557 then if ((prediction >= number))
550558 then true
551559 else false
552560 else if ((type == "Over"))
553561 then if ((number >= prediction))
554562 then true
555563 else false
556564 else false
557565
558566
559567 @Callable(i)
560568 func playDice (type,prediction) = {
561569 let newGameNum = IncrementGameNum()
562570 let gameId = toBase58String(i.transactionId)
563571 let payment = extract(i.payment)
564572 let multi = getMultiplier(type, prediction)
565573 let winAmt = (((payment.amount * multi) / 100000) * (95 / 100))
566574 let txIdUsed = isDefined(getString(this, gameId))
567575 if (false)
568576 then throw("Payment should be in Wavesbet")
569577 else if (txIdUsed)
570578 then throw("Passed txId had been used before. Game aborted.")
571579 else {
572580 let playerPubKey58 = toBase58String(i.callerPublicKey)
573581 let gameDataStr = FormatGameDataStr(STATESUBMITTED, prediction, type, playerPubKey58, height, winAmt, "")
574582 ScriptResult(WriteSet([DataEntry(GAMESCOUNTERKEY, newGameNum), DataEntry(gameId, gameDataStr)]), TransferSet(nil))
575583 }
576584 }
577585
578586
579587
580588 @Callable(i)
581589 func withdraw (gameId,rsaSig) = {
582590 let gameDataList = ExtractGameDataList(gameId)
583591 let gameState = gameDataList[IdxGameState]
584592 let playerChoice = gameDataList[IdxPlayerChoice]
585593 let type = gameDataList[IdxType]
586594 let startedHeight = parseIntValue(gameDataList[IdxStartedHeight])
587595 let winAmt = parseIntValue(gameDataList[IdxWinAmt])
588596 let playerPubKey58 = gameDataList[IdxPlayerPubKey58]
589597 let playerAddress = addressFromPublicKey(fromBase58String(playerPubKey58))
590598 if ((gameState != STATESUBMITTED))
591599 then throw("Invalid game state for passed gameId")
592600 else {
593601 let rand = GenerateRandInt(gameId, rsaSig)
594602 let randStr = RandToStr(rand)
595603 if (diceWin(type, parseIntValue(playerChoice), rand))
596604 then {
597605 let newGameDataStr = FormatGameDataStr(STATEWON, playerChoice, type, playerPubKey58, startedHeight, winAmt, randStr)
598606 WinScriptSet(gameId, playerAddress, winAmt, newGameDataStr)
599607 }
600608 else {
601609 let newGameDataStr = FormatGameDataStr(STATELOST, playerChoice, type, playerPubKey58, startedHeight, winAmt, randStr)
602610 WriteSet([DataEntry(gameId, newGameDataStr)])
603611 }
604612 }
605613 }
606614
607615

github/deemru/w8io/c3f4982 
192.96 ms