tx · 7Bz7GmCtLyH1Vc2QgUpHMue8gqabjR8s9YDexhw9HJQr

3Mu8FKNn2fEuxsE5mVhCwDQ275Ygi3ejweU:  -0.01400000 Waves

2019.10.25 20:12 [735927] smart account 3Mu8FKNn2fEuxsE5mVhCwDQ275Ygi3ejweU > SELF 0.00000000 Waves

{ "type": 13, "id": "7Bz7GmCtLyH1Vc2QgUpHMue8gqabjR8s9YDexhw9HJQr", "fee": 1400000, "feeAssetId": null, "timestamp": 1572023615791, "version": 1, "sender": "3Mu8FKNn2fEuxsE5mVhCwDQ275Ygi3ejweU", "senderPublicKey": "6EzysHLfsAMmtxy8XtuFoQrCNTEkUdPSEzHYEwqpqSs3", "proofs": [ "zGUPG19fJVAx6AQxXzjK9sSq9i5zjqXi2SKs6wbEfm9YJCZKwuunUmvVdfVXTni8SJe5YiVxNtooBJwSSvH8pc3" ], "script": "base64:AAIDAAAAAAAAAA4IARIECgIICBIECgIIAgAAABwAAAAACVJTQVBVQkxJQwkAAlsAAAABAgAAAY9iYXNlNjQ6TUlJQklqQU5CZ2txaGtpRzl3MEJBUUVGQUFPQ0FROEFNSUlCQ2dLQ0FRRUFtcHVYY0kvbzRwSUI1eXd2OURPT0dhcFRCVXdSVmxNLzYrSDZoRmVsT1h0a3J3WS9ZSXRtUHhFRHB6N3JBZXJRUFFlOXREUEVhQXYvR25sRXp0eWJPRlhndTlEekRlOFlvTVJEMXZha2dvQWNvZ21iWTU4UUQ2S01qNUhrb1ZqL3lUTkljOXN6ajVxaElsckFkbWIzS0xMNmhRVTd5OCtKajY5QldWUHNhUWdrc3BTZGVZdGIxdEhRYzd0OTVuN09aNTZyMkE3RzMrYlFmNm5TTWtQa0FoSXJFcGJDbTU4b2lHQmN6ZFRkL0xxRlNWb3Rac2JMN1loNlNITGZuSGVEK1FnY2ZKcm5hbThPSE1HSkVKVFJYaklMZUhHamxSQ1A4b1ZwaW9IcnkxUzJ4UHg1c1Z6SW0yTU0rQ3pZZW5BR2xvMGoyNmF0QmhpVUxvVHVsd0QzcFFJREFRQUIAAAAAD0dBTUVTQ09VTlRFUktFWQIAAAAJJEdBTUVfTlVNAAAAAA5SRVNFUlZBVElPTktFWQIAAAAQJFJFU0VSVkVEX0FNT1VOVAAAAAAOU1RBVEVTVUJNSVRURUQCAAAACVNVQk1JVFRFRAAAAAAIU1RBVEVXT04CAAAAA1dPTgAAAAAJU1RBVEVMT1NUAgAAAARMT1NUAAAAAAxJZHhHYW1lU3RhdGUAAAAAAAAAAAAAAAAAD0lkeFBsYXllckNob2ljZQAAAAAAAAAAAQAAAAAHSWR4VHlwZQAAAAAAAAAAAgAAAAARSWR4UGxheWVyUHViS2V5NTgAAAAAAAAAAAMAAAAAEElkeFN0YXJ0ZWRIZWlnaHQAAAAAAAAAAAQAAAAACUlkeFdpbkFtdAAAAAAAAAAABQAAAAAOSWR4UmFuZE9yRW1wdHkAAAAAAAAAAAYBAAAAEEluY3JlbWVudEdhbWVOdW0AAAAABAAAAAdnYW1lTnVtBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMFAAAAD0dBTUVTQ09VTlRFUktFWQMJAAABAAAAAgUAAAAHJG1hdGNo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Cm5ld0dhbWVOdW0JAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAABmdhbWVJZAUAAAALZ2FtZURhdGFTdHIFAAAAA25pbAkBAAAAC1RyYW5zZmVyU2V0AAAAAQUAAAADbmlsAAAAAWkBAAAACHdpdGhkcmF3AAAAAgAAAAZnYW1lSWQAAAAGcnNhU2lnBAAAAAxnYW1lRGF0YUxpc3QJAQAAABNFeHRyYWN0R2FtZURhdGFMaXN0AAAAAQUAAAAGZ2FtZUlkBAAAAAlnYW1lU3RhdGUJAAGRAAAAAgUAAAAMZ2FtZURhdGFMaXN0BQAAAAxJZHhHYW1lU3RhdGUEAAAADHBsYXllckNob2ljZQkAAZEAAAACBQAAAAxnYW1lRGF0YUxpc3QFAAAAD0lkeFBsYXllckNob2ljZQQAAAAEdHlwZQkAAZEAAAACBQAAAAxnYW1lRGF0YUxpc3QFAAAAB0lkeFR5cGUEAAAADXN0YXJ0ZWRIZWlnaHQJAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAAxnYW1lRGF0YUxpc3QFAAAAEElkeFN0YXJ0ZWRIZWlnaHQEAAAABndpbkFtdAkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAADGdhbWVEYXRhTGlzdAUAAAAJSWR4V2luQW10BAAAAA5wbGF5ZXJQdWJLZXk1OAkAAZEAAAACBQAAAAxnYW1lRGF0YUxpc3QFAAAAEUlkeFBsYXllclB1YktleTU4BAAAAA1wbGF5ZXJBZGRyZXNzCQEAAAAUYWRkcmVzc0Zyb21QdWJsaWNLZXkAAAABCQACWQAAAAEFAAAADnBsYXllclB1YktleTU4AwkBAAAAAiE9AAAAAgUAAAAJZ2FtZVN0YXRlBQAAAA5TVEFURVNVQk1JVFRFRAkAAAIAAAABAgAAACRJbnZhbGlkIGdhbWUgc3RhdGUgZm9yIHBhc3NlZCBnYW1lSWQEAAAABHJhbmQJAQAAAA9HZW5lcmF0ZVJhbmRJbnQAAAACBQAAAAZnYW1lSWQFAAAABnJzYVNpZwQAAAAHcmFuZFN0cgkBAAAACVJhbmRUb1N0cgAAAAEFAAAABHJhbmQDCQEAAAAHZGljZVdpbgAAAAMFAAAABHR5cGUJAQAAAA1wYXJzZUludFZhbHVlAAAAAQUAAAAMcGxheWVyQ2hvaWNlBQAAAARyYW5kBAAAAA5uZXdHYW1lRGF0YVN0cgkBAAAAEUZvcm1hdEdhbWVEYXRhU3RyAAAABwUAAAAIU1RBVEVXT04FAAAADHBsYXllckNob2ljZQUAAAAEdHlwZQUAAAAOcGxheWVyUHViS2V5NTgFAAAADXN0YXJ0ZWRIZWlnaHQFAAAABndpbkFtdAUAAAAHcmFuZFN0cgkBAAAADFdpblNjcmlwdFNldAAAAAQFAAAABmdhbWVJZAUAAAANcGxheWVyQWRkcmVzcwUAAAAGd2luQW10BQAAAA5uZXdHYW1lRGF0YVN0cgQAAAAObmV3R2FtZURhdGFTdHIJAQAAABFGb3JtYXRHYW1lRGF0YVN0cgAAAAcFAAAACVNUQVRFTE9TVAUAAAAMcGxheWVyQ2hvaWNlBQAAAAR0eXBlBQAAAA5wbGF5ZXJQdWJLZXk1OAUAAAANc3RhcnRlZEhlaWdodAUAAAAGd2luQW10BQAAAAdyYW5kU3RyCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAAAZnYW1lSWQFAAAADm5ld0dhbWVEYXRhU3RyBQAAAANuaWwAAAAAjlddrQ==", "chainId": 84, "height": 735927, "spentComplexity": 0 } View: original | compacted Prev: FD2CHbRXiWMFK8Jekftzxgtw59YLi6NPfyFa5eDvhuBq Next: 2Z3BmVhVpYnS5sZZuucF9eNgWyUQ8sczLhHZs52DuWFa Diff:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let RSAPUBLIC = fromBase64String("base64:MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmOlRBTYEO3H7Y9rBmoFQ
5-Fn4392Px0Qw13DsdEhnzMH2cj6Y5ymPuCOLMNe5qrUzQl8oRLzIBzFVMZlwUYl2b
6-osrOIxQbYF7WVQWvoVxET1YIgDm3NzzOLA5uH7CKO0snshmMFCDOZEew41GjKh3P
7-gx+nbAguP9ZQPfqSafEmC3CN/4yDsJrKriRniZJo9jS/4LLsRKwB7HAZHzoF9LL7
8-tSZH3htaNGtbdTkxZ1TzST3Mb2VPSzsZvQDocXUVOmJOu0o29aOY+GkG/G4RCK0F
9-BWQHEUvC51TRDS5k8jad0O1MobjQc6b18d+fuoVFdNfZwGH+uFudtPG3UJTf2mkz
10-ZQIDAQAB")
11-
12-let rasTest = fromBase64String("base64:MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmOlRBTYEO3H7Y9rBmoFQ
13-Fn4392Px0Qw13DsdEhnzMH2cj6Y5ymPuCOLMNe5qrUzQl8oRLzIBzFVMZlwUYl2b
14-osrOIxQbYF7WVQWvoVxET1YIgDm3NzzOLA5uH7CKO0snshmMFCDOZEew41GjKh3P
15-gx+nbAguP9ZQPfqSafEmC3CN/4yDsJrKriRniZJo9jS/4LLsRKwB7HAZHzoF9LL7
16-tSZH3htaNGtbdTkxZ1TzST3Mb2VPSzsZvQDocXUVOmJOu0o29aOY+GkG/G4RCK0F
17-BWQHEUvC51TRDS5k8jad0O1MobjQc6b18d+fuoVFdNfZwGH+uFudtPG3UJTf2mkz
18-ZQIDAQAB")
4+let RSAPUBLIC = fromBase64String("base64:MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmpuXcI/o4pIB5ywv9DOOGapTBUwRVlM/6+H6hFelOXtkrwY/YItmPxEDpz7rAerQPQe9tDPEaAv/GnlEztybOFXgu9DzDe8YoMRD1vakgoAcogmbY58QD6KMj5HkoVj/yTNIc9szj5qhIlrAdmb3KLL6hQU7y8+Jj69BWVPsaQgkspSdeYtb1tHQc7t95n7OZ56r2A7G3+bQf6nSMkPkAhIrEpbCm58oiGBczdTd/LqFSVotZsbL7Yh6SHLfnHeD+QgcfJrnam8OHMGJEJTRXjILeHGjlRCP8oVpioHry1S2xPx5sVzIm2MM+CzYenAGlo0j26atBhiULoTulwD3pQIDAQAB")
195
206 let GAMESCOUNTERKEY = "$GAME_NUM"
217
139125
140126
141127 func GenerateRandInt (gameId,rsaSign) = {
142- let rsaSigValid = rsaVerify(SHA256, toBytes(gameId), rasTest, RSAPUBLIC)
128+ let rsaSigValid = rsaVerify(SHA256, toBytes(gameId), rsaSign, RSAPUBLIC)
143129 if (rsaSigValid)
144130 then {
145- let rand = (toInt(sha256(rasTest)) % 100)
131+ let rand = (toInt(sha256(rsaSign)) % 100)
146132 if ((0 > rand))
147133 then ((-1 * rand) + 1)
148134 else (rand + 1)
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let RSAPUBLIC = fromBase64String("base64:MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmOlRBTYEO3H7Y9rBmoFQ
5-Fn4392Px0Qw13DsdEhnzMH2cj6Y5ymPuCOLMNe5qrUzQl8oRLzIBzFVMZlwUYl2b
6-osrOIxQbYF7WVQWvoVxET1YIgDm3NzzOLA5uH7CKO0snshmMFCDOZEew41GjKh3P
7-gx+nbAguP9ZQPfqSafEmC3CN/4yDsJrKriRniZJo9jS/4LLsRKwB7HAZHzoF9LL7
8-tSZH3htaNGtbdTkxZ1TzST3Mb2VPSzsZvQDocXUVOmJOu0o29aOY+GkG/G4RCK0F
9-BWQHEUvC51TRDS5k8jad0O1MobjQc6b18d+fuoVFdNfZwGH+uFudtPG3UJTf2mkz
10-ZQIDAQAB")
11-
12-let rasTest = fromBase64String("base64:MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmOlRBTYEO3H7Y9rBmoFQ
13-Fn4392Px0Qw13DsdEhnzMH2cj6Y5ymPuCOLMNe5qrUzQl8oRLzIBzFVMZlwUYl2b
14-osrOIxQbYF7WVQWvoVxET1YIgDm3NzzOLA5uH7CKO0snshmMFCDOZEew41GjKh3P
15-gx+nbAguP9ZQPfqSafEmC3CN/4yDsJrKriRniZJo9jS/4LLsRKwB7HAZHzoF9LL7
16-tSZH3htaNGtbdTkxZ1TzST3Mb2VPSzsZvQDocXUVOmJOu0o29aOY+GkG/G4RCK0F
17-BWQHEUvC51TRDS5k8jad0O1MobjQc6b18d+fuoVFdNfZwGH+uFudtPG3UJTf2mkz
18-ZQIDAQAB")
4+let RSAPUBLIC = fromBase64String("base64:MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmpuXcI/o4pIB5ywv9DOOGapTBUwRVlM/6+H6hFelOXtkrwY/YItmPxEDpz7rAerQPQe9tDPEaAv/GnlEztybOFXgu9DzDe8YoMRD1vakgoAcogmbY58QD6KMj5HkoVj/yTNIc9szj5qhIlrAdmb3KLL6hQU7y8+Jj69BWVPsaQgkspSdeYtb1tHQc7t95n7OZ56r2A7G3+bQf6nSMkPkAhIrEpbCm58oiGBczdTd/LqFSVotZsbL7Yh6SHLfnHeD+QgcfJrnam8OHMGJEJTRXjILeHGjlRCP8oVpioHry1S2xPx5sVzIm2MM+CzYenAGlo0j26atBhiULoTulwD3pQIDAQAB")
195
206 let GAMESCOUNTERKEY = "$GAME_NUM"
217
228 let RESERVATIONKEY = "$RESERVED_AMOUNT"
239
2410 let STATESUBMITTED = "SUBMITTED"
2511
2612 let STATEWON = "WON"
2713
2814 let STATELOST = "LOST"
2915
3016 let IdxGameState = 0
3117
3218 let IdxPlayerChoice = 1
3319
3420 let IdxType = 2
3521
3622 let IdxPlayerPubKey58 = 3
3723
3824 let IdxStartedHeight = 4
3925
4026 let IdxWinAmt = 5
4127
4228 let IdxRandOrEmpty = 6
4329
4430 func IncrementGameNum () = {
4531 let gameNum = match getInteger(this, GAMESCOUNTERKEY) {
4632 case num: Int =>
4733 num
4834 case _ =>
4935 0
5036 }
5137 (gameNum + 1)
5238 }
5339
5440
5541 func ExtractReservedAmt () = match getInteger(this, RESERVATIONKEY) {
5642 case a: Int =>
5743 a
5844 case _ =>
5945 0
6046 }
6147
6248
6349 func ValidateAndIncreaseReservedAmt (winAmt) = {
6450 let newReservedAmount = (ExtractReservedAmt() + winAmt)
6551 let balance = wavesBalance(this)
6652 if ((newReservedAmount > balance))
6753 then throw("Insufficient funds on Waves Rider account. Transaction was rejected for your safety.")
6854 else newReservedAmount
6955 }
7056
7157
7258 func FormatGameDataParam (p) = {
7359 let s = size(p)
7460 if ((s == 0))
7561 then throw("Parameter size must be greater then 0")
7662 else if ((s > 99))
7763 then throw("Parameter size must be less then 100")
7864 else if ((10 > s))
7965 then (("0" + toString(s)) + p)
8066 else (toString(s) + p)
8167 }
8268
8369
8470 func FormatGameDataStr (gameState,playerChoice,playerType,playerPubKey58,startedHeight,winAmt,randOrEmpty) = {
8571 let fullStateStr = ((((((((((FormatGameDataParam(gameState) + "_") + FormatGameDataParam(playerChoice)) + "_") + FormatGameDataParam(playerType)) + "_") + FormatGameDataParam(playerPubKey58)) + "_") + FormatGameDataParam(toString(startedHeight))) + "_") + FormatGameDataParam(toString(winAmt)))
8672 if ((randOrEmpty == ""))
8773 then fullStateStr
8874 else ((fullStateStr + "_") + FormatGameDataParam(randOrEmpty))
8975 }
9076
9177
9278 func RemoveUnderscoreIfPresent (remaining) = if ((size(remaining) > 0))
9379 then drop(remaining, 1)
9480 else remaining
9581
9682
9783 func ParseNextAttribute (remaining) = {
9884 let s = size(remaining)
9985 if ((s > 0))
10086 then {
10187 let nn = parseIntValue(take(remaining, 2))
10288 let v = take(drop(remaining, 2), nn)
10389 let tmpRemaining = drop(remaining, (nn + 2))
10490 let remainingState = RemoveUnderscoreIfPresent(tmpRemaining)
10591 [v, remainingState]
10692 }
10793 else throw("Empty string was passed into parseNextAttribute func")
10894 }
10995
11096
11197 func ParseGameRawDataStr (rawStateStr) = {
11298 let gameState = ParseNextAttribute(rawStateStr)
11399 let playerChoice = ParseNextAttribute(gameState[1])
114100 let type = ParseNextAttribute(playerChoice[1])
115101 let playerPubKey58 = ParseNextAttribute(type[1])
116102 let startedHeight = ParseNextAttribute(playerPubKey58[1])
117103 let winAmt = ParseNextAttribute(startedHeight[1])
118104 [gameState[0], playerChoice[0], type[0], playerPubKey58[0], startedHeight[0], winAmt[0]]
119105 }
120106
121107
122108 func ExtractGameDataList (gameId) = {
123109 let rawDataStr = match getString(this, gameId) {
124110 case str: String =>
125111 str
126112 case _ =>
127113 throw(("Couldn't find game by " + gameId))
128114 }
129115 ParseGameRawDataStr(rawDataStr)
130116 }
131117
132118
133119 func DecreaseReservedAmt (gameId,winAmt) = {
134120 let newReservedAmount = (ExtractReservedAmt() - winAmt)
135121 if ((0 > newReservedAmount))
136122 then throw("Invalid Dice Roller account state - reserved amount is less than 0")
137123 else DataEntry(RESERVATIONKEY, newReservedAmount)
138124 }
139125
140126
141127 func GenerateRandInt (gameId,rsaSign) = {
142- let rsaSigValid = rsaVerify(SHA256, toBytes(gameId), rasTest, RSAPUBLIC)
128+ let rsaSigValid = rsaVerify(SHA256, toBytes(gameId), rsaSign, RSAPUBLIC)
143129 if (rsaSigValid)
144130 then {
145- let rand = (toInt(sha256(rasTest)) % 100)
131+ let rand = (toInt(sha256(rsaSign)) % 100)
146132 if ((0 > rand))
147133 then ((-1 * rand) + 1)
148134 else (rand + 1)
149135 }
150136 else throw("Invalid RSA signature")
151137 }
152138
153139
154140 func RandToStr (r) = if (if ((r >= 1))
155141 then (100 >= r)
156142 else false)
157143 then toString(r)
158144 else throw(("Unsupported r parameter passed: expected=[1,...,100] actual=" + toString(r)))
159145
160146
161147 func WinScriptSet (gameId,playerAddress,winAmt,newGameDataStr) = {
162148 let tSetCommonData = [ScriptTransfer(playerAddress, winAmt, base58'4vPcbA5yiwpWBVPALPGXus6fNdGEuYTpe4hAeSxM9Kj4')]
163149 let writeDicePlay = WriteSet([DataEntry("Game Id", gameId), DataEntry("Player Address", toString(playerAddress))])
164150 ScriptResult(writeDicePlay, TransferSet(tSetCommonData))
165151 }
166152
167153
168154 func getMultiplier (type,playerPrediction) = {
169155 let prediction = 50
170156 if ((type == "Under"))
171157 then if ((prediction == 1))
172158 then 9850000
173159 else if ((prediction == 2))
174160 then 4925000
175161 else if ((prediction == 3))
176162 then 3283330
177163 else if ((prediction == 4))
178164 then 2462500
179165 else if ((prediction == 5))
180166 then 1970000
181167 else if ((prediction == 6))
182168 then 1641660
183169 else if ((prediction == 7))
184170 then 1407140
185171 else if ((prediction == 8))
186172 then 1231250
187173 else if ((prediction == 9))
188174 then 1094440
189175 else if ((prediction == 10))
190176 then 985000
191177 else if ((prediction == 11))
192178 then 895450
193179 else if ((prediction == 12))
194180 then 820830
195181 else if ((prediction == 13))
196182 then 757690
197183 else if ((prediction == 14))
198184 then 703570
199185 else if ((prediction == 15))
200186 then 656660
201187 else if ((prediction == 16))
202188 then 615620
203189 else if ((prediction == 17))
204190 then 579410
205191 else if ((prediction == 18))
206192 then 547220
207193 else if ((prediction == 19))
208194 then 518420
209195 else if ((prediction == 20))
210196 then 492500
211197 else if ((prediction == 21))
212198 then 469040
213199 else if ((prediction == 22))
214200 then 447720
215201 else if ((prediction == 23))
216202 then 428260
217203 else if ((prediction == 24))
218204 then 410410
219205 else if ((prediction == 25))
220206 then 394000
221207 else if ((prediction == 26))
222208 then 378840
223209 else if ((prediction == 27))
224210 then 364810
225211 else if ((prediction == 28))
226212 then 351780
227213 else if ((prediction == 29))
228214 then 339650
229215 else if ((prediction == 30))
230216 then 328330
231217 else if ((prediction == 31))
232218 then 317740
233219 else if ((prediction == 32))
234220 then 307810
235221 else if ((prediction == 33))
236222 then 298480
237223 else if ((prediction == 34))
238224 then 289700
239225 else if ((prediction == 35))
240226 then 281420
241227 else if ((prediction == 36))
242228 then 273610
243229 else if ((prediction == 37))
244230 then 259210
245231 else if ((prediction == 38))
246232 then 259210
247233 else if ((prediction == 39))
248234 then 252560
249235 else if ((prediction == 40))
250236 then 246250
251237 else if ((prediction == 41))
252238 then 240240
253239 else if ((prediction == 42))
254240 then 234520
255241 else if ((prediction == 43))
256242 then 229060
257243 else if ((prediction == 44))
258244 then 223860
259245 else if ((prediction == 45))
260246 then 218880
261247 else if ((prediction == 46))
262248 then 214130
263249 else if ((prediction == 47))
264250 then 209570
265251 else if ((prediction == 48))
266252 then 205200
267253 else if ((prediction == 49))
268254 then 201020
269255 else if ((prediction == 50))
270256 then 197000
271257 else if ((prediction == 51))
272258 then 193130
273259 else if ((prediction == 52))
274260 then 189420
275261 else if ((prediction == 53))
276262 then 185840
277263 else if ((prediction == 54))
278264 then 182400
279265 else if ((prediction == 55))
280266 then 179090
281267 else if ((prediction == 56))
282268 then 175890
283269 else if ((prediction == 57))
284270 then 172800
285271 else if ((prediction == 58))
286272 then 169820
287273 else if ((prediction == 59))
288274 then 166940
289275 else if ((prediction == 60))
290276 then 164160
291277 else if ((prediction == 61))
292278 then 161470
293279 else if ((prediction == 62))
294280 then 158870
295281 else if ((prediction == 63))
296282 then 156340
297283 else if ((prediction == 64))
298284 then 153900
299285 else if ((prediction == 65))
300286 then 151530
301287 else if ((prediction == 66))
302288 then 149240
303289 else if ((prediction == 67))
304290 then 147010
305291 else if ((prediction == 68))
306292 then 144850
307293 else if ((prediction == 69))
308294 then 142750
309295 else if ((prediction == 70))
310296 then 140710
311297 else if ((prediction == 71))
312298 then 138730
313299 else if ((prediction == 72))
314300 then 136800
315301 else if ((prediction == 73))
316302 then 134930
317303 else if ((prediction == 74))
318304 then 133100
319305 else if ((prediction == 75))
320306 then 131330
321307 else if ((prediction == 76))
322308 then 129600
323309 else if ((prediction == 77))
324310 then 127920
325311 else if ((prediction == 78))
326312 then 126280
327313 else if ((prediction == 79))
328314 then 124680
329315 else if ((prediction == 80))
330316 then 123120
331317 else if ((prediction == 81))
332318 then 121600
333319 else if ((prediction == 82))
334320 then 120120
335321 else if ((prediction == 83))
336322 then 118670
337323 else if ((prediction == 84))
338324 then 117260
339325 else if ((prediction == 85))
340326 then 115880
341327 else if ((prediction == 86))
342328 then 114530
343329 else if ((prediction == 87))
344330 then 113210
345331 else if ((prediction == 88))
346332 then 111930
347333 else if ((prediction == 89))
348334 then 110670
349335 else if ((prediction == 90))
350336 then 109440
351337 else if ((prediction == 91))
352338 then 108240
353339 else if ((prediction == 92))
354340 then 107060
355341 else if ((prediction == 93))
356342 then 105910
357343 else if ((prediction == 94))
358344 then 104780
359345 else if ((prediction == 95))
360346 then 103680
361347 else if ((prediction == 96))
362348 then 103680
363349 else 100000
364350 else if ((type == "Over"))
365351 then if ((prediction == 4))
366352 then 103680
367353 else if ((prediction == 5))
368354 then 103680
369355 else if ((prediction == 6))
370356 then 104780
371357 else if ((prediction == 7))
372358 then 105910
373359 else if ((prediction == 8))
374360 then 107060
375361 else if ((prediction == 9))
376362 then 108240
377363 else if ((prediction == 10))
378364 then 109440
379365 else if ((prediction == 11))
380366 then 110670
381367 else if ((prediction == 12))
382368 then 111930
383369 else if ((prediction == 13))
384370 then 113210
385371 else if ((prediction == 14))
386372 then 114530
387373 else if ((prediction == 15))
388374 then 115880
389375 else if ((prediction == 16))
390376 then 117260
391377 else if ((prediction == 17))
392378 then 118670
393379 else if ((prediction == 18))
394380 then 120120
395381 else if ((prediction == 19))
396382 then 121600
397383 else if ((prediction == 20))
398384 then 123120
399385 else if ((prediction == 21))
400386 then 124680
401387 else if ((prediction == 22))
402388 then 126280
403389 else if ((prediction == 23))
404390 then 127920
405391 else if ((prediction == 24))
406392 then 129600
407393 else if ((prediction == 25))
408394 then 131330
409395 else if ((prediction == 26))
410396 then 133100
411397 else if ((prediction == 27))
412398 then 134930
413399 else if ((prediction == 28))
414400 then 136800
415401 else if ((prediction == 29))
416402 then 138730
417403 else if ((prediction == 30))
418404 then 140710
419405 else if ((prediction == 31))
420406 then 142750
421407 else if ((prediction == 32))
422408 then 144850
423409 else if ((prediction == 33))
424410 then 147010
425411 else if ((prediction == 34))
426412 then 149240
427413 else if ((prediction == 35))
428414 then 151530
429415 else if ((prediction == 36))
430416 then 153900
431417 else if ((prediction == 37))
432418 then 156340
433419 else if ((prediction == 38))
434420 then 158870
435421 else if ((prediction == 39))
436422 then 161470
437423 else if ((prediction == 40))
438424 then 164160
439425 else if ((prediction == 41))
440426 then 166940
441427 else if ((prediction == 42))
442428 then 169820
443429 else if ((prediction == 43))
444430 then 172800
445431 else if ((prediction == 44))
446432 then 175890
447433 else if ((prediction == 45))
448434 then 179090
449435 else if ((prediction == 46))
450436 then 185840
451437 else if ((prediction == 47))
452438 then 185840
453439 else if ((prediction == 48))
454440 then 189420
455441 else if ((prediction == 49))
456442 then 193130
457443 else if ((prediction == 50))
458444 then 197000
459445 else if ((prediction == 51))
460446 then 201020
461447 else if ((prediction == 52))
462448 then 205200
463449 else if ((prediction == 53))
464450 then 209570
465451 else if ((prediction == 54))
466452 then 214130
467453 else if ((prediction == 55))
468454 then 218880
469455 else if ((prediction == 56))
470456 then 223860
471457 else if ((prediction == 57))
472458 then 229060
473459 else if ((prediction == 58))
474460 then 234520
475461 else if ((prediction == 59))
476462 then 240240
477463 else if ((prediction == 60))
478464 then 246250
479465 else if ((prediction == 61))
480466 then 252560
481467 else if ((prediction == 62))
482468 then 259210
483469 else if ((prediction == 63))
484470 then 259210
485471 else if ((prediction == 64))
486472 then 273610
487473 else if ((prediction == 65))
488474 then 281420
489475 else if ((prediction == 66))
490476 then 289700
491477 else if ((prediction == 67))
492478 then 298480
493479 else if ((prediction == 68))
494480 then 307810
495481 else if ((prediction == 69))
496482 then 317740
497483 else if ((prediction == 70))
498484 then 328330
499485 else if ((prediction == 71))
500486 then 339650
501487 else if ((prediction == 72))
502488 then 351780
503489 else if ((prediction == 73))
504490 then 364810
505491 else if ((prediction == 74))
506492 then 378840
507493 else if ((prediction == 75))
508494 then 394000
509495 else if ((prediction == 76))
510496 then 410410
511497 else if ((prediction == 77))
512498 then 428260
513499 else if ((prediction == 78))
514500 then 447720
515501 else if ((prediction == 79))
516502 then 469040
517503 else if ((prediction == 80))
518504 then 492500
519505 else if ((prediction == 81))
520506 then 518420
521507 else if ((prediction == 82))
522508 then 547220
523509 else if ((prediction == 83))
524510 then 579410
525511 else if ((prediction == 84))
526512 then 615620
527513 else if ((prediction == 85))
528514 then 656660
529515 else if ((prediction == 86))
530516 then 703570
531517 else if ((prediction == 87))
532518 then 757690
533519 else if ((prediction == 88))
534520 then 820830
535521 else if ((prediction == 89))
536522 then 895450
537523 else if ((prediction == 90))
538524 then 985000
539525 else if ((prediction == 91))
540526 then 1094440
541527 else if ((prediction == 92))
542528 then 1231250
543529 else if ((prediction == 93))
544530 then 1407140
545531 else if ((prediction == 94))
546532 then 1641660
547533 else if ((prediction == 95))
548534 then 1970000
549535 else if ((prediction == 96))
550536 then 2462500
551537 else if ((prediction == 97))
552538 then 3283330
553539 else if ((prediction == 98))
554540 then 4925000
555541 else if ((prediction == 99))
556542 then 9850000
557543 else 100000
558544 else 100000
559545 }
560546
561547
562548 func diceWin (type,prediction,number) = if ((type == "Under"))
563549 then if ((prediction >= number))
564550 then true
565551 else false
566552 else if ((type == "Over"))
567553 then if ((number >= prediction))
568554 then true
569555 else false
570556 else false
571557
572558
573559 @Callable(i)
574560 func playDice (type,prediction) = {
575561 let newGameNum = IncrementGameNum()
576562 let gameId = toBase58String(i.transactionId)
577563 let payment = extract(i.payment)
578564 let multi = getMultiplier(type, prediction)
579565 let winAmt = (((payment.amount * multi) / 100000) * (95 / 100))
580566 let txIdUsed = isDefined(getString(this, gameId))
581567 if (false)
582568 then throw("Payment should be in Wavesbet")
583569 else if (txIdUsed)
584570 then throw("Passed txId had been used before. Game aborted.")
585571 else {
586572 let playerPubKey58 = toBase58String(i.callerPublicKey)
587573 let gameDataStr = FormatGameDataStr(STATESUBMITTED, prediction, type, playerPubKey58, height, winAmt, "")
588574 ScriptResult(WriteSet([DataEntry(GAMESCOUNTERKEY, newGameNum), DataEntry(gameId, gameDataStr)]), TransferSet(nil))
589575 }
590576 }
591577
592578
593579
594580 @Callable(i)
595581 func withdraw (gameId,rsaSig) = {
596582 let gameDataList = ExtractGameDataList(gameId)
597583 let gameState = gameDataList[IdxGameState]
598584 let playerChoice = gameDataList[IdxPlayerChoice]
599585 let type = gameDataList[IdxType]
600586 let startedHeight = parseIntValue(gameDataList[IdxStartedHeight])
601587 let winAmt = parseIntValue(gameDataList[IdxWinAmt])
602588 let playerPubKey58 = gameDataList[IdxPlayerPubKey58]
603589 let playerAddress = addressFromPublicKey(fromBase58String(playerPubKey58))
604590 if ((gameState != STATESUBMITTED))
605591 then throw("Invalid game state for passed gameId")
606592 else {
607593 let rand = GenerateRandInt(gameId, rsaSig)
608594 let randStr = RandToStr(rand)
609595 if (diceWin(type, parseIntValue(playerChoice), rand))
610596 then {
611597 let newGameDataStr = FormatGameDataStr(STATEWON, playerChoice, type, playerPubKey58, startedHeight, winAmt, randStr)
612598 WinScriptSet(gameId, playerAddress, winAmt, newGameDataStr)
613599 }
614600 else {
615601 let newGameDataStr = FormatGameDataStr(STATELOST, playerChoice, type, playerPubKey58, startedHeight, winAmt, randStr)
616602 WriteSet([DataEntry(gameId, newGameDataStr)])
617603 }
618604 }
619605 }
620606
621607

github/deemru/w8io/c3f4982 
87.24 ms