tx · FEDTN5thkp6Tj4jfV5m1owS5wepTZNLfPVWuHRw3WsZU

3N7J6mMMkjVViBREz9y53JmcX7r7KZRXQpL:  -0.04000000 Waves

2022.04.19 22:45 [2015873] smart account 3N7J6mMMkjVViBREz9y53JmcX7r7KZRXQpL > SELF 0.00000000 Waves

{ "type": 13, "id": "FEDTN5thkp6Tj4jfV5m1owS5wepTZNLfPVWuHRw3WsZU", "fee": 4000000, "feeAssetId": null, "timestamp": 1650397508062, "version": 2, "chainId": 84, "sender": "3N7J6mMMkjVViBREz9y53JmcX7r7KZRXQpL", "senderPublicKey": "G6aSmaqLJ4p7jzm7BnQcZuqa2NRRLVtzqdYNjYErnEZZ", "proofs": [ "hkzGaRNCb2d1QWgq6fM9yYb2sv4JDCyM8uqzApHWuCn2yaf9wSbkSzPTeFGGqfSoA16gqPtWJLXw8U3SKuT7SqG" ], "script": "base64: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AQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJ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", "height": 2015873, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: AysBPPRk2TxdmKi4hMnYrT5hbrDRzeu1eRUnikuNdXSr Next: CCWkK5HQtLiGXTL7vLTkS9cJ3oKSbbj8FZ7EBVWTbenA Diff:
OldNewDifferences
5353 let resolvedGenStr = gen
5454 let assetName = getAssetName(resolvedXStr, resolvedYStr)
5555 let assetUrl = ((nftDomain + transactionId) + ".png")
56- let asset = Issue(assetName, assetUrl, 1, 0, true)
56+ let asset = Issue(assetName, assetUrl, 1, 0, false)
5757 let assetId = calculateAssetId(asset)
5858 let dataKeyPrefix = getDataKeyPrefix(resolvedXStr, resolvedYStr)
5959 $Tuple4(asset, assetId, assetUrl, dataKeyPrefix)
107107 else {
108108 let ownerId = toBase58String(i.caller.bytes)
109109 let transactionId = toBase58String(i.transactionId)
110- let $t028602955 = claimSquare(x, y, "1", ownerId, transactionId)
111- let asset = $t028602955._1
112- let assetId = $t028602955._2
113- let assetUrl = $t028602955._3
114- let dataKeyPrefix = $t028602955._4
110+ let $t028612956 = claimSquare(x, y, "1", ownerId, transactionId)
111+ let asset = $t028612956._1
112+ let assetId = $t028612956._2
113+ let assetUrl = $t028612956._3
114+ let dataKeyPrefix = $t028612956._4
115115 (getTransactionEntries(dataKeyPrefix, toBase58String(assetId), assetUrl, ownerId, "1") ++ [asset, StringEntry((ownerId + "_handle"), userText), StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(i.caller, 1, assetId)])
116116 }
117117 }
127127 then throw("This can only be triggering internally")
128128 else {
129129 let transactionId = toBase58String(i.transactionId)
130- let $t034903586 = claimSquare(x, y, "1", holdings, transactionId)
131- let asset = $t034903586._1
132- let assetId = $t034903586._2
133- let assetUrl = $t034903586._3
134- let dataKeyPrefix = $t034903586._4
130+ let $t034913587 = claimSquare(x, y, "1", holdings, transactionId)
131+ let asset = $t034913587._1
132+ let assetId = $t034913587._2
133+ let assetUrl = $t034913587._3
134+ let dataKeyPrefix = $t034913587._4
135135 let assetIdStr = toBase58String(assetId)
136136 let res = invoke(holdingsAddress, addOwnerAndAmountFunc, [holdings, assetIdStr, 3], [AttachedPayment(unit, 0)])
137137 if ((res == res))
149149 then throw("This can only be triggering internally")
150150 else {
151151 let transactionId = toBase58String(i.transactionId)
152- let $t042644654 = claimSquare(x, y, gen, ownerId, transactionId)
153- let asset = $t042644654._1
154- let assetId = $t042644654._2
155- let assetUrl = $t042644654._3
156- let dataKeyPrefix = $t042644654._4
152+ let $t042654655 = claimSquare(x, y, gen, ownerId, transactionId)
153+ let asset = $t042654655._1
154+ let assetId = $t042654655._2
155+ let assetUrl = $t042654655._3
156+ let dataKeyPrefix = $t042654655._4
157157 let burnTransactions = {
158158 let $l = split(coordsToBurn, "|")
159159 let $s = size($l)
231231 then throw("This can only be triggering internally")
232232 else {
233233 let transactionId = toBase58String(i.transactionId)
234- let $t066336738 = claimSquare(x, y, "1", desinationAddress, transactionId)
235- let asset = $t066336738._1
236- let assetId = $t066336738._2
237- let assetUrl = $t066336738._3
238- let dataKeyPrefix = $t066336738._4
234+ let $t066346739 = claimSquare(x, y, "1", desinationAddress, transactionId)
235+ let asset = $t066346739._1
236+ let assetId = $t066346739._2
237+ let assetUrl = $t066346739._3
238+ let dataKeyPrefix = $t066346739._4
239239 let assetIdStr = toBase58String(assetId)
240240 (getTransactionEntries(dataKeyPrefix, assetIdStr, assetUrl, desinationAddress, "1") ++ [asset, StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(Address(fromBase58String(desinationAddress)), 1, assetId)])
241241 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let COLS = 1024
55
66 let ROWS = 1024
77
88 let nftDomain = "https://nft.gridgang.io/"
99
1010 let addOwnerAndAmountFunc = "addOwnerAndAmount"
1111
1212 let DEBUG = true
1313
1414 let minForSaleWavlets = 100000000
1515
1616 let minPurchasePrice = 1000000
1717
1818 let dapp = "3N7J6mMMkjVViBREz9y53JmcX7r7KZRXQpL"
1919
2020 let dappAddress = Address(fromBase58String(dapp))
2121
2222 let holdingsPublicKey = "AyAwWbMPM7a4VYkn1bhEBftC5WZgfvUXgrYDe98mvLsv"
2323
2424 let holdings = "3MwPsLy9F1mUQrdP37sCAKvHuE5HvPE674Y"
2525
2626 let holdingsAddress = Address(fromBase58String(holdings))
2727
2828 func getAssetName (x,y) = ((x + ",") + y)
2929
3030
3131 func getDataKeyPrefix (x,y) = getAssetName(x, y)
3232
3333
3434 func getXYGenFromName (name) = {
3535 let parts = split(name, ",")
3636 let tuple = $Tuple2(parts[0], parts[1])
3737 tuple
3838 }
3939
4040
4141 func getDataKeyPrefixFromAssetName (name) = {
4242 let $t0906941 = getXYGenFromName(name)
4343 let x = $t0906941._1
4444 let y = $t0906941._2
4545 let prefix = getDataKeyPrefix(x, y)
4646 prefix
4747 }
4848
4949
5050 func claimSquare (x,y,gen,ownerId,transactionId) = {
5151 let resolvedXStr = x
5252 let resolvedYStr = y
5353 let resolvedGenStr = gen
5454 let assetName = getAssetName(resolvedXStr, resolvedYStr)
5555 let assetUrl = ((nftDomain + transactionId) + ".png")
56- let asset = Issue(assetName, assetUrl, 1, 0, true)
56+ let asset = Issue(assetName, assetUrl, 1, 0, false)
5757 let assetId = calculateAssetId(asset)
5858 let dataKeyPrefix = getDataKeyPrefix(resolvedXStr, resolvedYStr)
5959 $Tuple4(asset, assetId, assetUrl, dataKeyPrefix)
6060 }
6161
6262
6363 func getTransactionEntries (prefix,assetId,asset,owner,gen) = [StringEntry((prefix + "_assetId"), assetId), StringEntry((prefix + "_asset"), asset), StringEntry((prefix + "_owner"), owner), StringEntry((prefix + "_gen"), gen)]
6464
6565
6666 func burnFold (accum,next) = {
6767 let resolvedNext = match next {
6868 case _: Unit =>
6969 "unset"
7070 case val: String =>
7171 val
7272 case _ =>
7373 throw("Match error")
7474 }
7575 if ((resolvedNext == "unset"))
7676 then accum
7777 else {
7878 let assetId = match getString(this, (resolvedNext + "_assetId")) {
7979 case _: Unit =>
8080 "unset"
8181 case val: String =>
8282 val
8383 case _ =>
8484 throw("Match error")
8585 }
8686 if ((assetId == "unset"))
8787 then accum
8888 else (accum ++ [Burn(fromBase58String(assetId), 1)])
8989 }
9090 }
9191
9292
9393 @Callable(i)
9494 func purchase (x,y,userText) = {
9595 let prefix = getDataKeyPrefix(x, y)
9696 let paymentAmount = valueOrElse(i.payments[0].amount, 0)
9797 let existingAssetId = match getString(this, (prefix + "_assetId")) {
9898 case _: Unit =>
9999 "unset"
100100 case err: String =>
101101 throw("This square has already been purchased")
102102 case _ =>
103103 throw("Match error")
104104 }
105105 if ((minPurchasePrice > paymentAmount))
106106 then throw((("You need to send at least " + toString(minPurchasePrice)) + "WAVLETS to purchase a square"))
107107 else {
108108 let ownerId = toBase58String(i.caller.bytes)
109109 let transactionId = toBase58String(i.transactionId)
110- let $t028602955 = claimSquare(x, y, "1", ownerId, transactionId)
111- let asset = $t028602955._1
112- let assetId = $t028602955._2
113- let assetUrl = $t028602955._3
114- let dataKeyPrefix = $t028602955._4
110+ let $t028612956 = claimSquare(x, y, "1", ownerId, transactionId)
111+ let asset = $t028612956._1
112+ let assetId = $t028612956._2
113+ let assetUrl = $t028612956._3
114+ let dataKeyPrefix = $t028612956._4
115115 (getTransactionEntries(dataKeyPrefix, toBase58String(assetId), assetUrl, ownerId, "1") ++ [asset, StringEntry((ownerId + "_handle"), userText), StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(i.caller, 1, assetId)])
116116 }
117117 }
118118
119119
120120
121121 @Callable(i)
122122 func autoBuy (x,y) = {
123123 let callerId = toBase58String(i.caller.bytes)
124124 if (if ((callerId != holdings))
125125 then (callerId != dapp)
126126 else false)
127127 then throw("This can only be triggering internally")
128128 else {
129129 let transactionId = toBase58String(i.transactionId)
130- let $t034903586 = claimSquare(x, y, "1", holdings, transactionId)
131- let asset = $t034903586._1
132- let assetId = $t034903586._2
133- let assetUrl = $t034903586._3
134- let dataKeyPrefix = $t034903586._4
130+ let $t034913587 = claimSquare(x, y, "1", holdings, transactionId)
131+ let asset = $t034913587._1
132+ let assetId = $t034913587._2
133+ let assetUrl = $t034913587._3
134+ let dataKeyPrefix = $t034913587._4
135135 let assetIdStr = toBase58String(assetId)
136136 let res = invoke(holdingsAddress, addOwnerAndAmountFunc, [holdings, assetIdStr, 3], [AttachedPayment(unit, 0)])
137137 if ((res == res))
138138 then (getTransactionEntries(dataKeyPrefix, assetIdStr, assetUrl, holdings, "1") ++ [asset, StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(holdingsAddress, 1, assetId)])
139139 else throw("Strict value is not equal to itself.")
140140 }
141141 }
142142
143143
144144
145145 @Callable(i)
146146 func evolve (x,y,gen,ownerId,coordsToBurn) = {
147147 let callerId = toBase58String(i.caller.bytes)
148148 if ((callerId != holdings))
149149 then throw("This can only be triggering internally")
150150 else {
151151 let transactionId = toBase58String(i.transactionId)
152- let $t042644654 = claimSquare(x, y, gen, ownerId, transactionId)
153- let asset = $t042644654._1
154- let assetId = $t042644654._2
155- let assetUrl = $t042644654._3
156- let dataKeyPrefix = $t042644654._4
152+ let $t042654655 = claimSquare(x, y, gen, ownerId, transactionId)
153+ let asset = $t042654655._1
154+ let assetId = $t042654655._2
155+ let assetUrl = $t042654655._3
156+ let dataKeyPrefix = $t042654655._4
157157 let burnTransactions = {
158158 let $l = split(coordsToBurn, "|")
159159 let $s = size($l)
160160 let $acc0 = nil
161161 func $f0_1 ($a,$i) = if (($i >= $s))
162162 then $a
163163 else burnFold($a, $l[$i])
164164
165165 func $f0_2 ($a,$i) = if (($i >= $s))
166166 then $a
167167 else throw("List size exceeds 110")
168168
169169 $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20), 21), 22), 23), 24), 25), 26), 27), 28), 29), 30), 31), 32), 33), 34), 35), 36), 37), 38), 39), 40), 41), 42), 43), 44), 45), 46), 47), 48), 49), 50), 51), 52), 53), 54), 55), 56), 57), 58), 59), 60), 61), 62), 63), 64), 65), 66), 67), 68), 69), 70), 71), 72), 73), 74), 75), 76), 77), 78), 79), 80), 81), 82), 83), 84), 85), 86), 87), 88), 89), 90), 91), 92), 93), 94), 95), 96), 97), 98), 99), 100), 101), 102), 103), 104), 105), 106), 107), 108), 109), 110)
170170 }
171171 ((burnTransactions ++ getTransactionEntries(dataKeyPrefix, toBase58String(assetId), assetUrl, ownerId, gen)) ++ [asset, StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(Address(fromBase58String(ownerId)), 1, assetId)])
172172 }
173173 }
174174
175175
176176
177177 @Callable(i)
178178 func putForSale (assetId,amount) = {
179179 let callerId = toBase58String(i.caller.bytes)
180180 let assetData = match assetInfo(fromBase58String(assetId)) {
181181 case ass: Asset =>
182182 ass
183183 case _ =>
184184 throw("Asset not found")
185185 }
186186 let dataPrefix = getDataKeyPrefixFromAssetName(assetData.name)
187187 let ownerId = match getString(this, (dataPrefix + "_owner")) {
188188 case s: String =>
189189 s
190190 case _ =>
191191 throw("Owner not found in data")
192192 }
193193 if ((minForSaleWavlets > amount))
194194 then throw("Amount needs to be more than 1 wave")
195195 else if (if ((callerId != ownerId))
196196 then (callerId != holdings)
197197 else false)
198198 then throw("You are not able to put this asset up for sale")
199199 else {
200200 let res = invoke(holdingsAddress, addOwnerAndAmountFunc, [callerId, assetId, amount], [AttachedPayment(unit, 0)])
201201 if ((res == res))
202202 then [ScriptTransfer(holdingsAddress, 1, fromBase58String(assetId))]
203203 else throw("Strict value is not equal to itself.")
204204 }
205205 }
206206
207207
208208
209209 @Callable(i)
210210 func finalizeSale (assetId,ownerId,userText) = {
211211 let callerId = toBase58String(i.caller.bytes)
212212 if ((callerId != holdings))
213213 then throw("This can only be triggering internally")
214214 else {
215215 let prefix = match assetInfo(fromBase58String(assetId)) {
216216 case asset: Asset =>
217217 asset.name
218218 case _ =>
219219 throw("Can't find asset")
220220 }
221221 [StringEntry((prefix + "_owner"), ownerId), StringEntry((ownerId + "_handle"), userText)]
222222 }
223223 }
224224
225225
226226
227227 @Callable(i)
228228 func adminPromotionPurchase (x,y,desinationAddress) = {
229229 let callerId = toBase58String(i.caller.bytes)
230230 if ((callerId != holdings))
231231 then throw("This can only be triggering internally")
232232 else {
233233 let transactionId = toBase58String(i.transactionId)
234- let $t066336738 = claimSquare(x, y, "1", desinationAddress, transactionId)
235- let asset = $t066336738._1
236- let assetId = $t066336738._2
237- let assetUrl = $t066336738._3
238- let dataKeyPrefix = $t066336738._4
234+ let $t066346739 = claimSquare(x, y, "1", desinationAddress, transactionId)
235+ let asset = $t066346739._1
236+ let assetId = $t066346739._2
237+ let assetUrl = $t066346739._3
238+ let dataKeyPrefix = $t066346739._4
239239 let assetIdStr = toBase58String(assetId)
240240 (getTransactionEntries(dataKeyPrefix, assetIdStr, assetUrl, desinationAddress, "1") ++ [asset, StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(Address(fromBase58String(desinationAddress)), 1, assetId)])
241241 }
242242 }
243243
244244
245245
246246 @Callable(i)
247247 func adminSetHandle (ownerId,handle) = {
248248 let callerId = toBase58String(i.caller.bytes)
249249 if ((callerId != holdings))
250250 then throw("This can only be triggering internally")
251251 else [StringEntry((ownerId + "_handle"), handle)]
252252 }
253253
254254
255255 @Verifier(tx)
256256 func verify () = if (if (sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey))
257257 then true
258258 else (addressFromPublicKey(tx.senderPublicKey) == holdingsAddress))
259259 then true
260260 else (addressFromPublicKey(tx.senderPublicKey) == dappAddress)
261261

github/deemru/w8io/026f985 
52.03 ms