tx · 42yeq2QMRqJWxt1Y73nTeJ5C3pzMa9ATEvkPtPetJoJg

3MyswDZXU8YcgX1dfuQgAjitWPJ3cggU2PR:  -0.01000000 Waves

2021.12.22 18:08 [1845628] smart account 3MyswDZXU8YcgX1dfuQgAjitWPJ3cggU2PR > SELF 0.00000000 Waves

{ "type": 13, "id": "42yeq2QMRqJWxt1Y73nTeJ5C3pzMa9ATEvkPtPetJoJg", "fee": 1000000, "feeAssetId": null, "timestamp": 1640185718760, "version": 2, "chainId": 84, "sender": "3MyswDZXU8YcgX1dfuQgAjitWPJ3cggU2PR", "senderPublicKey": "JBFUVQjjvtMqXZeeeJLQyEP8RPmvMWbZHyCfGFnrmWJZ", "proofs": [ "26tg3NofEaZWZofpbFPJCJHRyAni4jSaGwrmxRF3WGMwNSZ1XrsQYy8eHs9WEZSFFpbyvkEunTiyCbRz9EAn7W2M" ], "script": "base64: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", "height": 1845628, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 8WfhNSNwswtuMDxVDZ4e6W4Lx9pXEJXy4rvfCntUYp2N Next: GQkSzkfpfKuDezTo4a9ZWEw2Y963pkrp7nMJz1F8svDG Diff:
OldNewDifferences
5353 case _ =>
5454 0
5555 }
56+ let newTokenPurchase = (i.payments[0].amount * 10000)
5657 let newPower = (power + initialPowerNft)
5758 let nowTimestamp = parseIntValue(timestamp)
5859 let calcRequestTimestamp = (nowTimestamp - rewardTimestamp)
6667 let newSaveReward = if ((power == 0))
6768 then 0
6869 else (saveReward + calcTotalReward)
69- if (if ((action == "Buy NFT"))
70- then ((payAmount / 100000) == initialPowerNft)
71- else false)
72- then [Issue(((take(type, 6) + "_") + take(transactionId, 9)), "", 1, 0, false), IntegerEntry(nameNft, initialPowerNft), IntegerEntry(("power_" + currentWallet), newPower), IntegerEntry(("reward_timestamp_" + currentWallet), nowTimestamp), IntegerEntry(("save_reward_" + currentWallet), newSaveReward)]
73- else if (if (if ((action == "Send NFT"))
74- then (currentWallet == "3N7Ym1WK3ZaFp7Vfjvz6KFRGF6AxsAXm76W")
70+ if ((action == "Buy Tokens"))
71+ then [IntegerEntry(((("token_balance_" + currentWallet) + "_") + transactionId), newTokenPurchase)]
72+ else if (if ((action == "Buy NFT"))
73+ then ((payAmount / 100000) == initialPowerNft)
7574 else false)
76- then (payAmount == 1000000)
77- else false)
78- then [ScriptTransfer(Address(fromBase58String(type)), 1, fromBase58String(valueAction))]
79- else if (if (if ((action == "Request"))
80- then (calcTotalReward > 0)
75+ then [Issue(((take(type, 6) + "_") + take(transactionId, 9)), "", 1, 0, false), IntegerEntry(nameNft, initialPowerNft), IntegerEntry(("power_" + currentWallet), newPower), IntegerEntry(("reward_timestamp_" + currentWallet), nowTimestamp), IntegerEntry(("save_reward_" + currentWallet), newSaveReward)]
76+ else if (if (if ((action == "Send NFT"))
77+ then (currentWallet == "3N7Ym1WK3ZaFp7Vfjvz6KFRGF6AxsAXm76W")
8178 else false)
8279 then (payAmount == 1000000)
8380 else false)
84- then [IntegerEntry(("balance_exan_" + currentWallet), newBalance), IntegerEntry(("reward_timestamp_" + currentWallet), nowTimestamp), IntegerEntry(("save_reward_" + currentWallet), 0)]
85- else if (if ((action == "Withdraw"))
86- then (payAmount == 2000000)
81+ then [ScriptTransfer(Address(fromBase58String(type)), 1, fromBase58String(valueAction))]
82+ else if (if (if ((action == "Request"))
83+ then (calcTotalReward > 0)
8784 else false)
88- then [ScriptTransfer(currentWalletBytes, balance, base58'EF3Lw4y6NTfUUBhp3aSbfKuYEvqxR5EiTYBpvDgDFTa8'), DeleteEntry(("balance_exan_" + currentWallet))]
89- else throw("Não foi possivel atender a sua solicitação! Verifique se possui saldo suficiente para a transação!")
85+ then (payAmount == 1000000)
86+ else false)
87+ then [IntegerEntry(("balance_exan_" + currentWallet), newBalance), IntegerEntry(("reward_timestamp_" + currentWallet), nowTimestamp), IntegerEntry(("save_reward_" + currentWallet), 0)]
88+ else throw("We were unable to fulfill your request! Make sure you have enough balance for the transaction!")
9089 }
9190
9291
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44
55
66 @Callable(i)
77 func start (action,type,valueAction) = {
88 let transactionId = toBase58String(i.transactionId)
99 let currentWalletBytes = i.caller
1010 let payAmount = value(i.payments[0].amount)
1111 let currentWallet = toBase58String(i.caller.bytes)
1212 let nameNft = ((((((("nft_" + type) + "_") + take(transactionId, 10)) + "_") + currentWallet) + "_") + transactionId)
1313 let timestamp = take(toString(lastBlock.timestamp), 10)
1414 let balance = match getInteger(this, ("balance_exan_" + currentWallet)) {
1515 case t: Int =>
1616 t
1717 case _ =>
1818 0
1919 }
2020 let historicId = match getInteger(this, "historicId") {
2121 case t: Int =>
2222 t
2323 case _ =>
2424 0
2525 }
2626 let initialPowerNft = match getInteger(this, ("List_NFT_" + type)) {
2727 case t: Int =>
2828 t
2929 case _ =>
3030 0
3131 }
3232 let power = match getInteger(this, ("power_" + currentWallet)) {
3333 case t: Int =>
3434 t
3535 case _ =>
3636 0
3737 }
3838 let nftPower = match getInteger(this, valueAction) {
3939 case t: Int =>
4040 t
4141 case _ =>
4242 0
4343 }
4444 let rewardTimestamp = match getInteger(this, ("reward_timestamp_" + currentWallet)) {
4545 case t: Int =>
4646 t
4747 case _ =>
4848 0
4949 }
5050 let saveReward = match getInteger(this, ("save_reward_" + currentWallet)) {
5151 case t: Int =>
5252 t
5353 case _ =>
5454 0
5555 }
56+ let newTokenPurchase = (i.payments[0].amount * 10000)
5657 let newPower = (power + initialPowerNft)
5758 let nowTimestamp = parseIntValue(timestamp)
5859 let calcRequestTimestamp = (nowTimestamp - rewardTimestamp)
5960 let calcReward24hours = if ((power > 0))
6061 then (86400 / (power / 100))
6162 else 0
6263 let calcTotalReward = if ((calcReward24hours > 0))
6364 then ((calcRequestTimestamp * 100000000) / calcReward24hours)
6465 else 0
6566 let newBalance = ((balance + calcTotalReward) + saveReward)
6667 let newSaveReward = if ((power == 0))
6768 then 0
6869 else (saveReward + calcTotalReward)
69- if (if ((action == "Buy NFT"))
70- then ((payAmount / 100000) == initialPowerNft)
71- else false)
72- then [Issue(((take(type, 6) + "_") + take(transactionId, 9)), "", 1, 0, false), IntegerEntry(nameNft, initialPowerNft), IntegerEntry(("power_" + currentWallet), newPower), IntegerEntry(("reward_timestamp_" + currentWallet), nowTimestamp), IntegerEntry(("save_reward_" + currentWallet), newSaveReward)]
73- else if (if (if ((action == "Send NFT"))
74- then (currentWallet == "3N7Ym1WK3ZaFp7Vfjvz6KFRGF6AxsAXm76W")
70+ if ((action == "Buy Tokens"))
71+ then [IntegerEntry(((("token_balance_" + currentWallet) + "_") + transactionId), newTokenPurchase)]
72+ else if (if ((action == "Buy NFT"))
73+ then ((payAmount / 100000) == initialPowerNft)
7574 else false)
76- then (payAmount == 1000000)
77- else false)
78- then [ScriptTransfer(Address(fromBase58String(type)), 1, fromBase58String(valueAction))]
79- else if (if (if ((action == "Request"))
80- then (calcTotalReward > 0)
75+ then [Issue(((take(type, 6) + "_") + take(transactionId, 9)), "", 1, 0, false), IntegerEntry(nameNft, initialPowerNft), IntegerEntry(("power_" + currentWallet), newPower), IntegerEntry(("reward_timestamp_" + currentWallet), nowTimestamp), IntegerEntry(("save_reward_" + currentWallet), newSaveReward)]
76+ else if (if (if ((action == "Send NFT"))
77+ then (currentWallet == "3N7Ym1WK3ZaFp7Vfjvz6KFRGF6AxsAXm76W")
8178 else false)
8279 then (payAmount == 1000000)
8380 else false)
84- then [IntegerEntry(("balance_exan_" + currentWallet), newBalance), IntegerEntry(("reward_timestamp_" + currentWallet), nowTimestamp), IntegerEntry(("save_reward_" + currentWallet), 0)]
85- else if (if ((action == "Withdraw"))
86- then (payAmount == 2000000)
81+ then [ScriptTransfer(Address(fromBase58String(type)), 1, fromBase58String(valueAction))]
82+ else if (if (if ((action == "Request"))
83+ then (calcTotalReward > 0)
8784 else false)
88- then [ScriptTransfer(currentWalletBytes, balance, base58'EF3Lw4y6NTfUUBhp3aSbfKuYEvqxR5EiTYBpvDgDFTa8'), DeleteEntry(("balance_exan_" + currentWallet))]
89- else throw("Não foi possivel atender a sua solicitação! Verifique se possui saldo suficiente para a transação!")
85+ then (payAmount == 1000000)
86+ else false)
87+ then [IntegerEntry(("balance_exan_" + currentWallet), newBalance), IntegerEntry(("reward_timestamp_" + currentWallet), nowTimestamp), IntegerEntry(("save_reward_" + currentWallet), 0)]
88+ else throw("We were unable to fulfill your request! Make sure you have enough balance for the transaction!")
9089 }
9190
9291

github/deemru/w8io/873ac7e 
62.14 ms