tx · BaLifCGSBEWHWWZXwMXstrAascqfzapLP7F3cdKAU97R

3N3mV2Baor8EY7CYQ7QgAm3tL8KruH1VpKA:  -0.01000000 Waves

2021.07.24 09:01 [1627328] smart account 3N3mV2Baor8EY7CYQ7QgAm3tL8KruH1VpKA > SELF 0.00000000 Waves

{ "type": 13, "id": "BaLifCGSBEWHWWZXwMXstrAascqfzapLP7F3cdKAU97R", "fee": 1000000, "feeAssetId": null, "timestamp": 1627106505701, "version": 2, "chainId": 84, "sender": "3N3mV2Baor8EY7CYQ7QgAm3tL8KruH1VpKA", "senderPublicKey": "4P5V3b5K49wXNGa4M6SwDgHAMBa582FxTsF5qjWePQo3", "proofs": [ "ihJAGy6cVYeNjZ8i88f4gPepymDCR7j5q4UJ4Uo3U4PMTidLTy4qtixVGn2P4qX1eddV5hTEt4DYJMxyqhym6Du" ], "script": "base64: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b3J0ZSEDCQAAZgAAAAIAAAAAAAAAAAAJAAPwAAAAAgUAAAAKY3VycmVudEtleQUAAAAGdW5kZWFkCQAAAgAAAAECAAAAYUUgbmVjZXNzw6FyaW8gdGVyIG8gdG9rZW4gZG8gZGVjayBlbSBzdWEgY2FydGVpcmEhIFBhcmEgYWRxdWlyaXIsIHJlYWxpemUgYSBjb21wcmEgZW0gU3dhcCBEZWNrcy4DCQAAAAAAAAIFAAAADmtpbmdPZnRoZUFyZW5hAgAAAAAJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgIAAAAOa2luZ09mdGhlQXJlbmEFAAAAD2N1cnJlbnRLZXlCeXRlcwUAAAADbmlsAwMJAAAAAAAAAgUAAAAOY2FyZEluVGhlQXJlbmECAAAAAAYJAAAAAAAAAgUAAAAQcGxheWVySW5UaGVBcmVuYQIAAAAACQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAICAAAAEHBsYXllckluVGhlQXJlbmEFAAAAEHBsYXllckluVGhlQXJlbmEJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgIAAAAOY2FyZEluVGhlQXJlbmEFAAAACGNhcmROYW1lCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAAA5hcmVuYUNhcmRTY29yZQUAAAAQY3VycmVudENhcmRTY29yZQUAAAADbmlsAwkAAAAAAAACBQAAABFjdXJyZW50Q2FyZFN0YXR1cwIAAAAEVXNlZAkAAAIAAAABAgAAAB1Fc3RhIGNhcnRhIGrDoSBmb2kgdXRpbGl6YWRhIQQAAAAGd2lubmVyAwkAAGYAAAACBQAAABBjdXJyZW50Q2FyZFNjb3JlBQAAAA5hcmVuYUNhcmRTY29yZQUAAAAPY3VycmVudEtleUJ5dGVzBQAAABBwbGF5ZXJJblRoZUFyZW5hBAAAAAt3aW5uaW5nQ2FyZAMJAABmAAAAAgUAAAAQY3VycmVudENhcmRTY29yZQUAAAAOYXJlbmFDYXJkU2NvcmUFAAAAD2N1cnJlbnRLZXlCeXRlcwUAAAAQcGxheWVySW5UaGVBcmVuYQQAAAAccG9pbnRzUmVtYWluaW5nT25XaW5uaW5nQ2FyZAMJAABmAAAAAgUAAAAQY3VycmVudENhcmRTY29yZQUAAAAOYXJlbmFDYXJkU2NvcmUJAABlAAAAAgUAAAAQY3VycmVudENhcmRTY29yZQUAAAAOYXJlbmFDYXJkU2NvcmUJAABlAAAAAgUAAAAOYXJlbmFDYXJkU2NvcmUFAAAAEGN1cnJlbnRDYXJkU2NvcmUJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgIAAAARcGxheWVySW50VGhlQXJlbmEFAAAABndpbm5lcgkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACAgAAAA5jYXJkSW5UaGVBcmVuYQUAAAAIY2FyZE5hbWUJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAADmFyZW5hQ2FyZFNjb3JlBQAAABxwb2ludHNSZW1haW5pbmdPbldpbm5pbmdDYXJkBQAAAANuaWwAAAAAHlsz8w==", "height": 1627328, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 9rs74Nh8Hivd1TitQAUGMggTbykrBNxJCfExpMUqUY4S Next: FmYuJTKASXeq54swy8UYfMEnKZTC16KTLLcBNzTudX4E Diff:
OldNewDifferences
6161 else if (if ((cardInTheArena == ""))
6262 then true
6363 else (playerInTheArena == ""))
64- then [StringEntry("playerIntTheArena", playerInTheArena), StringEntry("cardInTheArena", cardName), IntegerEntry("arenaCardScore", currentCardScore)]
64+ then [StringEntry("playerInTheArena", playerInTheArena), StringEntry("cardInTheArena", cardName), IntegerEntry("arenaCardScore", currentCardScore)]
6565 else if ((currentCardStatus == "Used"))
6666 then throw("Esta carta já foi utilizada!")
6767 else {
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44
55
66 @Callable(inv)
77 func play (card,class) = {
88 let currentKey = inv.caller
99 let btcAmount = value(inv.payments[0].amount)
1010 let currentKeyBytes = toBase58String(inv.caller.bytes)
1111 let cardName = ((class + "_") + card)
1212 let cardNameCurrentPlayer = ((((class + "_") + card) + "_") + currentKeyBytes)
1313 let undead = base58'3btiz2mNkbcFhcAww6Zn6WaRtDY3mLHf2dbJHNNbdUFk'
1414 let cardsGame = ["Undead_01", "Undead_02", "Undead_03", "Undead_04", "Undead_05", "Undead_07", "Undead_08", "Undead_09", "Undead_10"]
1515 let classGame = ["Undead"]
1616 let assetsGame = ["3btiz2mNkbcFhcAww6Zn6WaRtDY3mLHf2dbJHNNbdUFk"]
1717 let kingOftheArena = match getString(this, "kingOftheArena") {
1818 case a: String =>
1919 a
2020 case _ =>
2121 ""
2222 }
2323 let currentCardStatus = match getString(this, ("status_" + cardNameCurrentPlayer)) {
2424 case t: String =>
2525 t
2626 case _ =>
2727 ""
2828 }
2929 let currentCardScore = match getInteger(this, ("score_" + cardName)) {
3030 case t: Int =>
3131 t
3232 case _ =>
3333 0
3434 }
3535 let playerInTheArena = match getString(this, "playerInTheArena") {
3636 case t: String =>
3737 t
3838 case _ =>
3939 ""
4040 }
4141 let cardInTheArena = match getString(this, "cardInTheArena") {
4242 case t: String =>
4343 t
4444 case _ =>
4545 ""
4646 }
4747 let arenaCardScore = match getInteger(this, "arenaCardScore") {
4848 case t: Int =>
4949 t
5050 case _ =>
5151 0
5252 }
5353 if (if (!(containsElement(classGame, class)))
5454 then !(containsElement(cardsGame, card))
5555 else false)
5656 then throw("A classe enviada não existe no game! Por favor contate o suporte!")
5757 else if ((0 > assetBalance(currentKey, undead)))
5858 then throw("E necessário ter o token do deck em sua carteira! Para adquirir, realize a compra em Swap Decks.")
5959 else if ((kingOftheArena == ""))
6060 then [StringEntry("kingOftheArena", currentKeyBytes)]
6161 else if (if ((cardInTheArena == ""))
6262 then true
6363 else (playerInTheArena == ""))
64- then [StringEntry("playerIntTheArena", playerInTheArena), StringEntry("cardInTheArena", cardName), IntegerEntry("arenaCardScore", currentCardScore)]
64+ then [StringEntry("playerInTheArena", playerInTheArena), StringEntry("cardInTheArena", cardName), IntegerEntry("arenaCardScore", currentCardScore)]
6565 else if ((currentCardStatus == "Used"))
6666 then throw("Esta carta já foi utilizada!")
6767 else {
6868 let winner = if ((currentCardScore > arenaCardScore))
6969 then currentKeyBytes
7070 else playerInTheArena
7171 let winningCard = if ((currentCardScore > arenaCardScore))
7272 then currentKeyBytes
7373 else playerInTheArena
7474 let pointsRemainingOnWinningCard = if ((currentCardScore > arenaCardScore))
7575 then (currentCardScore - arenaCardScore)
7676 else (arenaCardScore - currentCardScore)
7777 [StringEntry("playerIntTheArena", winner), StringEntry("cardInTheArena", cardName), IntegerEntry("arenaCardScore", pointsRemainingOnWinningCard)]
7878 }
7979 }
8080
8181

github/deemru/w8io/873ac7e 
23.59 ms