tx · 2ABDdTt6BirjynaBq4FLw6jaovDY55J3tVMdoeRRUYM2

3MxnEkmoWrYFsHRZDJMw77y9wCDAgB39ftt:  -0.01000000 Waves

2023.06.21 01:23 [2631553] smart account 3MxnEkmoWrYFsHRZDJMw77y9wCDAgB39ftt > SELF 0.00000000 Waves

{ "type": 13, "id": "2ABDdTt6BirjynaBq4FLw6jaovDY55J3tVMdoeRRUYM2", "fee": 1000000, "feeAssetId": null, "timestamp": 1687299863345, "version": 2, "chainId": 84, "sender": "3MxnEkmoWrYFsHRZDJMw77y9wCDAgB39ftt", "senderPublicKey": "Dtj8LFhKm9c6b5sQXEGNawR8YdhfrXvYCcsYzRddC9dU", "proofs": [ "5kofdaum2e81CXAjKWyHL4wV5d2NcHdxa5x7ytYS4LZcnLbXyPF6iDxumpsZdfxm3dX7jZNVXZWG3WsjfLM41vcy" ], "script": "base64:BgIGCAISABIABQAMa1VzZXJQYXltZW50AgdQYXltZW50AARrV29uAgNXb24ACXNlcGFyYXRvcgIBXwEJcmFuZG9taXplAgVieXRlcwVyYW5nZQQEaGFzaAkA9wMBBQVieXRlcwQFaW5kZXgJALEJAQUEaGFzaAkAagIFBWluZGV4BQVyYW5nZQEIY291bnRpbmcBBWJ5dGVzBAVjb3VudAkBCXJhbmRvbWl6ZQIFBWJ5dGVzAAoDCQBnAgUFY291bnQAAwcGAgFpAQtwYXJzZVN0cnVjdAADCQECIT0CCAUBaQZjYWxsZXIFBHRoaXMJAAIBAgpPbmx5IG93bmVyBAx3aW5uZXJTdHJ1Y3QJAQhjb3VudGluZwEIBQFpDXRyYW5zYWN0aW9uSWQJAMwIAgkBDEJvb2xlYW5FbnRyeQIJAKwCAgkArAICCQCsAgIFBGtXb24FCXNlcGFyYXRvcgkApQgBCAUBaQZjYWxsZXIJAKQDAQkBCXJhbmRvbWl6ZQIIBQFpDXRyYW5zYWN0aW9uSWQA6AcFDHdpbm5lclN0cnVjdAkAzAgCCQEMQm9vbGVhbkVudHJ5AgUEa1dvbgUMd2lubmVyU3RydWN0BQNuaWwBaQEJc3RhcnRHYW1lAAQGYW1vdW50CQEFdmFsdWUBCAkAkQMCCAUBaQhwYXltZW50cwAABmFtb3VudAMJAQIhPQIICQCRAwIIBQFpCHBheW1lbnRzAAAHYXNzZXRJZAUEdW5pdAkAAgECDFBheSBpbiB3YXZlcwQNbnVsbEluaXRTdG9yZQkA/AcEBQR0aGlzAgtwYXJzZVN0cnVjdAUDbmlsBQNuaWwDCQAAAgUNbnVsbEluaXRTdG9yZQUNbnVsbEluaXRTdG9yZQQDd29uCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAJsIAgUEdGhpcwUEa1dvbgISU3RvcmFnZSByZWFkIGVycm9yAwUDd29uCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgkAaAIFBmFtb3VudAACBQR1bml0BQNuaWwFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgA25TFg", "height": 2631553, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: FcQXqyA2kmmJVmWfmZscfU5pjMzk9LCEnkj6w47cStio Next: none Diff:
OldNewDifferences
3737 let amount = value(i.payments[0].amount)
3838 if ((i.payments[0].assetId != unit))
3939 then throw("Pay in waves")
40- else if ((amount > 10))
41- then throw("Too much amount")
42- else {
43- let nullInitStore = invoke(this, "parseStruct", nil, nil)
44- if ((nullInitStore == nullInitStore))
45- then {
46- let won = valueOrErrorMessage(getBoolean(this, kWon), "Storage read error")
47- if (won)
48- then [ScriptTransfer(i.caller, (amount * 2), unit)]
49- else nil
50- }
51- else throw("Strict value is not equal to itself.")
52- }
40+ else {
41+ let nullInitStore = invoke(this, "parseStruct", nil, nil)
42+ if ((nullInitStore == nullInitStore))
43+ then {
44+ let won = valueOrErrorMessage(getBoolean(this, kWon), "Storage read error")
45+ if (won)
46+ then [ScriptTransfer(i.caller, (amount * 2), unit)]
47+ else nil
48+ }
49+ else throw("Strict value is not equal to itself.")
50+ }
5351 }
5452
5553
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 func randomize (bytes,range) = {
1111 let hash = sha256(bytes)
1212 let index = toInt(hash)
1313 (index % range)
1414 }
1515
1616
1717 func counting (bytes) = {
1818 let count = randomize(bytes, 10)
1919 if ((count >= 3))
2020 then false
2121 else true
2222 }
2323
2424
2525 @Callable(i)
2626 func parseStruct () = if ((i.caller != this))
2727 then throw("Only owner")
2828 else {
2929 let winnerStruct = counting(i.transactionId)
3030 [BooleanEntry((((kWon + separator) + toString(i.caller)) + toString(randomize(i.transactionId, 1000))), winnerStruct), BooleanEntry(kWon, winnerStruct)]
3131 }
3232
3333
3434
3535 @Callable(i)
3636 func startGame () = {
3737 let amount = value(i.payments[0].amount)
3838 if ((i.payments[0].assetId != unit))
3939 then throw("Pay in waves")
40- else if ((amount > 10))
41- then throw("Too much amount")
42- else {
43- let nullInitStore = invoke(this, "parseStruct", nil, nil)
44- if ((nullInitStore == nullInitStore))
45- then {
46- let won = valueOrErrorMessage(getBoolean(this, kWon), "Storage read error")
47- if (won)
48- then [ScriptTransfer(i.caller, (amount * 2), unit)]
49- else nil
50- }
51- else throw("Strict value is not equal to itself.")
52- }
40+ else {
41+ let nullInitStore = invoke(this, "parseStruct", nil, nil)
42+ if ((nullInitStore == nullInitStore))
43+ then {
44+ let won = valueOrErrorMessage(getBoolean(this, kWon), "Storage read error")
45+ if (won)
46+ then [ScriptTransfer(i.caller, (amount * 2), unit)]
47+ else nil
48+ }
49+ else throw("Strict value is not equal to itself.")
50+ }
5351 }
5452
5553

github/deemru/w8io/026f985 
29.64 ms