tx · He1ntbKUnrKrALKpgj6xSt5nPfnjJX5ra5dKz9NEMZrL

3N4boZRUJ2LxY5jLyp6hmxGktqnawQidu6H:  -0.00200000 Waves

2022.08.21 15:50 [2194244] smart account 3N4boZRUJ2LxY5jLyp6hmxGktqnawQidu6H > SELF 0.00000000 Waves

{ "type": 13, "id": "He1ntbKUnrKrALKpgj6xSt5nPfnjJX5ra5dKz9NEMZrL", "fee": 200000, "feeAssetId": null, "timestamp": 1661086271152, "version": 2, "chainId": 84, "sender": "3N4boZRUJ2LxY5jLyp6hmxGktqnawQidu6H", "senderPublicKey": "BDeCphaaC4MZvfmbJqQZ78EvuEBZTJ1VEW7fbxue8BUu", "proofs": [ "3xuWcGU8wuHdLgg3vqTq2ChNUN4gEaVLndWuMtTZJkEpZpXwGUNKHHJ5nWhy6r6H29FWQCqVC855YyXjS24SSsXY" ], "script": "base64:BgIICAISABIAEgAGAAxrVXNlclBheW1lbnQCB1BheW1lbnQABGtXb24CA1dvbgAJc2VwYXJhdG9yAgEvAA9zZXBhcmF0b3JTZWNvbmQCAXwBCXJhbmRvbWl6ZQIFYnl0ZXMFcmFuZ2UEBGhhc2gJAPcDAQUFYnl0ZXMEBWluZGV4CQCxCQEFBGhhc2gJAGoCBQVpbmRleAUFcmFuZ2UBCGNvdW50aW5nAgVieXRlcwZjYWxsZXIEBWNvdW50CQEJcmFuZG9taXplAgUFYnl0ZXMACgMJAGcCBQVjb3VudAAECQELU3RyaW5nRW50cnkCBQRrV29uCQCsAgIJAKwCAgkArAICCQCsAgIJAKUIAQUGY2FsbGVyBQlzZXBhcmF0b3ICBWZhbHNlBQ9zZXBhcmF0b3JTZWNvbmQJARFAZXh0ck5hdGl2ZSgxMDUzKQIFBHRoaXMFBGtXb24JAQtTdHJpbmdFbnRyeQIFBGtXb24JAKwCAgkArAICCQCsAgIJAKwCAgkApQgBBQZjYWxsZXIFCXNlcGFyYXRvcgIEdHJ1ZQUPc2VwYXJhdG9yU2Vjb25kCQERQGV4dHJOYXRpdmUoMTA1MykCBQR0aGlzBQRrV29uAwFpAQlpbml0U3RvcmUACQDMCAIJAQtTdHJpbmdFbnRyeQIFBGtXb24CATAFA25pbAFpAQtwYXJzZVN0cnVjdAAEDW51bGxJbml0U3RvcmUJAP0HBAUEdGhpcwIJaW5pdFN0b3JlBQNuaWwFA25pbAMJAAACBQ1udWxsSW5pdFN0b3JlBQ1udWxsSW5pdFN0b3JlAwkBAiE9AggFAWkGY2FsbGVyBQR0aGlzCQACAQIKT25seSBvd25lcgQMd2lubmVyU3RydWN0CQEIY291bnRpbmcCCAUBaQ10cmFuc2FjdGlvbklkCAUBaQZjYWxsZXIJAMwIAgUMd2lubmVyU3RydWN0BQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEJc3RhcnRHYW1lAAQGYW1vdW50CQEFdmFsdWUBCAkAkQMCCAUBaQhwYXltZW50cwAABmFtb3VudAMJAQIhPQIICQCRAwIIBQFpCHBheW1lbnRzAAAHYXNzZXRJZAUEdW5pdAkAAgECDFBheSBpbiB3YXZlcwMJAGYCBQZhbW91bnQAFAkAAgECG1lvdSBjYW5ub3QgYmV0IG1vcmUgdGhhbiAyMAQDd29uCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAJsIAgUEdGhpcwUEa1dvbgISU3RvcmFnZSByZWFkIGVycm9yAwUDd29uCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgkAaAIFBmFtb3VudAACBQR1bml0BQNuaWwFA25pbAC4dg9C", "height": 2194244, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: CY1zC1EEC1hPY7M8Bn62DaKGKX61pk4jg2Tt2NBbWmdw Next: 3vwLZBXeXpbhppwPw7YWyWxpcZujg1Ssb4VhDAX628e2 Diff:
OldNewDifferences
5252 else if ((amount > 20))
5353 then throw("You cannot bet more than 20")
5454 else {
55- let nullInitStore = invoke(this, "parseStruct", nil, nil)
56- if ((nullInitStore == nullInitStore))
57- then {
58- let won = valueOrErrorMessage(getBoolean(this, kWon), "Storage read error")
59- if (won)
60- then [ScriptTransfer(i.caller, (amount * 2), unit)]
61- else nil
62- }
63- else throw("Strict value is not equal to itself.")
55+ let won = valueOrErrorMessage(getBoolean(this, kWon), "Storage read error")
56+ if (won)
57+ then [ScriptTransfer(i.caller, (amount * 2), unit)]
58+ else nil
6459 }
6560 }
6661
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let kUserPayment = "Payment"
55
66 let kWon = "Won"
77
88 let separator = "/"
99
1010 let separatorSecond = "|"
1111
1212 func randomize (bytes,range) = {
1313 let hash = sha256(bytes)
1414 let index = toInt(hash)
1515 (index % range)
1616 }
1717
1818
1919 func counting (bytes,caller) = {
2020 let count = randomize(bytes, 10)
2121 if ((count >= 4))
2222 then StringEntry(kWon, ((((toString(caller) + separator) + "false") + separatorSecond) + getStringValue(this, kWon)))
2323 else StringEntry(kWon, ((((toString(caller) + separator) + "true") + separatorSecond) + getStringValue(this, kWon)))
2424 }
2525
2626
2727 @Callable(i)
2828 func initStore () = [StringEntry(kWon, "0")]
2929
3030
3131
3232 @Callable(i)
3333 func parseStruct () = {
3434 let nullInitStore = reentrantInvoke(this, "initStore", nil, nil)
3535 if ((nullInitStore == nullInitStore))
3636 then if ((i.caller != this))
3737 then throw("Only owner")
3838 else {
3939 let winnerStruct = counting(i.transactionId, i.caller)
4040 [winnerStruct]
4141 }
4242 else throw("Strict value is not equal to itself.")
4343 }
4444
4545
4646
4747 @Callable(i)
4848 func startGame () = {
4949 let amount = value(i.payments[0].amount)
5050 if ((i.payments[0].assetId != unit))
5151 then throw("Pay in waves")
5252 else if ((amount > 20))
5353 then throw("You cannot bet more than 20")
5454 else {
55- let nullInitStore = invoke(this, "parseStruct", nil, nil)
56- if ((nullInitStore == nullInitStore))
57- then {
58- let won = valueOrErrorMessage(getBoolean(this, kWon), "Storage read error")
59- if (won)
60- then [ScriptTransfer(i.caller, (amount * 2), unit)]
61- else nil
62- }
63- else throw("Strict value is not equal to itself.")
55+ let won = valueOrErrorMessage(getBoolean(this, kWon), "Storage read error")
56+ if (won)
57+ then [ScriptTransfer(i.caller, (amount * 2), unit)]
58+ else nil
6459 }
6560 }
6661
6762

github/deemru/w8io/169f3d6 
27.15 ms