tx · 8Mcp3r1yHWhU7ZArN7oc6GLfJxZvwC5Circesj6mqgTA

3N4vqUXWw8tf23LDWDbSEpJZH6dent3ETFu:  -0.04000000 Waves

2022.01.05 20:03 [1865869] smart account 3N4vqUXWw8tf23LDWDbSEpJZH6dent3ETFu > SELF 0.00000000 Waves

{ "type": 13, "id": "8Mcp3r1yHWhU7ZArN7oc6GLfJxZvwC5Circesj6mqgTA", "fee": 4000000, "feeAssetId": null, "timestamp": 1641402242483, "version": 2, "chainId": 84, "sender": "3N4vqUXWw8tf23LDWDbSEpJZH6dent3ETFu", "senderPublicKey": "D4v2S9mjah7eEEmuQVBNd4WipC3scs8V4PjuDBweWatE", "proofs": [ "2RbaRBFpPzQoGPXbB9ByqfD63vk6iyvecr3ucbWdkNaMMvxj232PeQYB4kN1GAQAwVdwxjcmeYN6AVqxwVWHVTBW" ], "script": "base64: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", "height": 1865869, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: BdWj9xW928u4dyW6BjAqf9w1KKNg6vw6AbaPSAa96tKp Next: AGxbrHEgLWwnEmkmN9XnvjT2sB2qJHqmNoWuuhXjVWXp Diff:
OldNewDifferences
99
1010 let DEBUG = true
1111
12-let holdingsAddress = addressFromPublicKey(base58'GUHw1jkstNWTs9SX1KM3pMtq9HXjupvxiTd1urNhNoyY')
12+let holdingsPublicKey = base58'GUHw1jkstNWTs9SX1KM3pMtq9HXjupvxiTd1urNhNoyY'
13+
14+let holdingsAddress = addressFromPublicKey(holdingsPublicKey)
1315
1416 func getBoundCoords (data) = {
15- let $t0319341 = data
16- let x = $t0319341._1
17- let y = $t0319341._2
18- let gen = $t0319341._3
17+ let $t0361383 = data
18+ let x = $t0361383._1
19+ let y = $t0361383._2
20+ let gen = $t0361383._3
1921 let d = pow(2, 0, (gen - 1), 0, 0, HALFUP)
2022 let tl = $Tuple2((x - d), (y - d))
2123 let tc = $Tuple2(x, (y - d))
3032
3133
3234 func checkSquareForEvolve (coords,gen,ownerId) = {
33- let $t0774802 = coords
34- let xy1 = $t0774802._1
35- let xy2 = $t0774802._2
36- let xy3 = $t0774802._3
35+ let $t0816844 = coords
36+ let xy1 = $t0816844._1
37+ let xy2 = $t0816844._2
38+ let xy3 = $t0816844._3
3739 let xy1Key = (((((toString(xy1._1) + ",") + toString(xy1._2)) + ",") + gen) + "_owner")
3840 let xy2Key = (((((toString(xy2._1) + ",") + toString(xy2._2)) + ",") + gen) + "_owner")
3941 let xy3Key = (((((toString(xy3._1) + ",") + toString(xy3._2)) + ",") + gen) + "_owner")
7072
7173
7274 func getXyReturn (xy,gen) = {
73- let $t014781493 = xy
74- let x = $t014781493._1
75- let y = $t014781493._2
75+ let $t015201535 = xy
76+ let x = $t015201535._1
77+ let y = $t015201535._2
7678 $Tuple3(x, y, (gen + 1))
7779 }
7880
7981
8082 func getXy (xyg,ownerId) = {
8183 let checkList = getBoundCoords(xyg)
82- let $t016091630 = xyg
83- let x = $t016091630._1
84- let y = $t016091630._2
85- let gen = $t016091630._3
84+ let $t016511672 = xyg
85+ let x = $t016511672._1
86+ let y = $t016511672._2
87+ let gen = $t016511672._3
8688 let genStr = toString(gen)
8789 if (checkSquareForEvolve(checkList[0], genStr, ownerId))
8890 then getXyReturn(checkList[0]._1, gen)
9799
98100
99101 func checkForEvolve (xyg,ownerId) = {
100- let $t022772298 = xyg
101- let x = $t022772298._1
102- let y = $t022772298._2
103- let gen = $t022772298._3
102+ let $t023192340 = xyg
103+ let x = $t023192340._1
104+ let y = $t023192340._2
105+ let gen = $t023192340._3
104106 let p1 = getXy(xyg, ownerId)
105107 if ((p1._3 == gen))
106108 then p1
149151
150152
151153 func claimSquare (x,y,ownerId,transactionId) = {
152- let $t033513448 = getXy($Tuple3(parseIntValue(x), parseIntValue(y), 1), ownerId)
153- let resolvedX = $t033513448._1
154- let resolvedY = $t033513448._2
155- let resolvedGen = $t033513448._3
154+ let $t033933490 = getXy($Tuple3(parseIntValue(x), parseIntValue(y), 1), ownerId)
155+ let resolvedX = $t033933490._1
156+ let resolvedY = $t033933490._2
157+ let resolvedGen = $t033933490._3
156158 let resolvedXStr = toString(resolvedX)
157159 let resolvedYStr = toString(resolvedY)
158160 let resolvedGenStr = toString(resolvedGen)
170172 func purchase (x,y) = {
171173 let ownerId = toBase58String(i.caller.bytes)
172174 let transactionId = toBase58String(i.transactionId)
173- let $t040814171 = claimSquare(x, y, ownerId, transactionId)
174- let asset = $t040814171._1
175- let assetId = $t040814171._2
176- let assetUrl = $t040814171._3
177- let dataKeyPrefix = $t040814171._4
175+ let $t041234213 = claimSquare(x, y, ownerId, transactionId)
176+ let asset = $t041234213._1
177+ let assetId = $t041234213._2
178+ let assetUrl = $t041234213._3
179+ let dataKeyPrefix = $t041234213._4
178180 [asset, StringEntry((dataKeyPrefix + "_assetId"), toBase58String(assetId)), StringEntry((dataKeyPrefix + "_asset"), assetUrl), StringEntry((dataKeyPrefix + "_owner"), ownerId), StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(i.caller, 1, assetId)]
179181 }
180182
184186 func autoBuy (x,y) = {
185187 let ownerId = toBase58String(holdingsAddress.bytes)
186188 let transactionId = toBase58String(i.transactionId)
187- let $t046204710 = claimSquare(x, y, ownerId, transactionId)
188- let asset = $t046204710._1
189- let assetId = $t046204710._2
190- let assetUrl = $t046204710._3
191- let dataKeyPrefix = $t046204710._4
189+ let $t046624752 = claimSquare(x, y, ownerId, transactionId)
190+ let asset = $t046624752._1
191+ let assetId = $t046624752._2
192+ let assetUrl = $t046624752._3
193+ let dataKeyPrefix = $t046624752._4
192194 [asset, StringEntry((dataKeyPrefix + "_assetId"), toBase58String(assetId)), StringEntry((dataKeyPrefix + "_asset"), assetUrl), StringEntry((dataKeyPrefix + "_owner"), ownerId), StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(holdingsAddress, 1, assetId)]
193195 }
194196
195197
196198 @Verifier(tx)
197-func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
199+func verify () = if (sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey))
200+ then true
201+ else sigVerify(tx.bodyBytes, tx.proofs[0], holdingsPublicKey)
198202
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
12-let holdingsAddress = addressFromPublicKey(base58'GUHw1jkstNWTs9SX1KM3pMtq9HXjupvxiTd1urNhNoyY')
12+let holdingsPublicKey = base58'GUHw1jkstNWTs9SX1KM3pMtq9HXjupvxiTd1urNhNoyY'
13+
14+let holdingsAddress = addressFromPublicKey(holdingsPublicKey)
1315
1416 func getBoundCoords (data) = {
15- let $t0319341 = data
16- let x = $t0319341._1
17- let y = $t0319341._2
18- let gen = $t0319341._3
17+ let $t0361383 = data
18+ let x = $t0361383._1
19+ let y = $t0361383._2
20+ let gen = $t0361383._3
1921 let d = pow(2, 0, (gen - 1), 0, 0, HALFUP)
2022 let tl = $Tuple2((x - d), (y - d))
2123 let tc = $Tuple2(x, (y - d))
2224 let tr = $Tuple2((x + d), (y + d))
2325 let l = $Tuple2((x - d), y)
2426 let r = $Tuple2((x + d), y)
2527 let bl = $Tuple2((x - d), (y + d))
2628 let bc = $Tuple2(x, (y + d))
2729 let br = $Tuple2((x + d), (y + d))
2830 [$Tuple3(tl, tc, l), $Tuple3(tc, tr, r), $Tuple3(l, bl, bc), $Tuple3(r, bc, br)]
2931 }
3032
3133
3234 func checkSquareForEvolve (coords,gen,ownerId) = {
33- let $t0774802 = coords
34- let xy1 = $t0774802._1
35- let xy2 = $t0774802._2
36- let xy3 = $t0774802._3
35+ let $t0816844 = coords
36+ let xy1 = $t0816844._1
37+ let xy2 = $t0816844._2
38+ let xy3 = $t0816844._3
3739 let xy1Key = (((((toString(xy1._1) + ",") + toString(xy1._2)) + ",") + gen) + "_owner")
3840 let xy2Key = (((((toString(xy2._1) + ",") + toString(xy2._2)) + ",") + gen) + "_owner")
3941 let xy3Key = (((((toString(xy3._1) + ",") + toString(xy3._2)) + ",") + gen) + "_owner")
4042 let xyVal1 = match getString(this, xy1Key) {
4143 case _: Unit =>
4244 "unset"
4345 case x: String =>
4446 x
4547 case _ =>
4648 throw("Match error")
4749 }
4850 let xyVal2 = match getString(this, xy2Key) {
4951 case _: Unit =>
5052 "unset"
5153 case x: String =>
5254 x
5355 case _ =>
5456 throw("Match error")
5557 }
5658 let xyVal3 = match getString(this, xy3Key) {
5759 case _: Unit =>
5860 "unset"
5961 case x: String =>
6062 x
6163 case _ =>
6264 throw("Match error")
6365 }
6466 if (if ((xyVal1 == ownerId))
6567 then (xyVal2 == ownerId)
6668 else false)
6769 then (xyVal3 == ownerId)
6870 else false
6971 }
7072
7173
7274 func getXyReturn (xy,gen) = {
73- let $t014781493 = xy
74- let x = $t014781493._1
75- let y = $t014781493._2
75+ let $t015201535 = xy
76+ let x = $t015201535._1
77+ let y = $t015201535._2
7678 $Tuple3(x, y, (gen + 1))
7779 }
7880
7981
8082 func getXy (xyg,ownerId) = {
8183 let checkList = getBoundCoords(xyg)
82- let $t016091630 = xyg
83- let x = $t016091630._1
84- let y = $t016091630._2
85- let gen = $t016091630._3
84+ let $t016511672 = xyg
85+ let x = $t016511672._1
86+ let y = $t016511672._2
87+ let gen = $t016511672._3
8688 let genStr = toString(gen)
8789 if (checkSquareForEvolve(checkList[0], genStr, ownerId))
8890 then getXyReturn(checkList[0]._1, gen)
8991 else if (checkSquareForEvolve(checkList[1], genStr, ownerId))
9092 then getXyReturn(checkList[1]._1, gen)
9193 else if (checkSquareForEvolve(checkList[2], genStr, ownerId))
9294 then getXyReturn(checkList[2]._1, gen)
9395 else if (checkSquareForEvolve(checkList[3], genStr, ownerId))
9496 then getXyReturn(checkList[3]._1, gen)
9597 else xyg
9698 }
9799
98100
99101 func checkForEvolve (xyg,ownerId) = {
100- let $t022772298 = xyg
101- let x = $t022772298._1
102- let y = $t022772298._2
103- let gen = $t022772298._3
102+ let $t023192340 = xyg
103+ let x = $t023192340._1
104+ let y = $t023192340._2
105+ let gen = $t023192340._3
104106 let p1 = getXy(xyg, ownerId)
105107 if ((p1._3 == gen))
106108 then p1
107109 else {
108110 let p2 = getXy(p1, ownerId)
109111 if ((p2._3 == p1._3))
110112 then p2
111113 else {
112114 let p3 = getXy(p2, ownerId)
113115 if ((p3._3 == p2._3))
114116 then p3
115117 else {
116118 let p4 = getXy(p3, ownerId)
117119 if ((p4._3 == p3._3))
118120 then p4
119121 else {
120122 let p5 = getXy(p4, ownerId)
121123 if ((p5._3 == p4._3))
122124 then p5
123125 else {
124126 let p6 = getXy(p5, ownerId)
125127 if ((p6._3 == p5._3))
126128 then p6
127129 else {
128130 let p7 = getXy(p6, ownerId)
129131 if ((p7._3 == p6._3))
130132 then p7
131133 else {
132134 let p8 = getXy(p7, ownerId)
133135 if ((p8._3 == p7._3))
134136 then p8
135137 else {
136138 let p9 = getXy(p8, ownerId)
137139 if ((p9._3 == p8._3))
138140 then p9
139141 else getXy(getXy(p9, ownerId), ownerId)
140142 }
141143 }
142144 }
143145 }
144146 }
145147 }
146148 }
147149 }
148150 }
149151
150152
151153 func claimSquare (x,y,ownerId,transactionId) = {
152- let $t033513448 = getXy($Tuple3(parseIntValue(x), parseIntValue(y), 1), ownerId)
153- let resolvedX = $t033513448._1
154- let resolvedY = $t033513448._2
155- let resolvedGen = $t033513448._3
154+ let $t033933490 = getXy($Tuple3(parseIntValue(x), parseIntValue(y), 1), ownerId)
155+ let resolvedX = $t033933490._1
156+ let resolvedY = $t033933490._2
157+ let resolvedGen = $t033933490._3
156158 let resolvedXStr = toString(resolvedX)
157159 let resolvedYStr = toString(resolvedY)
158160 let resolvedGenStr = toString(resolvedGen)
159161 let assetName = ((resolvedXStr + ",") + resolvedYStr)
160162 let assetUrl = ((nftDomain + transactionId) + ".png")
161163 let asset = Issue(((assetName + " Gen ") + resolvedGenStr), assetUrl, 1, 0, false)
162164 let assetId = calculateAssetId(asset)
163165 let gen = resolvedGenStr
164166 let dataKeyPrefix = ((assetName + ",") + gen)
165167 $Tuple4(asset, assetId, assetUrl, dataKeyPrefix)
166168 }
167169
168170
169171 @Callable(i)
170172 func purchase (x,y) = {
171173 let ownerId = toBase58String(i.caller.bytes)
172174 let transactionId = toBase58String(i.transactionId)
173- let $t040814171 = claimSquare(x, y, ownerId, transactionId)
174- let asset = $t040814171._1
175- let assetId = $t040814171._2
176- let assetUrl = $t040814171._3
177- let dataKeyPrefix = $t040814171._4
175+ let $t041234213 = claimSquare(x, y, ownerId, transactionId)
176+ let asset = $t041234213._1
177+ let assetId = $t041234213._2
178+ let assetUrl = $t041234213._3
179+ let dataKeyPrefix = $t041234213._4
178180 [asset, StringEntry((dataKeyPrefix + "_assetId"), toBase58String(assetId)), StringEntry((dataKeyPrefix + "_asset"), assetUrl), StringEntry((dataKeyPrefix + "_owner"), ownerId), StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(i.caller, 1, assetId)]
179181 }
180182
181183
182184
183185 @Callable(i)
184186 func autoBuy (x,y) = {
185187 let ownerId = toBase58String(holdingsAddress.bytes)
186188 let transactionId = toBase58String(i.transactionId)
187- let $t046204710 = claimSquare(x, y, ownerId, transactionId)
188- let asset = $t046204710._1
189- let assetId = $t046204710._2
190- let assetUrl = $t046204710._3
191- let dataKeyPrefix = $t046204710._4
189+ let $t046624752 = claimSquare(x, y, ownerId, transactionId)
190+ let asset = $t046624752._1
191+ let assetId = $t046624752._2
192+ let assetUrl = $t046624752._3
193+ let dataKeyPrefix = $t046624752._4
192194 [asset, StringEntry((dataKeyPrefix + "_assetId"), toBase58String(assetId)), StringEntry((dataKeyPrefix + "_asset"), assetUrl), StringEntry((dataKeyPrefix + "_owner"), ownerId), StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(holdingsAddress, 1, assetId)]
193195 }
194196
195197
196198 @Verifier(tx)
197-func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
199+func verify () = if (sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey))
200+ then true
201+ else sigVerify(tx.bodyBytes, tx.proofs[0], holdingsPublicKey)
198202

github/deemru/w8io/873ac7e 
58.19 ms