tx · 5pBfvRxwi4c4BoMAyMLMyQD5MrJhDmN9wL58afJS9hAn

3MyGZ3AEvGe5JQ7atcGLL2J5NTnUkwZjNtz:  -0.01000000 Waves

2023.05.07 05:43 [2566845] smart account 3MyGZ3AEvGe5JQ7atcGLL2J5NTnUkwZjNtz > SELF 0.00000000 Waves

{ "type": 13, "id": "5pBfvRxwi4c4BoMAyMLMyQD5MrJhDmN9wL58afJS9hAn", "fee": 1000000, "feeAssetId": null, "timestamp": 1683427452459, "version": 2, "chainId": 84, "sender": "3MyGZ3AEvGe5JQ7atcGLL2J5NTnUkwZjNtz", "senderPublicKey": "DhZAjzJ6qSviDheXhhVx4Php3axrp53pA1T7cHk9TLLh", "proofs": [ "25edchiMiHASPWc3Zp7wJTnWc2TKxmpc1YUgSwaa4Z32zpSXQ9c3BNxLxkhYmyWzQoQiHXuvtCFDnbt6wcy3NPSW" ], "script": "base64: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", "height": 2566845, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: 2G1XfBNN2NQBbjwTGKffxD7XJCFSXQ3dDHpkTCFj69SR Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 5 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+let bigIntHashDivisorCoinFLip = pow(10, 0, 16, 0, 0, HALFUP)
5+
6+let bigIntHashDivisorCoinBet = pow(10, 0, 16, 0, 0, HALFUP)
7+
8+func isNegative (n) = if ((0 > n))
9+ then (n * -1)
10+ else n
11+
12+
13+@Callable(i)
14+func addAdmin (address) = {
15+ let adm = if (isDefined(getString("admin")))
16+ then fromBase58String(getStringValue("admin"))
17+ else i.caller.bytes
18+ if (if ((i.caller.bytes == adm))
19+ then true
20+ else (i.caller.bytes == this.bytes))
21+ then [StringEntry("admin", address)]
22+ else throw("Error: Only administrator can call this function.")
23+ }
24+
25+
26+
27+@Callable(i)
28+func blockAddress (address,isBlock) = {
29+ let adm = if (isDefined(getString("admin")))
30+ then fromBase58String(getStringValue("admin"))
31+ else i.caller.bytes
32+ if (if ((i.caller.bytes == adm))
33+ then true
34+ else (i.caller.bytes == this.bytes))
35+ then [BooleanEntry(("address_blocked_" + address), isBlock)]
36+ else throw("Error: Only administrator can call this function.")
37+ }
38+
39+
40+
41+@Callable(i)
42+func betToNumber (number,ref) = if (isDefined(getString(("address_blocked_" + toBase58String(i.caller.bytes)))))
43+ then throw("Error: Your address is on the Waves Play blacklist.")
44+ else if (if ((100000 > i.payments[0].amount))
45+ then true
46+ else (i.payments[0].amount > 1000000000))
47+ then throw("Invalid Waves amount. Min value: 0.1 Waves. Max Value: 10 Waves")
48+ else if ((i.payments[0].assetId != unit))
49+ then throw("Invalid assetId")
50+ else if (if ((0 >= number))
51+ then true
52+ else (number >= 99))
53+ then throw("Error: Invalid Number")
54+ else {
55+ let x = if (isDefined(getInteger((toBase58String(i.caller.bytes) + "_bets"))))
56+ then getIntegerValue((toBase58String(i.caller.bytes) + "_bets"))
57+ else 0
58+ let ref1 = if ((ref == ""))
59+ then toBase58String(this.bytes)
60+ else ref
61+ let toRef = ((i.payments[0].amount * 1) / 100)
62+ let lastTx = if (isDefined(getString("last_tx_bet")))
63+ then (isNegative(toInt(sha256(fromBase58String(getStringValue("last_tx_bet"))))) / bigIntHashDivisorCoinBet)
64+ else (isNegative(toInt(sha256(sha256(i.transactionId)))) / bigIntHashDivisorCoinBet)
65+ let txxz = (isNegative(toInt(sha256(i.transactionId))) / bigIntHashDivisorCoinBet)
66+ let f = if ((txxz > lastTx))
67+ then (txxz - lastTx)
68+ else (lastTx - txxz)
69+ let result = if ((f > number))
70+ then "win"
71+ else "loss"
72+ let transfr = if ((result == "win"))
73+ then (9900000000 / (99 - number))
74+ else 0
75+ let transfer = ((i.payments[0].amount * transfr) / 100000000)
76+ let txPay = if ((transfer == 0))
77+ then IntegerEntry(((toBase58String(this.bytes) + "_") + toBase58String(i.caller.bytes)), i.payments[0].amount)
78+ else ScriptTransfer(Address(i.caller.bytes), transfer, unit)
79+ let reftx = if ((ref1 == toBase58String(this.bytes)))
80+ then IntegerEntry((((toBase58String(this.bytes) + "_") + toBase58String(i.caller.bytes)) + "_ref"), toRef)
81+ else ScriptTransfer(Address(fromBase58String(ref1)), toRef, unit)
82+[IntegerEntry((((toBase58String(i.caller.bytes) + "_bet_") + toString((x + 1))) + "_mult"), transfr), IntegerEntry((toBase58String(i.caller.bytes) + "_bets"), (x + 1)), IntegerEntry((((toBase58String(i.caller.bytes) + "_bet_") + toString((x + 1))) + "_value"), number), IntegerEntry((((toBase58String(i.caller.bytes) + "_bet_") + toString((x + 1))) + "_result_number"), f), StringEntry(((toBase58String(i.caller.bytes) + "_bet_") + toString((x + 1))), toBase58String(i.transactionId)), StringEntry((((toBase58String(i.caller.bytes) + "_bet_") + toString((x + 1))) + "_ref"), ref1), IntegerEntry((((toBase58String(i.caller.bytes) + "_bet_") + toString((x + 1))) + "_block"), height), IntegerEntry((((toBase58String(i.caller.bytes) + "_bet_") + toString((x + 1))) + "_transfer_final"), transfer), StringEntry("last_tx_coinflip", toBase58String(i.transactionId)), reftx, StringEntry((((toBase58String(i.caller.bytes) + "_bet_") + toString((x + 1))) + "_result"), result), txPay]
83+ }
84+
85+
86+
87+@Callable(i)
88+func betCoinFlip (isHeads,ref) = if (isDefined(getString(("address_blocked_" + toBase58String(i.caller.bytes)))))
89+ then throw("Error: Your address is on the Waves Play blacklist.")
90+ else if (if ((100000 > i.payments[0].amount))
91+ then true
92+ else (i.payments[0].amount > 1000000000))
93+ then throw("Invalid Waves amount. Min value: 0.1 Waves. Max Value: 10 Waves")
94+ else if ((i.payments[0].assetId != unit))
95+ then throw("Invalid assetId")
96+ else {
97+ let x = if (isDefined(getInteger((toBase58String(i.caller.bytes) + "_bets"))))
98+ then getIntegerValue((toBase58String(i.caller.bytes) + "_bets"))
99+ else 0
100+ let ref1 = if ((ref == ""))
101+ then toBase58String(this.bytes)
102+ else ref
103+ let toRef = ((i.payments[0].amount * 1) / 100)
104+ let lastTx = if (isDefined(getString("last_tx_bet")))
105+ then (isNegative(toInt(sha256(fromBase58String(getStringValue("last_tx_bet"))))) / bigIntHashDivisorCoinFLip)
106+ else (isNegative(toInt(sha256(sha256(i.transactionId)))) / bigIntHashDivisorCoinFLip)
107+ let txxz = (isNegative(toInt(sha256(i.transactionId))) / bigIntHashDivisorCoinFLip)
108+ let f = if ((txxz > lastTx))
109+ then (txxz - lastTx)
110+ else (lastTx - txxz)
111+ let result_w = if (if (if (if (if ((f == 0))
112+ then true
113+ else (f == 2))
114+ then true
115+ else (f == 4))
116+ then true
117+ else (f == 6))
118+ then true
119+ else (f == 8))
120+ then "heads"
121+ else "tails"
122+ let result = if (if (if (isHeads)
123+ then if (if (if (if ((f == 0))
124+ then true
125+ else (f == 2))
126+ then true
127+ else (f == 4))
128+ then true
129+ else (f == 6))
130+ then true
131+ else (f == 8)
132+ else false)
133+ then true
134+ else if (!(isHeads))
135+ then if (if (if (if ((f == 1))
136+ then true
137+ else (f == 3))
138+ then true
139+ else (f == 5))
140+ then true
141+ else (f == 7))
142+ then true
143+ else (f == 9)
144+ else false)
145+ then "win"
146+ else "loss"
147+ let transfer = if ((result == "win"))
148+ then (i.payments[0].amount * 2)
149+ else 0
150+ let txPay = if ((transfer == 0))
151+ then IntegerEntry(((toBase58String(this.bytes) + "_") + toBase58String(i.caller.bytes)), i.payments[0].amount)
152+ else ScriptTransfer(Address(i.caller.bytes), (i.payments[0].amount * 2), unit)
153+ let reftx = if ((ref1 == toBase58String(this.bytes)))
154+ then IntegerEntry((((toBase58String(this.bytes) + "_") + toBase58String(i.caller.bytes)) + "_ref"), toRef)
155+ else ScriptTransfer(Address(fromBase58String(ref1)), toRef, unit)
156+[IntegerEntry((toBase58String(i.caller.bytes) + "_bets"), (x + 1)), BooleanEntry((((toBase58String(i.caller.bytes) + "_bet_") + toString((x + 1))) + "_value"), isHeads), StringEntry(((toBase58String(i.caller.bytes) + "_bet_") + toString((x + 1))), toBase58String(i.transactionId)), StringEntry((((toBase58String(i.caller.bytes) + "_bet_") + toString((x + 1))) + "_ref"), ref1), IntegerEntry((((toBase58String(i.caller.bytes) + "_bet_") + toString((x + 1))) + "_block"), height), StringEntry("last_tx_coinflip", toBase58String(i.transactionId)), StringEntry((((toBase58String(i.caller.bytes) + "_bet_") + toString((x + 1))) + "_heads_or_tails"), result_w), reftx, StringEntry((((toBase58String(i.caller.bytes) + "_bet_") + toString((x + 1))) + "_result"), result), txPay]
157+ }
158+
159+
160+@Verifier(tx)
161+func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
162+

github/deemru/w8io/169f3d6 
20.73 ms