tx · us41VUCFRavJrc21o4vbyb7ssEtcaVoc7yPuJLjWWk9

3N5q1m8whV3SztrPuN3z5sbKsEm3ZeSYF2T:  -0.01600000 Waves

2024.06.06 16:51 [3138903] smart account 3N5q1m8whV3SztrPuN3z5sbKsEm3ZeSYF2T > SELF 0.00000000 Waves

{ "type": 13, "id": "us41VUCFRavJrc21o4vbyb7ssEtcaVoc7yPuJLjWWk9", "fee": 1600000, "feeAssetId": null, "timestamp": 1717681828927, "version": 2, "chainId": 84, "sender": "3N5q1m8whV3SztrPuN3z5sbKsEm3ZeSYF2T", "senderPublicKey": "BNpSmh5j4pzfsxKnEskdG2d4wxQZgbJwnFb5hC7NgrsA", "proofs": [ "ByK36SJRH1L7JYSn32QtSYw4EKWFCwRbjVFwbfMAycQ5WzmkvfjJAx1gAqn6PUJhRne3KH16NUJSdvxVTFfYrhW" ], "script": "base64:AAIFAAAAAAAAADwIAhIDCgEIEgQKAggEEgcKBQgICAgIEgASBAoCCAESBAoCCAESBAoCCAESBAoCCAESCgoICAEBAQEBCAEAAAAZAAAAAAhhZG1pbm1zZwIAAAApRXJyb3I6IE9ubHkgYWRtaW4gY2FuIGNhbGwgdGhpcyBmdW5jdGlvbiEAAAAADmludmFsaWRBZGRyZXNzAgAAABdFcnJvcjogQWRkcmVzcyBpbnZhbGlkIQAAAAAPaW52YWxpZFRva2VuTXNnAgAAABVFcnJvcjogSW52YWxpZCBBc3NldCEAAAAADW1hdGNoTXNnRXJyb3ICAAAAakVycm9yOiBZb3UgYXJlIGFscmVhZHkgcGFydGljaXBhdGluZyBpbiBhIHJvb20uIFRyeSB0byBlbmQgaXQgb3IgbGVhdmUgdGhlIHJvb20gYnkgYWNjZXNzaW5nICdJbiBQcm9ncmVzcycAAAAACWJhbm5lZG1zZwIAAAA0RXJyb3I6IHRoZSB1c2VyIGhhcyBiZWVuIGJhbm5lZCBieSBhbiBhZG1pbmlzdHJhdG9yLgAAAAAGT3JhY2xlAgAAACMzTXh1ZFhOdHJQRXhOdEc5TXNHVjZlMWtpenV5YmdwaVZxMgAAAAAOcm9vbUV4aXN0RXJyb3ICAAAAcEVycm9yOiBZb3UgYWxyZWFkeSBoYXZlIGEgcHJldmlvdXNseSBjcmVhdGVkIHJvb20uIEdvIHRvICdJbiBQcm9ncmVzcycgYW5kIGNsb3NlIHlvdXIgcm9vbSB0byBjcmVhdGUgYSBuZXcgZ2FtZS4AAAAAD2JhbGFuY2VFcnJvck1zZwIAAABCRXJyb3I6IFlvdSBoYXZlIG5vIGFtb3VudCBkZXBvc2l0ZWQgYXMgYSBjaGlwIGluIHRoZSBwb2tlciBtb2R1bGUuAAAAAA53aGl0aGRyYXdFcnJvcgIAAABURXJyb3I6IEFtb3VudCB5b3Ugd2FudCB0byB3aXRoZHJhdyBncmVhdGVyIHRoYW4gdGhlIGFtb3VudCBhdmFpbGFibGUgZm9yIHdpdGhkcmF3YWwuAAAAABFyb29tRXJyb3JOb3RFeGlzdAIAAAAxRXJyb3I6VGhlIHJvb20geW91IHdhbnQgdG8gam9pbiBubyBsb25nZXIgZXhpc3RzLgAAAAAKZXJyb3JH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", "height": 3138903, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 5getpkRd5wzVxfGyyoQUFuTxkZcdDPDf7QF3HFQtesdn Next: DBHNdfuBXN9ekfFvyoKMKJisbZTiRMWAptjRp1aeq2V6 Diff:
OldNewDifferences
133133 else if (if (if (if (if ((address1 != ""))
134134 then isValidAddress(address1)
135135 else false)
136- then if ((address2 != ""))
136+ then true
137+ else if ((address2 != ""))
137138 then isValidAddress(address2)
138- else false
139- else false)
140- then if ((address3 != ""))
139+ else false)
140+ then true
141+ else if ((address3 != ""))
141142 then isValidAddress(address3)
142- else false
143- else false)
144- then if ((address4 != ""))
143+ else false)
144+ then true
145+ else if ((address4 != ""))
145146 then isValidAddress(address4)
146- else false
147- else false)
147+ else false)
148148 then [BooleanEntry(((kk + "_height_") + toString(height)), true), IntegerEntry((kk + "_height_latest"), height), StringEntry(((("address1_" + kk) + "_") + toString(height)), address1), StringEntry(((("address2_" + kk) + "_") + toString(height)), address2), StringEntry(((("address3_" + kk) + "_") + toString(height)), address3), StringEntry(((("address4_" + kk) + "_") + toString(height)), address4), StringEntry((((kk + "_height_") + toString(height)) + "_token"), assetId), BooleanEntry((kk + "_isMatch"), true), BooleanEntry(kk, true)]
149149 else throw(invalidAddress)
150150 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let adminmsg = "Error: Only admin can call this function!"
55
66 let invalidAddress = "Error: Address invalid!"
77
88 let invalidTokenMsg = "Error: Invalid Asset!"
99
1010 let matchMsgError = "Error: You are already participating in a room. Try to end it or leave the room by accessing 'In Progress'"
1111
1212 let bannedmsg = "Error: the user has been banned by an administrator."
1313
1414 let Oracle = "3MxudXNtrPExNtG9MsGV6e1kizuybgpiVq2"
1515
1616 let roomExistError = "Error: You already have a previously created room. Go to 'In Progress' and close your room to create a new game."
1717
1818 let balanceErrorMsg = "Error: You have no amount deposited as a chip in the poker module."
1919
2020 let whithdrawError = "Error: Amount you want to withdraw greater than the amount available for withdrawal."
2121
2222 let roomErrorNotExist = "Error:The room you want to join no longer exists."
2323
2424 let errorGuest = "Error: You have not been invited to join this room."
2525
2626 let errorMainGuest = "Error: You are the creator of the room."
2727
2828 let errorCloseRoom = "Error: Only the room creator can close the room."
2929
3030 func errorTokenInvalidAmount (assetId) = (("Error: You do not have enough chips in the poker module for asset " + assetId) + ". Go to 'Select Token', select the token you are using and click 'Deposit'.")
3131
3232
3333 func isValidToken (tokenId) = if ((tokenId == "WAVES"))
3434 then true
3535 else isDefined(getBoolean(Address(fromBase58String(Oracle)), tokenId))
3636
3737
3838 func convertToken (tokenId) = if ((tokenId == "WAVES"))
3939 then unit
4040 else fromBase58String(tokenId)
4141
4242
4343 func isValidAddress (address) = (addressFromString(address) != unit)
4444
4545
4646 func isGuest (address,Room,heightRoom) = {
4747 let address1 = getStringValue(((("address1_" + Room) + "_") + toString(heightRoom)))
4848 let address2 = getStringValue(((("address2_" + Room) + "_") + toString(heightRoom)))
4949 let address3 = getStringValue(((("address3_" + Room) + "_") + toString(heightRoom)))
5050 let address4 = getStringValue(((("address4_" + Room) + "_") + toString(heightRoom)))
5151 if (if (if ((address == address1))
5252 then true
5353 else (address == address2))
5454 then true
5555 else (address == address3))
5656 then true
5757 else (address == address4)
5858 }
5959
6060
6161 func getBalanceToken (address,tokenId) = if (isDefined(getInteger(((address + "_") + tokenId))))
6262 then getIntegerValue(((address + "_") + tokenId))
6363 else 0
6464
6565
6666 func tokenRoom (address,heightRoom) = getStringValue((((address + "_height_") + toString(heightRoom)) + "_token"))
6767
6868
6969 func isSufficientBalance (address,tokenId) = (getBalanceToken(address, tokenId) > 0)
7070
7171
7272 func isAdmin (address) = {
7373 let c = toBase58String(address)
7474 if (isDefined(getString("admin")))
7575 then if (if ((c == getStringValue("admin")))
7676 then true
7777 else (c == toBase58String(this.bytes)))
7878 then true
7979 else false
8080 else if ((c == toBase58String(this.bytes)))
8181 then true
8282 else false
8383 }
8484
8585
8686 func isMatch (address) = {
8787 let c = toBase58String(address)
8888 if (isDefined(getBoolean((c + "_isMatch"))))
8989 then true
9090 else false
9191 }
9292
9393
9494 func isBanned (address) = if (isDefined(getBoolean((address + "_banned"))))
9595 then getBooleanValue((address + "_banned"))
9696 else false
9797
9898
9999 func isRoomExist (address) = isDefined(getBoolean(address))
100100
101101
102102 @Callable(i)
103103 func addAdmin (address) = if (isAdmin(i.caller.bytes))
104104 then if (isValidAddress(address))
105105 then [StringEntry("admin", address)]
106106 else throw(invalidAddress)
107107 else throw(adminmsg)
108108
109109
110110
111111 @Callable(i)
112112 func ban (address,isBanned) = if (isAdmin(i.caller.bytes))
113113 then if (isValidAddress(address))
114114 then [BooleanEntry((address + "_banned"), isBanned)]
115115 else throw(invalidAddress)
116116 else throw(adminmsg)
117117
118118
119119
120120 @Callable(i)
121121 func new (assetId,address1,address2,address3,address4) = {
122122 let kk = toBase58String(i.caller.bytes)
123123 if (isBanned(kk))
124124 then throw(bannedmsg)
125125 else if (!(isValidToken(assetId)))
126126 then throw(invalidTokenMsg)
127127 else if (isMatch(i.caller.bytes))
128128 then throw(matchMsgError)
129129 else if (!(isSufficientBalance(kk, assetId)))
130130 then throw(errorTokenInvalidAmount(assetId))
131131 else if (isRoomExist(kk))
132132 then throw(roomExistError)
133133 else if (if (if (if (if ((address1 != ""))
134134 then isValidAddress(address1)
135135 else false)
136- then if ((address2 != ""))
136+ then true
137+ else if ((address2 != ""))
137138 then isValidAddress(address2)
138- else false
139- else false)
140- then if ((address3 != ""))
139+ else false)
140+ then true
141+ else if ((address3 != ""))
141142 then isValidAddress(address3)
142- else false
143- else false)
144- then if ((address4 != ""))
143+ else false)
144+ then true
145+ else if ((address4 != ""))
145146 then isValidAddress(address4)
146- else false
147- else false)
147+ else false)
148148 then [BooleanEntry(((kk + "_height_") + toString(height)), true), IntegerEntry((kk + "_height_latest"), height), StringEntry(((("address1_" + kk) + "_") + toString(height)), address1), StringEntry(((("address2_" + kk) + "_") + toString(height)), address2), StringEntry(((("address3_" + kk) + "_") + toString(height)), address3), StringEntry(((("address4_" + kk) + "_") + toString(height)), address4), StringEntry((((kk + "_height_") + toString(height)) + "_token"), assetId), BooleanEntry((kk + "_isMatch"), true), BooleanEntry(kk, true)]
149149 else throw(invalidAddress)
150150 }
151151
152152
153153
154154 @Callable(i)
155155 func Deposit () = {
156156 let tId = match i.payments[0].assetId {
157157 case t: ByteVector =>
158158 toBase58String(t)
159159 case _ =>
160160 "WAVES"
161161 }
162162 let kk = toBase58String(i.caller.bytes)
163163 if (isBanned(kk))
164164 then throw(bannedmsg)
165165 else if (!(isValidToken(tId)))
166166 then throw(invalidTokenMsg)
167167 else if (isMatch(i.caller.bytes))
168168 then throw(matchMsgError)
169169 else [IntegerEntry(((kk + "_") + tId), (i.payments[0].amount + getBalanceToken(kk, tId)))]
170170 }
171171
172172
173173
174174 @Callable(i)
175175 func Withdraw (tId,amount) = {
176176 let kk = toBase58String(i.caller.bytes)
177177 if (isBanned(kk))
178178 then throw(bannedmsg)
179179 else if (!(isValidToken(tId)))
180180 then throw(invalidTokenMsg)
181181 else if (isMatch(i.caller.bytes))
182182 then throw(matchMsgError)
183183 else if ((getBalanceToken(kk, tId) == 0))
184184 then throw(balanceErrorMsg)
185185 else if ((amount > getBalanceToken(kk, tId)))
186186 then throw(whithdrawError)
187187 else [ScriptTransfer(i.caller, amount, convertToken(tId)), IntegerEntry(((kk + "_") + tId), (getBalanceToken(kk, tId) - amount))]
188188 }
189189
190190
191191
192192 @Callable(i)
193193 func join (address,heightRoom) = {
194194 let kk = toBase58String(i.caller.bytes)
195195 if (isBanned(kk))
196196 then throw(bannedmsg)
197197 else if (isMatch(i.caller.bytes))
198198 then throw(matchMsgError)
199199 else if (!(isRoomExist(address)))
200200 then throw(roomErrorNotExist)
201201 else if (!(isSufficientBalance(kk, tokenRoom(address, heightRoom))))
202202 then throw(errorTokenInvalidAmount(tokenRoom(address, heightRoom)))
203203 else if (!(isGuest(kk, address, heightRoom)))
204204 then throw(errorGuest)
205205 else [BooleanEntry((kk + "_isMatch"), true), StringEntry((kk + "_matchIn"), address), IntegerEntry((kk + "_match_height"), heightRoom)]
206206 }
207207
208208
209209
210210 @Callable(i)
211211 func leaveRoom (address,heightRoom) = {
212212 let kk = toBase58String(i.caller.bytes)
213213 if (isMatch(i.caller.bytes))
214214 then throw(matchMsgError)
215215 else if (!(isRoomExist(address)))
216216 then throw(roomErrorNotExist)
217217 else if (!(isGuest(kk, address, heightRoom)))
218218 then throw(errorGuest)
219219 else if ((address == toBase58String(i.caller.bytes)))
220220 then throw(errorMainGuest)
221221 else [DeleteEntry((kk + "_isMatch")), DeleteEntry((kk + "_matchIn")), DeleteEntry((kk + "_match_height"))]
222222 }
223223
224224
225225
226226 @Callable(i)
227227 func CloseRoom (address,heightRoom) = {
228228 let kk = toBase58String(i.caller.bytes)
229229 if (isMatch(i.caller.bytes))
230230 then throw(matchMsgError)
231231 else if (!(isRoomExist(address)))
232232 then throw(roomErrorNotExist)
233233 else if ((address == toBase58String(i.caller.bytes)))
234234 then [DeleteEntry((kk + "_isMatch")), DeleteEntry((kk + "_matchIn")), DeleteEntry((kk + "_match_height")), BooleanEntry(((kk + "_height_") + toString(height)), false), BooleanEntry((kk + "_isMatch"), false), BooleanEntry(kk, false)]
235235 else throw(errorCloseRoom)
236236 }
237237
238238
239239
240240 @Callable(i)
241241 func setWinner (winner,address1Value,address2Value,address3Value,address4Value,mainAddressValue,addressRoom,heightRoom) = if (isAdmin(i.caller.bytes))
242242 then {
243243 let a = (((address1Value + address2Value) + address3Value) + address4Value)
244244 let address1 = getStringValue(((("address1_" + addressRoom) + "_") + toString(heightRoom)))
245245 let address2 = getStringValue(((("address2_" + addressRoom) + "_") + toString(heightRoom)))
246246 let address3 = getStringValue(((("address3_" + addressRoom) + "_") + toString(heightRoom)))
247247 let address4 = getStringValue(((("address4_" + addressRoom) + "_") + toString(heightRoom)))
248248 [ScriptTransfer(Address(fromBase58String(getStringValue("admin"))), ((a * 4) / 100), convertToken(tokenRoom(addressRoom, heightRoom))), StringEntry((((addressRoom + "_height_") + toString(height)) + "_winner"), winner), BooleanEntry(((addressRoom + "_height_") + toString(height)), false), BooleanEntry((addressRoom + "_isMatch"), false), BooleanEntry(addressRoom, false), DeleteEntry((addressRoom + "_isMatch")), DeleteEntry((addressRoom + "_matchIn")), DeleteEntry((addressRoom + "_match_height")), IntegerEntry(((winner + "_") + tokenRoom(addressRoom, heightRoom)), (getBalanceToken(winner, tokenRoom(addressRoom, heightRoom)) + (a - ((a * 4) / 100)))), IntegerEntry(((addressRoom + "_") + tokenRoom(addressRoom, heightRoom)), (getBalanceToken(addressRoom, tokenRoom(addressRoom, heightRoom)) - mainAddressValue)), IntegerEntry(((address1 + "_") + tokenRoom(addressRoom, heightRoom)), (getBalanceToken(address1, tokenRoom(addressRoom, heightRoom)) - address1Value)), IntegerEntry(((address2 + "_") + tokenRoom(addressRoom, heightRoom)), (getBalanceToken(address2, tokenRoom(addressRoom, heightRoom)) - address2Value)), IntegerEntry(((address3 + "_") + tokenRoom(addressRoom, heightRoom)), (getBalanceToken(address3, tokenRoom(addressRoom, heightRoom)) - address3Value)), IntegerEntry(((address4 + "_") + tokenRoom(addressRoom, heightRoom)), (getBalanceToken(address4, tokenRoom(addressRoom, heightRoom)) - address4Value))]
249249 }
250250 else throw(adminmsg)
251251
252252
253253 @Verifier(tx)
254254 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
255255

github/deemru/w8io/03bedc9 
43.40 ms