tx · GzkY8pZWuuJ45NHhpurZAw4nkVNoCW4WupRZCBv2ZUEo

3Mynaio8coZLr58tu2AdBEhmCvB17vTBRkA:  -0.01000000 Waves

2023.06.03 22:32 [2606925] smart account 3Mynaio8coZLr58tu2AdBEhmCvB17vTBRkA > SELF 0.00000000 Waves

{ "type": 13, "id": "GzkY8pZWuuJ45NHhpurZAw4nkVNoCW4WupRZCBv2ZUEo", "fee": 1000000, "feeAssetId": null, "timestamp": 1685820720619, "version": 2, "chainId": 84, "sender": "3Mynaio8coZLr58tu2AdBEhmCvB17vTBRkA", "senderPublicKey": "Dx7cJVhpJb4qUDGiDnSjj6Wfjdj5nmzwVLfaggkbjDtv", "proofs": [ "5UFZgJNSZp3X9hKPu4LMjKTaRQLHV3PjfyzsFaVYuWtmpdyVJ7oe6WMuUhn6QWkNAcHoQunV6HWE6CjvZSmhmGWu" ], "script": "base64:BgIGCAISABIABwEKbnVtVG9XYXZlcwEDbnVtCQBoAgUDbnVtAIDC1y8BC2lzUGF5bWVudE9rAQFpBBFhY2NlcHRhYmxlQXNzZXRJZAEgIkSm54hUfVEormpXug9p+nbhDnc37ahHq1IfaU2UQkcDCQAAAgkAkAMBCAUBaQhwYXltZW50cwAACQACAQIUUGF5bWVudCBub3QgYXR0YWNoZWQEAXAJAJEDAggFAWkIcGF5bWVudHMAAAQHJG1hdGNoMAgFAXAHYXNzZXRJZAMJAAECBQckbWF0Y2gwAgpCeXRlVmVjdG9yBAdhc3NldElkBQckbWF0Y2gwAwkAAAIFB2Fzc2V0SWQFEWFjY2VwdGFibGVBc3NldElkCQBnAggFAXAGYW1vdW50CQEKbnVtVG9XYXZlcwEAAQcJAGcCCAUBcAZhbW91bnQJAQpudW1Ub1dhdmVzAQABARNnZXRMdWNreVdoZWVsQmV0S2V5AQFpCQCsAgICD2JldF9MdWNreVdoZWVsXwkApQgBCAUBaQZjYWxsZXIBE2dldEx1Y2t5V2hlZWxXb25LZXkBAWkJAKwCAgIPd29uX0x1Y2t5V2hlZWxfCQClCAEIBQFpBmNhbGxlcgEcZ2V0THVja3lXaGVlbFJhbmRvbU51bWJlcktleQEBaQkArAICAhhyYW5kb21OdW1iZXJfTHVja3lXaGVlbF8JAKUIAQgFAWkGY2FsbGVyARNnZXRMdWNreVdoZWVsTG9nS2V5AQFpCQCsAgIJAKwCAgkArAICAg9sb2dfTHVja3lXaGVlbF8JAKUIAQgFAWkGY2FsbGVyAgFfCQDYBAEIBQFpDXRyYW5zYWN0aW9uSWQBGWdhbWVMdWNreVdoZWVsV2hhdFVzZXJXb24BBXZhbHVlBAckbWF0Y2gwBQV2YWx1ZQMJAAACAAEFByRtYXRjaDAJAQpudW1Ub1dhdmVzAQACAwkAAAIAAwUHJG1hdGNoMAkBCm51bVRvV2F2ZXMBAAEDCQAAAgAHBQckbWF0Y2gwCQEKbnVtVG9XYXZlcwEABgMJAAACAAkFByRtYXRjaDAJAQpudW1Ub1dhdmVzAQABAAACAWkBEGNvbW1pdEx1Y2t5V2hlZWwAAwkBASEBCQELaXNQYXltZW50T2sBBQFpCQACAQIdV3JvbmcgcGF5bWVudCBhbW91bnQgb3IgYXNzZXQJAMwIAgkBDEludGVnZXJFbnRyeQIJARNnZXRMdWNreVdoZWVsQmV0S2V5AQUBaQkAZAIFBmhlaWdodAABCQDMCAIJAQtEZWxldGVFbnRyeQEJARxnZXRMdWNreVdoZWVsUmFuZG9tTnVtYmVyS2V5AQUBaQkAzAgCCQELRGVsZXRlRW50cnkBCQETZ2V0THVja3lXaGVlbFdvbktleQEFAWkFA25pbAFpARByZXZlYWxMdWNreVdoZWVsAAQMY29tbWl0SGVpZ2h0CQETdmFsdWVPckVycm9yTWVzc2FnZQIJARFAZXh0ck5hdGl2ZSgxMDU1KQEJARNnZXRMdWNreVdoZWVsQmV0S2V5AQUBaQINQmV0IG5vdCBmb3VuZAMJAGYCBQxjb21taXRIZWlnaHQFBmhlaWdodAkAAgEJAKwCAgkArAICAgV3YWl0IAkApAMBCQBlAgUMY29tbWl0SGVpZ2h0BQZoZWlnaHQCGSBibG9ja3MgdG8gcmV2ZWFsIHRoaXMgaWQEC3JldmVhbEJsb2NrCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAO0HAQUMY29tbWl0SGVpZ2h0AhF1bmV4Y3BlY3RlZCBlcnJvcgQDdnJmCQETdmFsdWVPckVycm9yTWVzc2FnZQIIBQtyZXZlYWxCbG9jawN2cmYCEXVuZXhjcGVjdGVkIGVycm9yBApyYW5kb21IYXNoCQD3AwEJAQV2YWx1ZQEFA3ZyZgQKcmFuZG9tU2VlZAkAagIJALIJAgUKcmFuZG9tSGFzaAAQAAwEDHJhbmRvbU51bWJlcgkAZAIJAGoCBQpyYW5kb21TZWVkCQBkAgkAZQIADAABAAEAAQQNd2lubmluZ0Ftb3VudAkBGWdhbWVMdWNreVdoZWVsV2hhdFVzZXJXb24BBQxyYW5kb21OdW1iZXIDCQBmAgUNd2lubmluZ0Ftb3VudAAACQDMCAIJAQtEZWxldGVFbnRyeQEJARNnZXRMdWNreVdoZWVsQmV0S2V5AQUBaQkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCAUBaQZjYWxsZXIFDXdpbm5pbmdBbW91bnQFBHVuaXQJAMwIAgkBDEludGVnZXJFbnRyeQIJARNnZXRMdWNreVdoZWVsV29uS2V5AQUBaQUNd2lubmluZ0Ftb3VudAkAzAgCCQEMSW50ZWdlckVudHJ5AgkBHGdldEx1Y2t5V2hlZWxSYW5kb21OdW1iZXJLZXkBBQFpBQxyYW5kb21OdW1iZXIJAMwIAgkBDEludGVnZXJFbnRyeQIJARNnZXRMdWNreVdoZWVsTG9nS2V5AQUBaQUNd2lubmluZ0Ftb3VudAkAzAgCCQEMSW50ZWdlckVudHJ5AgIKcmFuZG9tU2VlZAUKcmFuZG9tU2VlZAUDbmlsCQDMCAIJAQtEZWxldGVFbnRyeQEJARNnZXRMdWNreVdoZWVsQmV0S2V5AQUBaQkAzAgCCQEMSW50ZWdlckVudHJ5AgkBE2dldEx1Y2t5V2hlZWxXb25LZXkBBQFpBQ13aW5uaW5nQW1vdW50CQDMCAIJAQxJbnRlZ2VyRW50cnkCCQEcZ2V0THVja3lXaGVlbFJhbmRvbU51bWJlcktleQEFAWkFDHJhbmRvbU51bWJlcgkAzAgCCQEMSW50ZWdlckVudHJ5AgkBE2dldEx1Y2t5V2hlZWxMb2dLZXkBBQFpBQ13aW5uaW5nQW1vdW50CQDMCAIJAQxJbnRlZ2VyRW50cnkCAgpyYW5kb21TZWVkBQpyYW5kb21TZWVkBQNuaWwAQyKnBw==", "height": 2606925, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: xEc8Yznj2JmVyQ9jJDWaFu6wQyrdj1fLqrbhpQsnSNP Next: 9wRa37kVK2YZzw54mDtXLrF4MdcpeBdRUUWvB4KCHd6H Diff:
OldNewDifferences
4444 then numToWaves(6)
4545 else if ((9 == $match0))
4646 then numToWaves(1)
47- else if ((11 == $match0))
48- then numToWaves(1)
49- else 0
47+ else 0
5048 }
5149
5250
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func numToWaves (num) = (num * 100000000)
55
66
77 func isPaymentOk (i) = {
88 let acceptableAssetId = base58'3JmaWyFqWo8YSA8x3DXCBUW7veesxacvKx19dMv7wTMg'
99 if ((size(i.payments) == 0))
1010 then throw("Payment not attached")
1111 else {
1212 let p = i.payments[0]
1313 match p.assetId {
1414 case assetId: ByteVector =>
1515 if ((assetId == acceptableAssetId))
1616 then (p.amount >= numToWaves(1))
1717 else false
1818 case _ =>
1919 (p.amount >= numToWaves(1))
2020 }
2121 }
2222 }
2323
2424
2525 func getLuckyWheelBetKey (i) = ("bet_LuckyWheel_" + toString(i.caller))
2626
2727
2828 func getLuckyWheelWonKey (i) = ("won_LuckyWheel_" + toString(i.caller))
2929
3030
3131 func getLuckyWheelRandomNumberKey (i) = ("randomNumber_LuckyWheel_" + toString(i.caller))
3232
3333
3434 func getLuckyWheelLogKey (i) = ((("log_LuckyWheel_" + toString(i.caller)) + "_") + toBase58String(i.transactionId))
3535
3636
3737 func gameLuckyWheelWhatUserWon (value) = match value {
3838 case _ =>
3939 if ((1 == $match0))
4040 then numToWaves(2)
4141 else if ((3 == $match0))
4242 then numToWaves(1)
4343 else if ((7 == $match0))
4444 then numToWaves(6)
4545 else if ((9 == $match0))
4646 then numToWaves(1)
47- else if ((11 == $match0))
48- then numToWaves(1)
49- else 0
47+ else 0
5048 }
5149
5250
5351 @Callable(i)
5452 func commitLuckyWheel () = if (!(isPaymentOk(i)))
5553 then throw("Wrong payment amount or asset")
5654 else [IntegerEntry(getLuckyWheelBetKey(i), (height + 1)), DeleteEntry(getLuckyWheelRandomNumberKey(i)), DeleteEntry(getLuckyWheelWonKey(i))]
5755
5856
5957
6058 @Callable(i)
6159 func revealLuckyWheel () = {
6260 let commitHeight = valueOrErrorMessage(getIntegerValue(getLuckyWheelBetKey(i)), "Bet not found")
6361 if ((commitHeight > height))
6462 then throw((("wait " + toString((commitHeight - height))) + " blocks to reveal this id"))
6563 else {
6664 let revealBlock = valueOrErrorMessage(blockInfoByHeight(commitHeight), "unexcpected error")
6765 let vrf = valueOrErrorMessage(revealBlock.vrf, "unexcpected error")
6866 let randomHash = sha256(value(vrf))
6967 let randomSeed = (toInt(randomHash, 16) % 12)
7068 let randomNumber = ((randomSeed % ((12 - 1) + 1)) + 1)
7169 let winningAmount = gameLuckyWheelWhatUserWon(randomNumber)
7270 if ((winningAmount > 0))
7371 then [DeleteEntry(getLuckyWheelBetKey(i)), ScriptTransfer(i.caller, winningAmount, unit), IntegerEntry(getLuckyWheelWonKey(i), winningAmount), IntegerEntry(getLuckyWheelRandomNumberKey(i), randomNumber), IntegerEntry(getLuckyWheelLogKey(i), winningAmount), IntegerEntry("randomSeed", randomSeed)]
7472 else [DeleteEntry(getLuckyWheelBetKey(i)), IntegerEntry(getLuckyWheelWonKey(i), winningAmount), IntegerEntry(getLuckyWheelRandomNumberKey(i), randomNumber), IntegerEntry(getLuckyWheelLogKey(i), winningAmount), IntegerEntry("randomSeed", randomSeed)]
7573 }
7674 }
7775
7876

github/deemru/w8io/169f3d6 
27.82 ms