tx · Hv3HWxyXhvEozZqoKDihLbkt2tr7EHmBTwfh38zBLNYm

3N7Gg64FJ3ESaqn41qu1ete7zmzbmoP1AAV:  -0.01000000 Waves

2021.12.11 21:06 [1829914] smart account 3N7Gg64FJ3ESaqn41qu1ete7zmzbmoP1AAV > SELF 0.00000000 Waves

{ "type": 13, "id": "Hv3HWxyXhvEozZqoKDihLbkt2tr7EHmBTwfh38zBLNYm", "fee": 1000000, "feeAssetId": null, "timestamp": 1639246036353, "version": 2, "chainId": 84, "sender": "3N7Gg64FJ3ESaqn41qu1ete7zmzbmoP1AAV", "senderPublicKey": "5amLtMwixiEesBDKPy9dkFWntG2fNxhTs5n69JbQE9F7", "proofs": [ "2B9Az7WwTJoUUFN3C8DE77UgwHxKNpFo8atrJpsURiMEfPMKQ9yNySyWymnmJA7iyteSiVwQa6mvFvZKLXXTWJnC" ], "script": "base64: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", "height": 1829914, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 2Auxeojrw9j3iAf9qHr9eyyuurhJLnHgaJJPm3wBii1o Next: GZBXMGoGGfhso1RoFvizUwrFNtXiPCVceEKnTx5k2nma Diff:
OldNewDifferences
139139 then "ballance empty "
140140 else ""))))
141141 else ""
142- let datarecs = split(callerData, "|")
143- let newdata = if (callerReceived)
144- then datarecs[0]
145- else ("" + (if ((callerBuylevel == 0))
146- then "|bought1"
147- else ("" + (if ((callerBuylevel == 1))
148- then "|bought1|bought2"
149- else ""))))
150- let deal = if (if (if (balanceok)
151- then callerReceived
152- else false)
153- then pmtok
154- else false)
155- then true
156- else false
157- if (deal)
158- then [StringEntry(toBase58String(i.caller.bytes), newdata), ScriptTransfer(teamAdress, callerPrice, unit), ScriptTransfer(callerAdress, sellamount, token)]
159- else [StringEntry((toBase58String(i.caller.bytes) + "_buy"), mess)]
142+ if ((mess == mess))
143+ then {
144+ let datarecs = split(callerData, "|")
145+ let newdata = if (callerReceived)
146+ then datarecs[0]
147+ else ("" + (if ((callerBuylevel == 0))
148+ then "|bought1"
149+ else ("" + (if ((callerBuylevel == 1))
150+ then "|bought1|bought2"
151+ else ""))))
152+ let deal = if (if (if (balanceok)
153+ then callerReceived
154+ else false)
155+ then pmtok
156+ else false)
157+ then true
158+ else false
159+ if (deal)
160+ then [StringEntry(toBase58String(i.caller.bytes), newdata), ScriptTransfer(teamAdress, callerPrice, unit), ScriptTransfer(callerAdress, sellamount, token)]
161+ else [StringEntry((toBase58String(i.caller.bytes) + "_buy"), mess)]
162+ }
163+ else throw("Strict value is not equal to itself.")
160164 }
161165
162166
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let token = base58'GZc7eKnq2KJwqetRmUzSqr2ZaCGseDZufSocz83sUNoo'
55
66 let airdrop = Address(base58'3N7Gg64FJ3ESaqn41qu1ete7zmzbmoP1AAV')
77
88 let teamAdress = Address(base58'3MovsLjXpJr9HD2vBqmAf7Gze6jwuRxX1fX')
99
1010 @Callable(i)
1111 func reset () = [DeleteEntry(toBase58String(i.caller.bytes)), IntegerEntry("burnt", 0), IntegerEntry("dropped", 0), IntegerEntry("teamgift", 0), IntegerEntry("burningstage", 0)]
1212
1313
1414
1515 @Callable(i)
1616 func call (id58) = {
1717 let currenttime = match blockInfoByHeight(height) {
1818 case block: BlockInfo =>
1919 block.timestamp
2020 case _ =>
2121 throw("Can't find block")
2222 }
2323 let balance = assetBalance(airdrop, token)
2424 let burnamount = match getInteger("burningstage") {
2525 case a: Int =>
2626 if (if ((getIntegerValue("burningstage") == 0))
2727 then (currenttime > 1639131654752)
2828 else false)
2929 then fraction(balance, 10, 100)
3030 else 0
3131 case _ =>
3232 throw("no burningstage")
3333 }
3434 let dropamount = 1000
3535 let teamgift = 10
3636 let trid = fromBase58String(id58)
3737 let callerAdress = Address(i.caller.bytes)
3838 let deadline = 1639230864311
3939 let isenough = if ((balance > dropamount))
4040 then true
4141 else throw("not enough")
4242 if ((isenough == isenough))
4343 then {
4444 let trexists = match transferTransactionById(trid) {
4545 case ttx: TransferTransaction =>
4646 true
4747 case _ =>
4848 false
4949 }
5050 let trtime = match transferTransactionById(trid) {
5151 case ttx: TransferTransaction =>
5252 ttx.timestamp
5353 case _ =>
5454 9999999999999
5555 }
5656 let trsender = match transferTransactionById(trid) {
5757 case ttx: TransferTransaction =>
5858 ttx.sender
5959 case _ =>
6060 airdrop
6161 }
6262 let received = if ((take(valueOrElse(getString(toBase58String(i.caller.bytes)), ""), 8) == "received"))
6363 then true
6464 else false
6565 let isprooved = if (if (if ((trtime > deadline))
6666 then true
6767 else (callerAdress != trsender))
6868 then true
6969 else received)
7070 then false
7171 else true
7272 let result = if (trexists)
7373 then if ((trtime > deadline))
7474 then ("transaction is out of time range: " + toString(trtime))
7575 else ("" + (if ((callerAdress != trsender))
7676 then ((("it is incorrect sender: " + toString(callerAdress)) + " / ") + toString(trsender))
7777 else ("" + (if (received)
7878 then getStringValue(toBase58String(i.caller.bytes))
7979 else ("" + (if (isprooved)
8080 then ("received in " + toString(currenttime))
8181 else ""))))))
8282 else "cant find transaction"
8383 if (isprooved)
8484 then if ((burnamount > 0))
8585 then [ScriptTransfer(callerAdress, dropamount, token), ScriptTransfer(teamAdress, teamgift, token), StringEntry(toBase58String(i.caller.bytes), result), IntegerEntry("dropped", (getIntegerValue("dropped") + dropamount)), IntegerEntry("teamgift", (getIntegerValue("teamgift") + teamgift))]
8686 else [ScriptTransfer(callerAdress, dropamount, token), ScriptTransfer(teamAdress, teamgift, token), StringEntry(toBase58String(i.caller.bytes), result), IntegerEntry("dropped", (getIntegerValue("dropped") + dropamount)), IntegerEntry("teamgift", (getIntegerValue("teamgift") + teamgift))]
8787 else [StringEntry(toBase58String(i.caller.bytes), result)]
8888 }
8989 else throw("Strict value is not equal to itself.")
9090 }
9191
9292
9393
9494 @Callable(i)
9595 func buy () = {
9696 let currenttime = match blockInfoByHeight(height) {
9797 case block: BlockInfo =>
9898 block.timestamp
9999 case _ =>
100100 throw("Can't find block")
101101 }
102102 let balance = assetBalance(airdrop, token)
103103 let sellamount = 1000
104104 let price1 = 1
105105 let price2 = 10
106106 let callerAdress = Address(i.caller.bytes)
107107 let balanceok = if ((balance >= sellamount))
108108 then true
109109 else false
110110 let callerData = valueOrElse(getString(toBase58String(i.caller.bytes)), "")
111111 let callerReceived = if ((take(callerData, 8) == "received"))
112112 then true
113113 else false
114114 let callerBuylevel = if (if (callerReceived)
115115 then (size(split(callerData, "|")) == 1)
116116 else false)
117117 then 0
118118 else if (if (callerReceived)
119119 then (size(split(callerData, "|")) == 2)
120120 else false)
121121 then 1
122122 else 2
123123 let callerPrice = if ((callerBuylevel == 0))
124124 then price1
125125 else if ((callerBuylevel == 1))
126126 then price2
127127 else 0
128128 let pmtok = if ((size(i.payments) == 1))
129129 then if (if (!(isDefined(i.payments[0].assetId)))
130130 then (i.payments[0].amount >= callerPrice)
131131 else false)
132132 then true
133133 else false
134134 else false
135135 let mess = if (!(callerReceived))
136136 then ("not prooved for buy" + (if (!(pmtok))
137137 then "not enough payment"
138138 else ("" + (if (!(balanceok))
139139 then "ballance empty "
140140 else ""))))
141141 else ""
142- let datarecs = split(callerData, "|")
143- let newdata = if (callerReceived)
144- then datarecs[0]
145- else ("" + (if ((callerBuylevel == 0))
146- then "|bought1"
147- else ("" + (if ((callerBuylevel == 1))
148- then "|bought1|bought2"
149- else ""))))
150- let deal = if (if (if (balanceok)
151- then callerReceived
152- else false)
153- then pmtok
154- else false)
155- then true
156- else false
157- if (deal)
158- then [StringEntry(toBase58String(i.caller.bytes), newdata), ScriptTransfer(teamAdress, callerPrice, unit), ScriptTransfer(callerAdress, sellamount, token)]
159- else [StringEntry((toBase58String(i.caller.bytes) + "_buy"), mess)]
142+ if ((mess == mess))
143+ then {
144+ let datarecs = split(callerData, "|")
145+ let newdata = if (callerReceived)
146+ then datarecs[0]
147+ else ("" + (if ((callerBuylevel == 0))
148+ then "|bought1"
149+ else ("" + (if ((callerBuylevel == 1))
150+ then "|bought1|bought2"
151+ else ""))))
152+ let deal = if (if (if (balanceok)
153+ then callerReceived
154+ else false)
155+ then pmtok
156+ else false)
157+ then true
158+ else false
159+ if (deal)
160+ then [StringEntry(toBase58String(i.caller.bytes), newdata), ScriptTransfer(teamAdress, callerPrice, unit), ScriptTransfer(callerAdress, sellamount, token)]
161+ else [StringEntry((toBase58String(i.caller.bytes) + "_buy"), mess)]
162+ }
163+ else throw("Strict value is not equal to itself.")
160164 }
161165
162166

github/deemru/w8io/026f985 
28.87 ms