tx · J66F5jHRodUYP18ArFJhHV8XgQvEQm4Csv1QZFpMPpLc

3Mynaio8coZLr58tu2AdBEhmCvB17vTBRkA:  -0.01000000 Waves

2023.06.03 19:22 [2606735] smart account 3Mynaio8coZLr58tu2AdBEhmCvB17vTBRkA > SELF 0.00000000 Waves

{ "type": 13, "id": "J66F5jHRodUYP18ArFJhHV8XgQvEQm4Csv1QZFpMPpLc", "fee": 1000000, "feeAssetId": null, "timestamp": 1685809377809, "version": 2, "chainId": 84, "sender": "3Mynaio8coZLr58tu2AdBEhmCvB17vTBRkA", "senderPublicKey": "Dx7cJVhpJb4qUDGiDnSjj6Wfjdj5nmzwVLfaggkbjDtv", "proofs": [ "63SBaAtjcMtsNMDfnsFW4VHW1Xf3CJWnGEjC3qzPY2tZMHNeBYb8A7QzNh35BEZ4y4CEPWSkP2KycNaRWumjRLzG" ], "script": "base64:BgIGCAISABIABwEKbnVtVG9XYXZlcwEDbnVtCQBoAgUDbnVtAIDC1y8BC2lzUGF5bWVudE9rAQFpBBFhY2NlcHRhYmxlQXNzZXRJZAEgIkSm54hUfVEormpXug9p+nbhDnc37ahHq1IfaU2UQkcDCQAAAgkAkAMBCAUBaQhwYXltZW50cwAACQACAQIUUGF5bWVudCBub3QgYXR0YWNoZWQEAXAJAJEDAggFAWkIcGF5bWVudHMAAAQHJG1hdGNoMAgFAXAHYXNzZXRJZAMJAAECBQckbWF0Y2gwAgpCeXRlVmVjdG9yBAdhc3NldElkBQckbWF0Y2gwAwkAAAIFB2Fzc2V0SWQFEWFjY2VwdGFibGVBc3NldElkCQBnAggFAXAGYW1vdW50CQEKbnVtVG9XYXZlcwEAAQcJAGcCCAUBcAZhbW91bnQJAQpudW1Ub1dhdmVzAQABARNnZXRMdWNreVdoZWVsQmV0S2V5AQFpCQCsAgICD2JldF9MdWNreVdoZWVsXwkApQgBCAUBaQZjYWxsZXIBE2dldEx1Y2t5V2hlZWxXb25LZXkBAWkJAKwCAgIPd29uX0x1Y2t5V2hlZWxfCQClCAEIBQFpBmNhbGxlcgEcZ2V0THVja3lXaGVlbFJhbmRvbU51bWJlcktleQEBaQkArAICAhhyYW5kb21OdW1iZXJfTHVja3lXaGVlbF8JAKUIAQgFAWkGY2FsbGVyARNnZXRMdWNreVdoZWVsTG9nS2V5AQFpCQCsAgIJAKwCAgkArAICAg9sb2dfTHVja3lXaGVlbF8JAKUIAQgFAWkGY2FsbGVyAgFfCQDYBAEIBQFpDXRyYW5zYWN0aW9uSWQBGWdhbWVMdWNreVdoZWVsV2hhdFVzZXJXb24BBXZhbHVlBAckbWF0Y2gwBQV2YWx1ZQMJAAACAAEFByRtYXRjaDAJAQpudW1Ub1dhdmVzAQACAwkAAAIABQUHJG1hdGNoMAkBCm51bVRvV2F2ZXMBAAEDCQAAAgAHBQckbWF0Y2gwCQEKbnVtVG9XYXZlcwEABgMJAAACAAsFByRtYXRjaDAJAQpudW1Ub1dhdmVzAQABAAACAWkBEGNvbW1pdEx1Y2t5V2hlZWwAAwkBASEBCQELaXNQYXltZW50T2sBBQFpCQACAQIdV3JvbmcgcGF5bWVudCBhbW91bnQgb3IgYXNzZXQJAMwIAgkBDEludGVnZXJFbnRyeQIJARNnZXRMdWNreVdoZWVsQmV0S2V5AQUBaQkAZAIFBmhlaWdodAABCQDMCAIJAQtEZWxldGVFbnRyeQEJARxnZXRMdWNreVdoZWVsUmFuZG9tTnVtYmVyS2V5AQUBaQkAzAgCCQELRGVsZXRlRW50cnkBCQETZ2V0THVja3lXaGVlbFdvbktleQEFAWkFA25pbAFpARByZXZlYWxMdWNreVdoZWVsAAQMY29tbWl0SGVpZ2h0CQETdmFsdWVPckVycm9yTWVzc2FnZQIJARFAZXh0ck5hdGl2ZSgxMDU1KQEJARNnZXRMdWNreVdoZWVsQmV0S2V5AQUBaQINQmV0IG5vdCBmb3VuZAMJAGYCBQxjb21taXRIZWlnaHQFBmhlaWdodAkAAgEJAKwCAgkArAICAgV3YWl0IAkApAMBCQBlAgUMY29tbWl0SGVpZ2h0BQZoZWlnaHQCGSBibG9ja3MgdG8gcmV2ZWFsIHRoaXMgaWQEC3JldmVhbEJsb2NrCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAO0HAQUMY29tbWl0SGVpZ2h0AhF1bmV4Y3BlY3RlZCBlcnJvcgQDdnJmCQETdmFsdWVPckVycm9yTWVzc2FnZQIIBQtyZXZlYWxCbG9jawN2cmYCEXVuZXhjcGVjdGVkIGVycm9yBApyYW5kb21TZWVkCQCxCQEJAPUDAQUDdnJmBAxyYW5kb21OdW1iZXIJAGQCCQBqAgUKcmFuZG9tU2VlZAkAZAIJAGUCAAwAAQABAAEEDXdpbm5pbmdBbW91bnQJARlnYW1lTHVja3lXaGVlbFdoYXRVc2VyV29uAQUMcmFuZG9tTnVtYmVyAwkAZgIFDXdpbm5pbmdBbW91bnQAAAkAzAgCCQELRGVsZXRlRW50cnkBCQETZ2V0THVja3lXaGVlbEJldEtleQEFAWkJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwgFAWkGY2FsbGVyBQ13aW5uaW5nQW1vdW50BQR1bml0CQDMCAIJAQxJbnRlZ2VyRW50cnkCCQETZ2V0THVja3lXaGVlbFdvbktleQEFAWkFDXdpbm5pbmdBbW91bnQJAMwIAgkBDEludGVnZXJFbnRyeQIJARxnZXRMdWNreVdoZWVsUmFuZG9tTnVtYmVyS2V5AQUBaQUMcmFuZG9tTnVtYmVyCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQETZ2V0THVja3lXaGVlbExvZ0tleQEFAWkFDXdpbm5pbmdBbW91bnQFA25pbAkAzAgCCQELRGVsZXRlRW50cnkBCQETZ2V0THVja3lXaGVlbEJldEtleQEFAWkJAMwIAgkBDEludGVnZXJFbnRyeQIJARNnZXRMdWNreVdoZWVsV29uS2V5AQUBaQUNd2lubmluZ0Ftb3VudAkAzAgCCQEMSW50ZWdlckVudHJ5AgkBHGdldEx1Y2t5V2hlZWxSYW5kb21OdW1iZXJLZXkBBQFpBQxyYW5kb21OdW1iZXIFA25pbABXWjhM", "height": 2606735, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 9LXAkVvc73oLyu77La1BUMfDFGdi7Cb11AXxdswNzwRt Next: HFJ6TvT45vd4tamAAQyuKFNHUEuFK7xxUpWvdW1Qsmab Diff:
OldNewDifferences
3131 func getLuckyWheelRandomNumberKey (i) = ("randomNumber_LuckyWheel_" + toString(i.caller))
3232
3333
34-func getLuckyWheelLogKey (i) = ("log_LuckyWheel_" + toString(i.caller))
34+func getLuckyWheelLogKey (i) = ((("log_LuckyWheel_" + toString(i.caller)) + "_") + toBase58String(i.transactionId))
3535
3636
3737 func gameLuckyWheelWhatUserWon (value) = match value {
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
34-func getLuckyWheelLogKey (i) = ("log_LuckyWheel_" + toString(i.caller))
34+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 ((5 == $match0))
4242 then numToWaves(1)
4343 else if ((7 == $match0))
4444 then numToWaves(6)
4545 else if ((11 == $match0))
4646 then numToWaves(1)
4747 else 0
4848 }
4949
5050
5151 @Callable(i)
5252 func commitLuckyWheel () = if (!(isPaymentOk(i)))
5353 then throw("Wrong payment amount or asset")
5454 else [IntegerEntry(getLuckyWheelBetKey(i), (height + 1)), DeleteEntry(getLuckyWheelRandomNumberKey(i)), DeleteEntry(getLuckyWheelWonKey(i))]
5555
5656
5757
5858 @Callable(i)
5959 func revealLuckyWheel () = {
6060 let commitHeight = valueOrErrorMessage(getIntegerValue(getLuckyWheelBetKey(i)), "Bet not found")
6161 if ((commitHeight > height))
6262 then throw((("wait " + toString((commitHeight - height))) + " blocks to reveal this id"))
6363 else {
6464 let revealBlock = valueOrErrorMessage(blockInfoByHeight(commitHeight), "unexcpected error")
6565 let vrf = valueOrErrorMessage(revealBlock.vrf, "unexcpected error")
6666 let randomSeed = toInt(keccak256(vrf))
6767 let randomNumber = ((randomSeed % ((12 - 1) + 1)) + 1)
6868 let winningAmount = gameLuckyWheelWhatUserWon(randomNumber)
6969 if ((winningAmount > 0))
7070 then [DeleteEntry(getLuckyWheelBetKey(i)), ScriptTransfer(i.caller, winningAmount, unit), IntegerEntry(getLuckyWheelWonKey(i), winningAmount), IntegerEntry(getLuckyWheelRandomNumberKey(i), randomNumber), IntegerEntry(getLuckyWheelLogKey(i), winningAmount)]
7171 else [DeleteEntry(getLuckyWheelBetKey(i)), IntegerEntry(getLuckyWheelWonKey(i), winningAmount), IntegerEntry(getLuckyWheelRandomNumberKey(i), randomNumber)]
7272 }
7373 }
7474
7575

github/deemru/w8io/873ac7e 
59.17 ms