tx · 5ZqHEYjN851yAaYFbjVrAQETGjHgvfiSgdsHmdzmuwWx

3N4vqUXWw8tf23LDWDbSEpJZH6dent3ETFu:  -0.04000000 Waves

2022.03.29 16:53 [1985299] smart account 3N4vqUXWw8tf23LDWDbSEpJZH6dent3ETFu > SELF 0.00000000 Waves

{ "type": 13, "id": "5ZqHEYjN851yAaYFbjVrAQETGjHgvfiSgdsHmdzmuwWx", "fee": 4000000, "feeAssetId": null, "timestamp": 1648561842119, "version": 2, "chainId": 84, "sender": "3N4vqUXWw8tf23LDWDbSEpJZH6dent3ETFu", "senderPublicKey": "D4v2S9mjah7eEEmuQVBNd4WipC3scs8V4PjuDBweWatE", "proofs": [ "2fynE3tdBhU8gAq4SbbPoqjfd7Sbk8e4C4gKsDQ5QfqKaRfFzKdZdiJDR1LHokWafQimnAGd3BccDC3BUEPz2hay" ], "script": "base64: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AAIFAAAADWRhdGFLZXlQcmVmaXgCAAAACF9hc3NldElkBQAAAAphc3NldElkU3RyCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAAEsAAAAAgUAAAANZGF0YUtleVByZWZpeAIAAAAGX2Fzc2V0BQAAAAhhc3NldFVybAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQABLAAAAAIFAAAADWRhdGFLZXlQcmVmaXgCAAAABl9vd25lcgUAAAAIaG9sZGluZ3MJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgUAAAANdHJhbnNhY3Rpb25JZAUAAAANZGF0YUtleVByZWZpeAkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADBQAAAA9ob2xkaW5nc0FkZHJlc3MAAAAAAAAAAAEFAAAAB2Fzc2V0SWQFAAAAA25pbAkAAAIAAAABAgAAACRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4AAAABaQEAAAARcHJvbW90aW9uUHVyY2hhc2UAAAADAAAAAXgAAAABeQAAABFkZXNpbmF0aW9uQWRkcmVzcwQAAAAIY2FsbGVySWQJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwMJAQAAAAIhPQAAAAIFAAAACGNhbGxlcklkBQAAAAhob2xkaW5ncwkAAAIAAAABAgAAACZUaGlzIGNhbiBvbmx5IGJlIHRyaWdnZXJpbmcgaW50ZXJuYWxseQQAAAANdHJhbnNhY3Rpb25JZAkAAlgAAAABCAUAAAABaQAAAA10cmFuc2FjdGlvbklkBAAAAAskdDAzNDk1MzYwMAkBAAAAC2NsYWltU3F1YXJlAAAABQUAAAABeAUAAAABeQIAAAABMQUAAAARZGVzaW5hdGlvbkFkZHJlc3MFAAAADXRyYW5zYWN0aW9uSWQEAAAABWFzc2V0CAUAAAALJHQwMzQ5NTM2MDAAAAACXzEEAAAAB2Fzc2V0SWQIBQAAAAskdDAzNDk1MzYwMAAAAAJfMgQAAAAIYXNzZXRVcmwIBQAAAAskdDAzNDk1MzYwMAAAAAJfMwQAAAANZGF0YUtleVByZWZpeAgFAAAACyR0MDM0OTUzNjAwAAAAAl80BAAAAAphc3Nl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", "height": 1985299, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: BRsW9tu55pMJFZjYcj7L1CGdXmYmEkCVvUDmnjsXfNLQ Next: 2nzBJFAReKVrXCQtCQ4CswmwPDFHYphJVjTw6xrVj6ge Diff:
OldNewDifferences
101101 let assetUrl = $t026482744._3
102102 let dataKeyPrefix = $t026482744._4
103103 let assetIdStr = toBase58String(assetId)
104-[asset, StringEntry((dataKeyPrefix + "_assetId"), assetIdStr), StringEntry((dataKeyPrefix + "_asset"), assetUrl), StringEntry((dataKeyPrefix + "_owner"), holdings), StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(holdingsAddress, 1, assetId)]
104+ let res = invoke(holdingsAddress, "addOwnerAndAmount", [holdings, assetId, 3], [AttachedPayment(unit, 0)])
105+ if ((res == res))
106+ then [asset, StringEntry((dataKeyPrefix + "_assetId"), assetIdStr), StringEntry((dataKeyPrefix + "_asset"), assetUrl), StringEntry((dataKeyPrefix + "_owner"), holdings), StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(holdingsAddress, 1, assetId)]
107+ else throw("Strict value is not equal to itself.")
105108 }
106109 }
107110
114117 then throw("This can only be triggering internally")
115118 else {
116119 let transactionId = toBase58String(i.transactionId)
117- let $t033773482 = claimSquare(x, y, "1", desinationAddress, transactionId)
118- let asset = $t033773482._1
119- let assetId = $t033773482._2
120- let assetUrl = $t033773482._3
121- let dataKeyPrefix = $t033773482._4
120+ let $t034953600 = claimSquare(x, y, "1", desinationAddress, transactionId)
121+ let asset = $t034953600._1
122+ let assetId = $t034953600._2
123+ let assetUrl = $t034953600._3
124+ let dataKeyPrefix = $t034953600._4
122125 let assetIdStr = toBase58String(assetId)
123126 [asset, StringEntry((dataKeyPrefix + "_assetId"), assetIdStr), StringEntry((dataKeyPrefix + "_asset"), assetUrl), StringEntry((dataKeyPrefix + "_owner"), desinationAddress), StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(Address(fromBase58String(desinationAddress)), 1, assetId)]
124127 }
133136 then throw("This can only be triggering internally")
134137 else {
135138 let transactionId = toBase58String(i.transactionId)
136- let $t041454240 = claimSquare(x, y, gen, ownerId, transactionId)
137- let asset = $t041454240._1
138- let assetId = $t041454240._2
139- let assetUrl = $t041454240._3
140- let dataKeyPrefix = $t041454240._4
139+ let $t042634358 = claimSquare(x, y, gen, ownerId, transactionId)
140+ let asset = $t042634358._1
141+ let assetId = $t042634358._2
142+ let assetUrl = $t042634358._3
143+ let dataKeyPrefix = $t042634358._4
141144 [asset, StringEntry((dataKeyPrefix + "_assetId"), toBase58String(assetId)), StringEntry((dataKeyPrefix + "_asset"), assetUrl), StringEntry((dataKeyPrefix + "_owner"), ownerId), StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(Address(fromBase58String(ownerId)), 1, assetId)]
142145 }
143146 }
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 DEBUG = true
1111
1212 let minForSaleWavlets = 100000000
1313
1414 let minPurchasePrice = 1000000
1515
1616 let holdings = "3N9R7u449Z1b76QpJp9u3gzPjMYQYnp3V7r"
1717
1818 let holdingsAddress = Address(fromBase58String(holdings))
1919
2020 func getAssetName (x,y) = {
2121 let name = ((x + ",") + y)
2222 name
2323 }
2424
2525
2626 func getDataKeyPrefix (x,y,gen) = {
2727 let name = getAssetName(x, y)
2828 let prefix = ((name + ",") + gen)
2929 prefix
3030 }
3131
3232
3333 func getXYGenFromName (name) = {
3434 let parts = split(name, ",")
3535 let tuple = $Tuple3(parts[0], parts[1], parts[2])
3636 tuple
3737 }
3838
3939
4040 func getDataKeyPrefixFromAssetName (name) = {
4141 let $t0783823 = getXYGenFromName(name)
4242 let x = $t0783823._1
4343 let y = $t0783823._2
4444 let gen = $t0783823._3
4545 let prefix = getDataKeyPrefix(x, y, gen)
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")
5656 let asset = Issue(((assetName + ",") + resolvedGenStr), assetUrl, 1, 0, false)
5757 let assetId = calculateAssetId(asset)
5858 let dataKeyPrefix = getDataKeyPrefix(resolvedXStr, resolvedYStr, gen)
5959 $Tuple4(asset, assetId, assetUrl, dataKeyPrefix)
6060 }
6161
6262
6363 @Callable(i)
6464 func purchase (x,y) = {
6565 let prefix = getDataKeyPrefix(x, y, "1")
6666 let paymentAmount = valueOrElse(i.payments[0].amount, 0)
6767 let existingAssetId = match getString(this, (prefix + "_assetId")) {
6868 case _: Unit =>
6969 "unset"
7070 case err: String =>
7171 throw("This square has already been purchased")
7272 case _ =>
7373 throw("Match error")
7474 }
7575 if ((minPurchasePrice > paymentAmount))
7676 then throw((("You need to send at least " + toString(minPurchasePrice)) + "WAVLETS to purchase a square"))
7777 else {
7878 let ownerId = toBase58String(i.caller.bytes)
7979 let transactionId = toBase58String(i.transactionId)
8080 let $t019972092 = claimSquare(x, y, "1", ownerId, transactionId)
8181 let asset = $t019972092._1
8282 let assetId = $t019972092._2
8383 let assetUrl = $t019972092._3
8484 let dataKeyPrefix = $t019972092._4
8585 [asset, StringEntry((dataKeyPrefix + "_assetId"), toBase58String(assetId)), StringEntry((dataKeyPrefix + "_asset"), assetUrl), StringEntry((dataKeyPrefix + "_owner"), ownerId), StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(i.caller, 1, assetId)]
8686 }
8787 }
8888
8989
9090
9191 @Callable(i)
9292 func autoBuy (x,y) = {
9393 let callerId = toBase58String(i.caller.bytes)
9494 if ((callerId != holdings))
9595 then throw("This can only be triggering internally")
9696 else {
9797 let transactionId = toBase58String(i.transactionId)
9898 let $t026482744 = claimSquare(x, y, "1", holdings, transactionId)
9999 let asset = $t026482744._1
100100 let assetId = $t026482744._2
101101 let assetUrl = $t026482744._3
102102 let dataKeyPrefix = $t026482744._4
103103 let assetIdStr = toBase58String(assetId)
104-[asset, StringEntry((dataKeyPrefix + "_assetId"), assetIdStr), StringEntry((dataKeyPrefix + "_asset"), assetUrl), StringEntry((dataKeyPrefix + "_owner"), holdings), StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(holdingsAddress, 1, assetId)]
104+ let res = invoke(holdingsAddress, "addOwnerAndAmount", [holdings, assetId, 3], [AttachedPayment(unit, 0)])
105+ if ((res == res))
106+ then [asset, StringEntry((dataKeyPrefix + "_assetId"), assetIdStr), StringEntry((dataKeyPrefix + "_asset"), assetUrl), StringEntry((dataKeyPrefix + "_owner"), holdings), StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(holdingsAddress, 1, assetId)]
107+ else throw("Strict value is not equal to itself.")
105108 }
106109 }
107110
108111
109112
110113 @Callable(i)
111114 func promotionPurchase (x,y,desinationAddress) = {
112115 let callerId = toBase58String(i.caller.bytes)
113116 if ((callerId != holdings))
114117 then throw("This can only be triggering internally")
115118 else {
116119 let transactionId = toBase58String(i.transactionId)
117- let $t033773482 = claimSquare(x, y, "1", desinationAddress, transactionId)
118- let asset = $t033773482._1
119- let assetId = $t033773482._2
120- let assetUrl = $t033773482._3
121- let dataKeyPrefix = $t033773482._4
120+ let $t034953600 = claimSquare(x, y, "1", desinationAddress, transactionId)
121+ let asset = $t034953600._1
122+ let assetId = $t034953600._2
123+ let assetUrl = $t034953600._3
124+ let dataKeyPrefix = $t034953600._4
122125 let assetIdStr = toBase58String(assetId)
123126 [asset, StringEntry((dataKeyPrefix + "_assetId"), assetIdStr), StringEntry((dataKeyPrefix + "_asset"), assetUrl), StringEntry((dataKeyPrefix + "_owner"), desinationAddress), StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(Address(fromBase58String(desinationAddress)), 1, assetId)]
124127 }
125128 }
126129
127130
128131
129132 @Callable(i)
130133 func evolve (x,y,gen,ownerId) = {
131134 let callerId = toBase58String(i.caller.bytes)
132135 if ((callerId != holdings))
133136 then throw("This can only be triggering internally")
134137 else {
135138 let transactionId = toBase58String(i.transactionId)
136- let $t041454240 = claimSquare(x, y, gen, ownerId, transactionId)
137- let asset = $t041454240._1
138- let assetId = $t041454240._2
139- let assetUrl = $t041454240._3
140- let dataKeyPrefix = $t041454240._4
139+ let $t042634358 = claimSquare(x, y, gen, ownerId, transactionId)
140+ let asset = $t042634358._1
141+ let assetId = $t042634358._2
142+ let assetUrl = $t042634358._3
143+ let dataKeyPrefix = $t042634358._4
141144 [asset, StringEntry((dataKeyPrefix + "_assetId"), toBase58String(assetId)), StringEntry((dataKeyPrefix + "_asset"), assetUrl), StringEntry((dataKeyPrefix + "_owner"), ownerId), StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(Address(fromBase58String(ownerId)), 1, assetId)]
142145 }
143146 }
144147
145148
146149
147150 @Callable(i)
148151 func putForSale (assetId,amount) = {
149152 let callerId = toBase58String(i.caller.bytes)
150153 let assetData = match assetInfo(fromBase58String(assetId)) {
151154 case ass: Asset =>
152155 ass
153156 case _ =>
154157 throw("Asset not found")
155158 }
156159 let dataPrefix = getDataKeyPrefixFromAssetName(assetData.name)
157160 let ownerId = match getString(this, (dataPrefix + "_owner")) {
158161 case s: String =>
159162 s
160163 case _ =>
161164 throw("Owner not found in data")
162165 }
163166 if ((minForSaleWavlets > amount))
164167 then throw("Amount needs to be more than 1 wave")
165168 else if (if ((callerId != ownerId))
166169 then (callerId != holdings)
167170 else false)
168171 then throw("You are not able to put this asset up for sale")
169172 else {
170173 let res = invoke(holdingsAddress, "addOwnerAndAmount", [callerId, assetId, amount], [AttachedPayment(unit, 0)])
171174 if ((res == res))
172175 then [ScriptTransfer(holdingsAddress, 1, fromBase58String(assetId))]
173176 else throw("Strict value is not equal to itself.")
174177 }
175178 }
176179
177180
178181 @Verifier(tx)
179182 func verify () = true
180183

github/deemru/w8io/873ac7e 
57.10 ms