tx · EQVjei133Lh1BXHhxFChte2tzA5iGpPyhkhbGrAFwL9j

3Muyzdmm3UXRnExyAHEtqcWcaUn8VLhT8TE:  -0.01400000 Waves

2019.11.02 01:53 [746420] smart account 3Muyzdmm3UXRnExyAHEtqcWcaUn8VLhT8TE > SELF 0.00000000 Waves

{ "type": 13, "id": "EQVjei133Lh1BXHhxFChte2tzA5iGpPyhkhbGrAFwL9j", "fee": 1400000, "feeAssetId": null, "timestamp": 1572648814755, "version": 1, "sender": "3Muyzdmm3UXRnExyAHEtqcWcaUn8VLhT8TE", "senderPublicKey": "4gu3haCbomZgQGdumDcQqrwBjbvC8H8xMwtadJSpjzSj", "proofs": [ "FfygcG14XXNkguTyyy8s4fY7ZgGRyamY3dZhAWvqAM8nfX3wTBgEnKqjrQJVmdiCACjsxPop9yfjzJHKoZF4isV" ], "script": "base64:AAIDAAAAAAAAAA4IARIECgIIARIECgIIAgAAACkAAAAACVJTQVBVQkxJQwkAAlsAAAABAgAAAY9iYXNlNjQ6TUlJQklqQU5CZ2txaGtpRzl3MEJBUUVGQUFPQ0FROEFNSUlCQ2dLQ0FRRUFnNGRBUjZYYkJEQVM5aHIvRWozZEp2NkZmYzQ2NngvbU9HTVdVM2xyQUJzM3FhOEJIbXVKR25rZmJwRWYydkF3WVRPV1B2dnpmTTEwT0JiZmxvU3lxM2M5TUt2eVRlMWx1QkxHcVc0dlpVWEl5dlNnejFsaXlVVmVmSVF5M2R5RjlqYmVUWmJDMGJiY1QvN08zREVMKzAxejZBK3JEQ2FjU1owbEdvbFNRNkFuaEx4eklrVnBPUUpickJtQyt4K1p1WlBDTVd6SnluZDVhZU9uN2phai9ta1JWeXhlNmcvME9oV3o0TmlpWlhldU1SQis4bUt5MGZXRC9VbElsWldIc0FTMlptcmtYS3FqTHEwLzB3cjhJTEprem5qU3Fkbkk1SWJqZzN1UXJqLzRBTitpOXIyOGFRNzMvWmtQdFk1U2J3MEFPaUFCQnU3Z0htcTlheVZ4WlFJREFRQUIAAAAAD0dBTUVTQ09VTlRFUktFWQIAAAAJJEdBTUVfTlVNAAAAAA5SRVNFUlZBVElPTktFWQIAAAAQJFJFU0VSVkVEX0FNT1VOVAAAAAAEV0JFVAEAAAAghrQ2qHjTDszY8BetSy4sBB8Hn7rKuRapStdvJa2b0HYAAAAADldBTExFVFdBVkVTQkVUCQEAAAAHQWRkcmVzcwAAAAEBAAAAGgFULxHweE6v1pOfqW4iK2a1H7JT13jPO2j7AAAAAAxXQUxMRVRNQ0FGRUUJAQAAAAdBZGRyZXNzAAAAAQEAAAAaAVQvEfB4Tq/Wk5+pbiIrZrUfslPXeM87aPsAAAAAB1dBVkVMRVQAAAAAAAX14QAAAAAAC0ZFRVdBVkVTQkVUAAAAAAAAAAAEAAAAAAlGRUVNQ0FGRUUAAAAAAAAAAAIAAAAABEZFRVMJAABkAAAAAgUAAAALRkVFV0FWRVNCRVQFAAAACUZFRU1DQUZFRQAAAAAOU1RBVEVTVUJNSVRURUQCAAAACVNVQk1JVFRFRAAAAAAIU1RBVEVXT04CAAAAA1dPTgAAAAAJU1RBVEVMT1NUAgAAAARMT1NU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ZGljdGlvbgAAAAAAAAAAKQAAAAAAAAOqcAMJAAAAAAAAAgUAAAAKcHJlZGljdGlvbgAAAAAAAAAAKgAAAAAAAAOUGAMJAAAAAAAAAgUAAAAKcHJlZGljdGlvbgAAAAAAAAAAKwAAAAAAAAN+xAMJAAAAAAAAAgUAAAAKcHJlZGljdGlvbgAAAAAAAAAALAAAAAAAAANqdAMJAAAAAAAAAgUAAAAKcHJlZGljdGlvbgAAAAAAAAAALQAAAAAAAANXAAMJAAAAAAAAAgUAAAAKcHJlZGljdGlvbgAAAAAAAAAALgAAAAAAAANEcgMJAAAAAAAAAgUAAAAKcHJlZGljdGlvbgAAAAAAAAAALwAAAAAAAAMyogMJAAAAAAAAAgUAAAAKcHJlZGljdGlvbgAAAAAAAAAAMAAAAAAAAAMhkAMJAAAAAAAAAgUAAAAKcHJlZGljdGlvbgAAAAAAAAAAMQAAAAAAAAMRPAMJAAAAAAAAAgUAAAAKcHJlZGljdGlvbgAAAAAAAAAAMgAAAAAAAAMBiAMJAAAAAAAAAgUAAAAKcHJlZGljdGlvbgAAAAAAAAAAMwAAAAAAAALyagMJAAAAAAAAAgUAAAAKcHJlZGljdGlvbgAAAAAAAAAANAAAAAAAAALj7AMJAAAAAAAAAgUAAAAKcHJlZGljdGlvbgAAAAAAAAAANQAAAAAAAALV8AMJAAAAAAAAAgUAAAAKcHJlZGljdGlvbgAAAAAAAAAANgAAAAAAAALIgAMJAAAAAAAAAgUAAAAKcHJlZGljdGlvbgAAAAAAAAAANwAAAAAAAAK7kgMJAAAAAAAAAgUAAAAKcHJlZGljdGlvbgAAAAAAAAAAOAAAAAAAAAKvEgMJAAAAAAAAAgUAAAAKcHJlZGljdGlvbgAAAAAAAAAAOQAAAAAAAAKjAAMJAAAAAAAAAgUAAAAKcHJlZGljdGlvbgAAAAAAAAAAOgAAAAAAAAKXXAMJAAAAAAAAAgUAAAAKcHJlZGljdGlvbgAAAAAAAAAAOwAAAAAAAAKMHAMJAAAAAAAAAgUAAAAKcHJlZGljdGlvbgAAAAAAAAAAPAAAAAAAAAKBQAMJAAAAAAAAAgUAAAAKcHJlZGljdGlvbgAAAAAAAAAAPQAAAAAAAAJ2vgMJAAAAAAAAAgUAAAAKcHJlZGljdGlvbgAAAAAAAAAAPgAA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c3QgYmUgaW4gV2F2ZXMuIEdhbWUgYWJvcnRlZC4DBQAAAApnYW1lSWRVc2VkCQAAAgAAAAECAAAAMVBhc3NlZCBnYW1lSWQgaGFkIGJlZW4gdXNlZCBiZWZvcmUuIEdhbWUgYWJvcnRlZC4EAAAACm5ld0dhbWVOdW0JAQAAABBJbmNyZW1lbnRHYW1lTnVtAAAAAAQAAAAOcGxheWVyUHViS2V5NTgJAAJYAAAAAQgFAAAAAWkAAAAPY2FsbGVyUHVibGljS2V5BAAAAAtnYW1lRGF0YVN0cgkBAAAAEUZvcm1hdEdhbWVEYXRhU3RyAAAABgUAAAAOU1RBVEVTVUJNSVRURUQFAAAACnByZWRpY3Rpb24FAAAACHJvbGxUeXBlBQAAAA5wbGF5ZXJQdWJLZXk1OAUAAAAGd2luQW10AgAAAAAJAQAAAAxTY3JpcHRSZXN1bHQAAAACCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAAA5SRVNFUlZBVElPTktFWQkBAAAAHlZhbGlkYXRlQW5kSW5jcmVhc2VSZXNlcnZlZEFtdAAAAAEFAAAABndpbkFtdAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAPR0FNRVNDT1VOVEVSS0VZBQAAAApuZXdHYW1lTnVtCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAAAZnYW1lSWQFAAAAC2dhbWVEYXRhU3RyBQAAAANuaWwJAQAAAAtUcmFuc2ZlclNldAAAAAEJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwUAAAAOV0FMTEVUV0FWRVNCRVQJAABpAAAAAgkAAGgAAAACCAUAAAAHcGF5bWVudAAAAAZhbW91bnQFAAAAC0ZFRVdBVkVTQkVUAAAAAAAAAABkBQAAAARXQkVUCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMFAAAADFdBTExFVE1DQUZFRQkAAGkAAAACCQAAaAAAAAIIBQAAAAdwYXltZW50AAAABmFtb3VudAUAAAAJRkVFTUNBRkVFAAAAAAAAAABkBQAAAARXQkVUBQAAAANuaWwAAAABaQEAAAAId2l0aGRyYXcAAAACAAAABmdhbWVJZAAAAAZyc2FTaWcEAAAADGdhbWVEYXRhTGlzdAkBAAAAE0V4dHJhY3RHYW1lRGF0YUxpc3QAAAABBQAAAAZnYW1lSWQEAAAACWdhbWVTdGF0ZQkAAZEAAAACBQAAAAxnYW1lRGF0YUxpc3QFAAAADElkeEdhbWVTdGF0ZQQAAAAKcHJlZGljdGlvbgkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAADGdhbWVEYXRhTGlzdAUAAAANSWR4UHJlZGljdGlvbgQAAAAIcm9sbFR5cGUJAAGRAAAAAgUAAAAMZ2FtZURhdGFMaXN0BQAAAAdJZHhUeXBlBAAAAAZ3aW5BbXQJAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAAxnYW1lRGF0YUxpc3QFAAAACUlkeFdpbkFtdAQAAAAOcGxheWVyUHViS2V5NTgJAAGRAAAAAgUAAAAMZ2FtZURhdGFMaXN0BQAAABFJZHhQbGF5ZXJQdWJLZXk1OAQAAAANcGxheWVyQWRkcmVzcwkBAAAAFGFkZHJlc3NGcm9tUHVibGljS2V5AAAAAQkAAlkAAAABBQAAAA5wbGF5ZXJQdWJLZXk1OAQAAAARZGVjcmVhc2VkUmVzZXJ2ZXMJAQAAABNEZWNyZWFzZVJlc2VydmVkQW10AAAAAgUAAAAGZ2FtZUlkBQAAAAZ3aW5BbXQDCQEAAAACIT0AAAACBQAAAAlnYW1lU3RhdGUFAAAADlNUQVRFU1VCTUlUVEVECQAAAgAAAAECAAAAM0ludmFsaWQgZ2FtZSBzdGF0ZSBmb3IgcGFzc2VkIGdhbWVJZC4gR2FtZSBhYm9ydGVkLgQAAAAEcmFuZAkBAAAAD0dlbmVyYXRlUmFuZEludAAAAAIFAAAABmdhbWVJZAUAAAAGcnNhU2lnBAAAAAdyYW5kU3RyCQEAAAAJUmFuZFRvU3RyAAAAAQUAAAAEcmFuZAMJAQAAAAdkaWNlV2luAAAAAwUAAAAIcm9sbFR5cGUFAAAACnByZWRpY3Rpb24FAAAABHJhbmQEAAAADm5ld0dhbWVEYXRhU3RyCQEAAAARRm9ybWF0R2FtZURhdGFTdHIAAAAGBQAAAAhTVEFURVdPTgUAAAAKcHJlZGljdGlvbgUAAAAIcm9sbFR5cGUFAAAADnBsYXllclB1YktleTU4BQAAAAZ3aW5BbXQFAAAAB3JhbmRTdHIJAQAAAAxXaW5TY3JpcHRTZXQAAAAFBQAAAAZnYW1lSWQFAAAADXBsYXllckFkZHJlc3MFAAAABndpbkFtdAUAAAAObmV3R2FtZURhdGFTdHIFAAAAEWRlY3JlYXNlZFJlc2VydmVzBAAAAA5uZXdHYW1lRGF0YVN0cgkBAAAAEUZvcm1hdEdhbWVEYXRhU3RyAAAABgUAAAAJU1RBVEVMT1NUBQAAAApwcmVkaWN0aW9uBQAAAAhyb2xsVHlwZQUAAAAOcGxheWVyUHViS2V5NTgFAAAABndpbkFtdAUAAAAHcmFuZFN0cgkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAGZ2FtZUlkBQAAAA5uZXdHYW1lRGF0YVN0cgkABEwAAAACBQAAABFkZWNyZWFzZWRSZXNlcnZlcwUAAAADbmlsAAAAAQAAAAJ0eAEAAAAGdmVyaWZ5AAAAAAMJAAH0AAAAAwgFAAAAAnR4AAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAAACAUAAAACdHgAAAAPc2VuZGVyUHVibGljS2V5BAAAAAckbWF0Y2gwBQAAAAJ0eAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAATVHJhbnNmZXJUcmFuc2FjdGlvbgQAAAADdHR4BQAAAAckbWF0Y2gwCQAAZwAAAAIJAABlAAAAAgkAA+sAAAACBQAAAAR0aGlzBQAAAARXQkVUCAUAAAADdHR4AAAABmFtb3VudAkBAAAAEkV4dHJhY3RSZXNlcnZlZEFtdAAAAAADCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAFFNldFNjcmlwdFRyYW5zYWN0aW9uBAAAAANzdHgFAAAAByRtYXRjaDAGBwcmjBpc", "chainId": 84, "height": 746420, "spentComplexity": 0 } View: original | compacted Prev: 94NSqS23EXfKas5KWXiLhSSwo4WJKc3TmRApoyhMtDSs Next: 46g5PqtBhwEJiw3a8uZjhHEL2WtUxroz3Q4A73Mw6Xu2 Diff:
OldNewDifferences
592592 else {
593593 let multi = Multiplier(prediction, rollType)
594594 let prov = ((amount / 100000) * multi)
595- (((100 - FEES) / 100) * 10000)
595+ (100000000 * (100 - FEES))
596596 }
597597
598598
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let RSAPUBLIC = fromBase64String("base64:MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAg4dAR6XbBDAS9hr/Ej3dJv6Ffc466x/mOGMWU3lrABs3qa8BHmuJGnkfbpEf2vAwYTOWPvvzfM10OBbfloSyq3c9MKvyTe1luBLGqW4vZUXIyvSgz1liyUVefIQy3dyF9jbeTZbC0bbcT/7O3DEL+01z6A+rDCacSZ0lGolSQ6AnhLxzIkVpOQJbrBmC+x+ZuZPCMWzJynd5aeOn7jaj/mkRVyxe6g/0OhWz4NiiZXeuMRB+8mKy0fWD/UlIlZWHsAS2ZmrkXKqjLq0/0wr8ILJkznjSqdnI5Ibjg3uQrj/4AN+i9r28aQ73/ZkPtY5Sbw0AOiABBu7gHmq9ayVxZQIDAQAB")
55
66 let GAMESCOUNTERKEY = "$GAME_NUM"
77
88 let RESERVATIONKEY = "$RESERVED_AMOUNT"
99
1010 let WBET = base58'A4q1mYKo11yuH9gmvDodeJoksagcyQzeFE9JtphMWddw'
1111
1212 let WALLETWAVESBET = Address(base58'3MtCy2PCFPyu8A9SRNL4qUo1V17SGLHftD8')
1313
1414 let WALLETMCAFEE = Address(base58'3MtCy2PCFPyu8A9SRNL4qUo1V17SGLHftD8')
1515
1616 let WAVELET = 100000000
1717
1818 let FEEWAVESBET = 4
1919
2020 let FEEMCAFEE = 2
2121
2222 let FEES = (FEEWAVESBET + FEEMCAFEE)
2323
2424 let STATESUBMITTED = "SUBMITTED"
2525
2626 let STATEWON = "WON"
2727
2828 let STATELOST = "LOST"
2929
3030 let ROLLUNDER = "UNDER"
3131
3232 let ROLLOVER = "OVER"
3333
3434 let BETMIN = (1000 * WAVELET)
3535
3636 let BETMAX = (20000000 * WAVELET)
3737
3838 let PREDICTIONMIN = 1
3939
4040 let PREDICTIONMAX = 99
4141
4242 let IdxGameState = 0
4343
4444 let IdxPrediction = 1
4545
4646 let IdxType = 2
4747
4848 let IdxPlayerPubKey58 = 3
4949
5050 let IdxWinAmt = 4
5151
5252 let IdxRandOrEmpty = 5
5353
5454 func IncrementGameNum () = {
5555 let gameNum = match getInteger(this, GAMESCOUNTERKEY) {
5656 case num: Int =>
5757 num
5858 case _ =>
5959 0
6060 }
6161 (gameNum + 1)
6262 }
6363
6464
6565 func ExtractReservedAmt () = match getInteger(this, RESERVATIONKEY) {
6666 case a: Int =>
6767 a
6868 case _ =>
6969 0
7070 }
7171
7272
7373 func ValidateAndIncreaseReservedAmt (winAmt) = {
7474 let newReservedAmount = (ExtractReservedAmt() + winAmt)
7575 let balance = assetBalance(this, WBET)
7676 if ((newReservedAmount > balance))
7777 then throw("Insufficient funds on Wavesbet Dice account. Transaction was rejected for your safety.")
7878 else newReservedAmount
7979 }
8080
8181
8282 func FormatGameDataParam (p) = {
8383 let s = size(p)
8484 if ((s == 0))
8585 then throw("Parameter size must be greater then 0")
8686 else if ((s > 99))
8787 then throw("Parameter size must be less then 100")
8888 else if ((10 > s))
8989 then (("0" + toString(s)) + p)
9090 else (toString(s) + p)
9191 }
9292
9393
9494 func FormatGameDataStr (gameState,prediction,typeRoll,playerPubKey58,winAmt,randOrEmpty) = {
9595 let fullStateStr = ((((((((FormatGameDataParam(gameState) + "_") + FormatGameDataParam(toString(prediction))) + "_") + FormatGameDataParam(typeRoll)) + "_") + FormatGameDataParam(playerPubKey58)) + "_") + FormatGameDataParam(toString(winAmt)))
9696 if ((randOrEmpty == ""))
9797 then fullStateStr
9898 else ((fullStateStr + "_") + FormatGameDataParam(randOrEmpty))
9999 }
100100
101101
102102 func RemoveUnderscoreIfPresent (remaining) = if ((size(remaining) > 0))
103103 then drop(remaining, 1)
104104 else remaining
105105
106106
107107 func ParseNextAttribute (remaining) = {
108108 let s = size(remaining)
109109 if ((s > 0))
110110 then {
111111 let nn = parseIntValue(take(remaining, 2))
112112 let v = take(drop(remaining, 2), nn)
113113 let tmpRemaining = drop(remaining, (nn + 2))
114114 let remainingState = RemoveUnderscoreIfPresent(tmpRemaining)
115115 [v, remainingState]
116116 }
117117 else throw("Empty string was passed into parseNextAttribute func")
118118 }
119119
120120
121121 func ParseGameRawDataStr (rawStateStr) = {
122122 let gameState = ParseNextAttribute(rawStateStr)
123123 let prediction = ParseNextAttribute(gameState[1])
124124 let rollType = ParseNextAttribute(prediction[1])
125125 let playerPubKey58 = ParseNextAttribute(rollType[1])
126126 let winAmt = ParseNextAttribute(playerPubKey58[1])
127127 [gameState[0], prediction[0], rollType[0], playerPubKey58[0], winAmt[0]]
128128 }
129129
130130
131131 func ExtractGameDataList (gameId) = {
132132 let rawDataStr = match getString(this, gameId) {
133133 case str: String =>
134134 str
135135 case _ =>
136136 throw(("Couldn't find game by " + gameId))
137137 }
138138 ParseGameRawDataStr(rawDataStr)
139139 }
140140
141141
142142 func DecreaseReservedAmt (gameId,winAmt) = {
143143 let newReservedAmount = (ExtractReservedAmt() - winAmt)
144144 if ((0 > newReservedAmount))
145145 then throw("Invalid Dice Roller account state - reserved amount is less than 0")
146146 else DataEntry(RESERVATIONKEY, newReservedAmount)
147147 }
148148
149149
150150 func GenerateRandInt (gameId,rsaSign) = {
151151 let rsaSigValid = rsaVerify(SHA256, toBytes(gameId), rsaSign, RSAPUBLIC)
152152 if (rsaSigValid)
153153 then {
154154 let rand = (toInt(sha256(rsaSign)) % 100)
155155 if ((0 > rand))
156156 then ((-1 * rand) + 1)
157157 else (rand + 1)
158158 }
159159 else throw("Invalid RSA signature")
160160 }
161161
162162
163163 func RandToStr (r) = if (if ((r >= 1))
164164 then (100 >= r)
165165 else false)
166166 then toString(r)
167167 else throw(("Unsupported r parameter passed: expected=[1,...,100] actual=" + toString(r)))
168168
169169
170170 func WinScriptSet (gameId,playerAddress,winAmt,newGameDataStr,decreasedReserves) = {
171171 let wSetCommonData = [decreasedReserves]
172172 let tSetCommonData = [ScriptTransfer(playerAddress, winAmt, WBET)]
173173 let gameData = DataEntry(gameId, newGameDataStr)
174174 ScriptResult(WriteSet(gameData :: wSetCommonData), TransferSet(tSetCommonData))
175175 }
176176
177177
178178 func Multiplier (prediction,rollType) = if ((rollType == ROLLUNDER))
179179 then if ((prediction == 1))
180180 then 9850000
181181 else if ((prediction == 2))
182182 then 4925000
183183 else if ((prediction == 3))
184184 then 3283330
185185 else if ((prediction == 4))
186186 then 2462500
187187 else if ((prediction == 5))
188188 then 1970000
189189 else if ((prediction == 6))
190190 then 1641660
191191 else if ((prediction == 7))
192192 then 1407140
193193 else if ((prediction == 8))
194194 then 1231250
195195 else if ((prediction == 9))
196196 then 1094440
197197 else if ((prediction == 10))
198198 then 985000
199199 else if ((prediction == 11))
200200 then 895450
201201 else if ((prediction == 12))
202202 then 820830
203203 else if ((prediction == 13))
204204 then 757690
205205 else if ((prediction == 14))
206206 then 703570
207207 else if ((prediction == 15))
208208 then 656660
209209 else if ((prediction == 16))
210210 then 615620
211211 else if ((prediction == 17))
212212 then 579410
213213 else if ((prediction == 18))
214214 then 547220
215215 else if ((prediction == 19))
216216 then 518420
217217 else if ((prediction == 20))
218218 then 492500
219219 else if ((prediction == 21))
220220 then 469040
221221 else if ((prediction == 22))
222222 then 447720
223223 else if ((prediction == 23))
224224 then 428260
225225 else if ((prediction == 24))
226226 then 410410
227227 else if ((prediction == 25))
228228 then 394000
229229 else if ((prediction == 26))
230230 then 378840
231231 else if ((prediction == 27))
232232 then 364810
233233 else if ((prediction == 28))
234234 then 351780
235235 else if ((prediction == 29))
236236 then 339650
237237 else if ((prediction == 30))
238238 then 328330
239239 else if ((prediction == 31))
240240 then 317740
241241 else if ((prediction == 32))
242242 then 307810
243243 else if ((prediction == 33))
244244 then 298480
245245 else if ((prediction == 34))
246246 then 289700
247247 else if ((prediction == 35))
248248 then 281420
249249 else if ((prediction == 36))
250250 then 273610
251251 else if ((prediction == 37))
252252 then 259210
253253 else if ((prediction == 38))
254254 then 259210
255255 else if ((prediction == 39))
256256 then 252560
257257 else if ((prediction == 40))
258258 then 246250
259259 else if ((prediction == 41))
260260 then 240240
261261 else if ((prediction == 42))
262262 then 234520
263263 else if ((prediction == 43))
264264 then 229060
265265 else if ((prediction == 44))
266266 then 223860
267267 else if ((prediction == 45))
268268 then 218880
269269 else if ((prediction == 46))
270270 then 214130
271271 else if ((prediction == 47))
272272 then 209570
273273 else if ((prediction == 48))
274274 then 205200
275275 else if ((prediction == 49))
276276 then 201020
277277 else if ((prediction == 50))
278278 then 197000
279279 else if ((prediction == 51))
280280 then 193130
281281 else if ((prediction == 52))
282282 then 189420
283283 else if ((prediction == 53))
284284 then 185840
285285 else if ((prediction == 54))
286286 then 182400
287287 else if ((prediction == 55))
288288 then 179090
289289 else if ((prediction == 56))
290290 then 175890
291291 else if ((prediction == 57))
292292 then 172800
293293 else if ((prediction == 58))
294294 then 169820
295295 else if ((prediction == 59))
296296 then 166940
297297 else if ((prediction == 60))
298298 then 164160
299299 else if ((prediction == 61))
300300 then 161470
301301 else if ((prediction == 62))
302302 then 158870
303303 else if ((prediction == 63))
304304 then 156340
305305 else if ((prediction == 64))
306306 then 153900
307307 else if ((prediction == 65))
308308 then 151530
309309 else if ((prediction == 66))
310310 then 149240
311311 else if ((prediction == 67))
312312 then 147010
313313 else if ((prediction == 68))
314314 then 144850
315315 else if ((prediction == 69))
316316 then 142750
317317 else if ((prediction == 70))
318318 then 140710
319319 else if ((prediction == 71))
320320 then 138730
321321 else if ((prediction == 72))
322322 then 136800
323323 else if ((prediction == 73))
324324 then 134930
325325 else if ((prediction == 74))
326326 then 133100
327327 else if ((prediction == 75))
328328 then 131330
329329 else if ((prediction == 76))
330330 then 129600
331331 else if ((prediction == 77))
332332 then 127920
333333 else if ((prediction == 78))
334334 then 126280
335335 else if ((prediction == 79))
336336 then 124680
337337 else if ((prediction == 80))
338338 then 123120
339339 else if ((prediction == 81))
340340 then 121600
341341 else if ((prediction == 82))
342342 then 120120
343343 else if ((prediction == 83))
344344 then 118670
345345 else if ((prediction == 84))
346346 then 117260
347347 else if ((prediction == 85))
348348 then 115880
349349 else if ((prediction == 86))
350350 then 114530
351351 else if ((prediction == 87))
352352 then 113210
353353 else if ((prediction == 88))
354354 then 111930
355355 else if ((prediction == 89))
356356 then 110670
357357 else if ((prediction == 90))
358358 then 109440
359359 else if ((prediction == 91))
360360 then 108240
361361 else if ((prediction == 92))
362362 then 107060
363363 else if ((prediction == 93))
364364 then 105910
365365 else if ((prediction == 94))
366366 then 104780
367367 else if ((prediction == 95))
368368 then 103680
369369 else if ((prediction == 96))
370370 then 103680
371371 else 100000
372372 else if ((rollType == ROLLOVER))
373373 then if ((prediction == 4))
374374 then 103680
375375 else if ((prediction == 5))
376376 then 103680
377377 else if ((prediction == 6))
378378 then 104780
379379 else if ((prediction == 7))
380380 then 105910
381381 else if ((prediction == 8))
382382 then 107060
383383 else if ((prediction == 9))
384384 then 108240
385385 else if ((prediction == 10))
386386 then 109440
387387 else if ((prediction == 11))
388388 then 110670
389389 else if ((prediction == 12))
390390 then 111930
391391 else if ((prediction == 13))
392392 then 113210
393393 else if ((prediction == 14))
394394 then 114530
395395 else if ((prediction == 15))
396396 then 115880
397397 else if ((prediction == 16))
398398 then 117260
399399 else if ((prediction == 17))
400400 then 118670
401401 else if ((prediction == 18))
402402 then 120120
403403 else if ((prediction == 19))
404404 then 121600
405405 else if ((prediction == 20))
406406 then 123120
407407 else if ((prediction == 21))
408408 then 124680
409409 else if ((prediction == 22))
410410 then 126280
411411 else if ((prediction == 23))
412412 then 127920
413413 else if ((prediction == 24))
414414 then 129600
415415 else if ((prediction == 25))
416416 then 131330
417417 else if ((prediction == 26))
418418 then 133100
419419 else if ((prediction == 27))
420420 then 134930
421421 else if ((prediction == 28))
422422 then 136800
423423 else if ((prediction == 29))
424424 then 138730
425425 else if ((prediction == 30))
426426 then 140710
427427 else if ((prediction == 31))
428428 then 142750
429429 else if ((prediction == 32))
430430 then 144850
431431 else if ((prediction == 33))
432432 then 147010
433433 else if ((prediction == 34))
434434 then 149240
435435 else if ((prediction == 35))
436436 then 151530
437437 else if ((prediction == 36))
438438 then 153900
439439 else if ((prediction == 37))
440440 then 156340
441441 else if ((prediction == 38))
442442 then 158870
443443 else if ((prediction == 39))
444444 then 161470
445445 else if ((prediction == 40))
446446 then 164160
447447 else if ((prediction == 41))
448448 then 166940
449449 else if ((prediction == 42))
450450 then 169820
451451 else if ((prediction == 43))
452452 then 172800
453453 else if ((prediction == 44))
454454 then 175890
455455 else if ((prediction == 45))
456456 then 179090
457457 else if ((prediction == 46))
458458 then 185840
459459 else if ((prediction == 47))
460460 then 185840
461461 else if ((prediction == 48))
462462 then 189420
463463 else if ((prediction == 49))
464464 then 193130
465465 else if ((prediction == 50))
466466 then 197000
467467 else if ((prediction == 51))
468468 then 201020
469469 else if ((prediction == 52))
470470 then 205200
471471 else if ((prediction == 53))
472472 then 209570
473473 else if ((prediction == 54))
474474 then 214130
475475 else if ((prediction == 55))
476476 then 218880
477477 else if ((prediction == 56))
478478 then 223860
479479 else if ((prediction == 57))
480480 then 229060
481481 else if ((prediction == 58))
482482 then 234520
483483 else if ((prediction == 59))
484484 then 240240
485485 else if ((prediction == 60))
486486 then 246250
487487 else if ((prediction == 61))
488488 then 252560
489489 else if ((prediction == 62))
490490 then 259210
491491 else if ((prediction == 63))
492492 then 259210
493493 else if ((prediction == 64))
494494 then 273610
495495 else if ((prediction == 65))
496496 then 281420
497497 else if ((prediction == 66))
498498 then 289700
499499 else if ((prediction == 67))
500500 then 298480
501501 else if ((prediction == 68))
502502 then 307810
503503 else if ((prediction == 69))
504504 then 317740
505505 else if ((prediction == 70))
506506 then 328330
507507 else if ((prediction == 71))
508508 then 339650
509509 else if ((prediction == 72))
510510 then 351780
511511 else if ((prediction == 73))
512512 then 364810
513513 else if ((prediction == 74))
514514 then 378840
515515 else if ((prediction == 75))
516516 then 394000
517517 else if ((prediction == 76))
518518 then 410410
519519 else if ((prediction == 77))
520520 then 428260
521521 else if ((prediction == 78))
522522 then 447720
523523 else if ((prediction == 79))
524524 then 469040
525525 else if ((prediction == 80))
526526 then 492500
527527 else if ((prediction == 81))
528528 then 518420
529529 else if ((prediction == 82))
530530 then 547220
531531 else if ((prediction == 83))
532532 then 579410
533533 else if ((prediction == 84))
534534 then 615620
535535 else if ((prediction == 85))
536536 then 656660
537537 else if ((prediction == 86))
538538 then 703570
539539 else if ((prediction == 87))
540540 then 757690
541541 else if ((prediction == 88))
542542 then 820830
543543 else if ((prediction == 89))
544544 then 895450
545545 else if ((prediction == 90))
546546 then 985000
547547 else if ((prediction == 91))
548548 then 1094440
549549 else if ((prediction == 92))
550550 then 1231250
551551 else if ((prediction == 93))
552552 then 1407140
553553 else if ((prediction == 94))
554554 then 1641660
555555 else if ((prediction == 95))
556556 then 1970000
557557 else if ((prediction == 96))
558558 then 2462500
559559 else if ((prediction == 97))
560560 then 3283330
561561 else if ((prediction == 98))
562562 then 4925000
563563 else if ((prediction == 99))
564564 then 9850000
565565 else 100000
566566 else 100000
567567
568568
569569 func diceWin (type,prediction,number) = if ((type == ROLLUNDER))
570570 then if ((prediction >= number))
571571 then true
572572 else false
573573 else if ((type == ROLLOVER))
574574 then if ((number >= prediction))
575575 then true
576576 else false
577577 else false
578578
579579
580580 func ValidateBetAndDefineWinAmt (amount,prediction,rollType) = if (if ((BETMIN > amount))
581581 then true
582582 else (amount > BETMAX))
583583 then throw(((("Bet amount is not in range: minBet=" + toString((BETMIN / WAVELET))) + " maxBet=") + toString((BETMAX / WAVELET))))
584584 else if (if ((rollType != ROLLUNDER))
585585 then (rollType != ROLLOVER)
586586 else false)
587587 then throw("Invalid Roll type, try with OVER or UNDER")
588588 else if (if ((PREDICTIONMIN > prediction))
589589 then true
590590 else (prediction > PREDICTIONMAX))
591591 then throw(((("Prediction is out of the range: " + toString(PREDICTIONMIN)) + " <= prediction <= ") + toString(PREDICTIONMAX)))
592592 else {
593593 let multi = Multiplier(prediction, rollType)
594594 let prov = ((amount / 100000) * multi)
595- (((100 - FEES) / 100) * 10000)
595+ (100000000 * (100 - FEES))
596596 }
597597
598598
599599 @Callable(i)
600600 func playDice (rollType,prediction) = {
601601 let gameId = toBase58String(i.transactionId)
602602 let payment = extract(i.payment)
603603 let feeAssetId = isDefined(i.feeAssetId)
604604 let winAmt = ValidateBetAndDefineWinAmt(payment.amount, prediction, rollType)
605605 let playerBalance = wavesBalance(i.caller)
606606 let gameIdUsed = isDefined(getString(this, gameId))
607607 if ((payment.assetId != WBET))
608608 then throw("Payment should be in Wavesbet")
609609 else if ((1000000 > playerBalance))
610610 then throw("There are not enough waves, it takes 0.01 Waves to bet. Game aborted.")
611611 else if (feeAssetId)
612612 then throw("Transaction's fee must be in Waves. Game aborted.")
613613 else if (gameIdUsed)
614614 then throw("Passed gameId had been used before. Game aborted.")
615615 else {
616616 let newGameNum = IncrementGameNum()
617617 let playerPubKey58 = toBase58String(i.callerPublicKey)
618618 let gameDataStr = FormatGameDataStr(STATESUBMITTED, prediction, rollType, playerPubKey58, winAmt, "")
619619 ScriptResult(WriteSet([DataEntry(RESERVATIONKEY, ValidateAndIncreaseReservedAmt(winAmt)), DataEntry(GAMESCOUNTERKEY, newGameNum), DataEntry(gameId, gameDataStr)]), TransferSet([ScriptTransfer(WALLETWAVESBET, ((payment.amount * FEEWAVESBET) / 100), WBET), ScriptTransfer(WALLETMCAFEE, ((payment.amount * FEEMCAFEE) / 100), WBET)]))
620620 }
621621 }
622622
623623
624624
625625 @Callable(i)
626626 func withdraw (gameId,rsaSig) = {
627627 let gameDataList = ExtractGameDataList(gameId)
628628 let gameState = gameDataList[IdxGameState]
629629 let prediction = parseIntValue(gameDataList[IdxPrediction])
630630 let rollType = gameDataList[IdxType]
631631 let winAmt = parseIntValue(gameDataList[IdxWinAmt])
632632 let playerPubKey58 = gameDataList[IdxPlayerPubKey58]
633633 let playerAddress = addressFromPublicKey(fromBase58String(playerPubKey58))
634634 let decreasedReserves = DecreaseReservedAmt(gameId, winAmt)
635635 if ((gameState != STATESUBMITTED))
636636 then throw("Invalid game state for passed gameId. Game aborted.")
637637 else {
638638 let rand = GenerateRandInt(gameId, rsaSig)
639639 let randStr = RandToStr(rand)
640640 if (diceWin(rollType, prediction, rand))
641641 then {
642642 let newGameDataStr = FormatGameDataStr(STATEWON, prediction, rollType, playerPubKey58, winAmt, randStr)
643643 WinScriptSet(gameId, playerAddress, winAmt, newGameDataStr, decreasedReserves)
644644 }
645645 else {
646646 let newGameDataStr = FormatGameDataStr(STATELOST, prediction, rollType, playerPubKey58, winAmt, randStr)
647647 WriteSet([DataEntry(gameId, newGameDataStr), decreasedReserves])
648648 }
649649 }
650650 }
651651
652652
653653 @Verifier(tx)
654654 func verify () = if (sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey))
655655 then match tx {
656656 case ttx: TransferTransaction =>
657657 ((assetBalance(this, WBET) - ttx.amount) >= ExtractReservedAmt())
658658 case stx: SetScriptTransaction =>
659659 true
660660 case _ =>
661661 false
662662 }
663663 else false
664664

github/deemru/w8io/3ef1775 
137.70 ms