tx · Hi7gQkbukMTFi34UPe4PRNTCAhERKwXmYNaqQRa4wPve

3N4vqUXWw8tf23LDWDbSEpJZH6dent3ETFu:  -0.04000000 Waves

2022.01.05 18:53 [1865800] smart account 3N4vqUXWw8tf23LDWDbSEpJZH6dent3ETFu > SELF 0.00000000 Waves

{ "type": 13, "id": "Hi7gQkbukMTFi34UPe4PRNTCAhERKwXmYNaqQRa4wPve", "fee": 4000000, "feeAssetId": null, "timestamp": 1641398045104, "version": 2, "chainId": 84, "sender": "3N4vqUXWw8tf23LDWDbSEpJZH6dent3ETFu", "senderPublicKey": "D4v2S9mjah7eEEmuQVBNd4WipC3scs8V4PjuDBweWatE", "proofs": [ "2piyK4M5VUaV9ZA7g8zFr5FqSnyc3xKw1fbBMKVvNzyt1qdPc2hFB67NngTtZtQrveyiUCD8VULFK1NLp5U2uxUS" ], "script": "base64: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", "height": 1865800, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 3C6wbTFTCZ4rvDBX7eDkY3KcrcZ8zqNobzeNWDyfC21K Next: 2m4E7JxJLbRcTg3Sx5XjLFTDj3ur1KCZ94YGKUGru1Mo Diff:
OldNewDifferences
193193
194194
195195 @Verifier(tx)
196-func verify () = if (sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey))
197- then true
198- else sigVerify(tx.bodyBytes, tx.proofs[1], tx.senderPublicKey)
196+func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
199197
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 func getBoundCoords (data) = {
1313 let $t0222244 = data
1414 let x = $t0222244._1
1515 let y = $t0222244._2
1616 let gen = $t0222244._3
1717 let d = pow(2, 0, (gen - 1), 0, 0, HALFUP)
1818 let tl = $Tuple2((x - d), (y - d))
1919 let tc = $Tuple2(x, (y - d))
2020 let tr = $Tuple2((x + d), (y + d))
2121 let l = $Tuple2((x - d), y)
2222 let r = $Tuple2((x + d), y)
2323 let bl = $Tuple2((x - d), (y + d))
2424 let bc = $Tuple2(x, (y + d))
2525 let br = $Tuple2((x + d), (y + d))
2626 [$Tuple3(tl, tc, l), $Tuple3(tc, tr, r), $Tuple3(l, bl, bc), $Tuple3(r, bc, br)]
2727 }
2828
2929
3030 func checkSquareForEvolve (coords,gen,ownerId) = {
3131 let $t0677705 = coords
3232 let xy1 = $t0677705._1
3333 let xy2 = $t0677705._2
3434 let xy3 = $t0677705._3
3535 let xy1Key = (((((toString(xy1._1) + ",") + toString(xy1._2)) + ",") + gen) + "_owner")
3636 let xy2Key = (((((toString(xy2._1) + ",") + toString(xy2._2)) + ",") + gen) + "_owner")
3737 let xy3Key = (((((toString(xy3._1) + ",") + toString(xy3._2)) + ",") + gen) + "_owner")
3838 let xyVal1 = match getString(this, xy1Key) {
3939 case _: Unit =>
4040 "unset"
4141 case x: String =>
4242 x
4343 case _ =>
4444 throw("Match error")
4545 }
4646 let xyVal2 = match getString(this, xy2Key) {
4747 case _: Unit =>
4848 "unset"
4949 case x: String =>
5050 x
5151 case _ =>
5252 throw("Match error")
5353 }
5454 let xyVal3 = match getString(this, xy3Key) {
5555 case _: Unit =>
5656 "unset"
5757 case x: String =>
5858 x
5959 case _ =>
6060 throw("Match error")
6161 }
6262 if (if ((xyVal1 == ownerId))
6363 then (xyVal2 == ownerId)
6464 else false)
6565 then (xyVal3 == ownerId)
6666 else false
6767 }
6868
6969
7070 func getXyReturn (xy,gen) = {
7171 let $t013811396 = xy
7272 let x = $t013811396._1
7373 let y = $t013811396._2
7474 $Tuple3(x, y, (gen + 1))
7575 }
7676
7777
7878 func getXy (xyg,ownerId) = {
7979 let checkList = getBoundCoords(xyg)
8080 let $t015121533 = xyg
8181 let x = $t015121533._1
8282 let y = $t015121533._2
8383 let gen = $t015121533._3
8484 let genStr = toString(gen)
8585 if (checkSquareForEvolve(checkList[0], genStr, ownerId))
8686 then getXyReturn(checkList[0]._1, gen)
8787 else if (checkSquareForEvolve(checkList[1], genStr, ownerId))
8888 then getXyReturn(checkList[1]._1, gen)
8989 else if (checkSquareForEvolve(checkList[2], genStr, ownerId))
9090 then getXyReturn(checkList[2]._1, gen)
9191 else if (checkSquareForEvolve(checkList[3], genStr, ownerId))
9292 then getXyReturn(checkList[3]._1, gen)
9393 else xyg
9494 }
9595
9696
9797 func checkForEvolve (xyg,ownerId) = {
9898 let $t021802201 = xyg
9999 let x = $t021802201._1
100100 let y = $t021802201._2
101101 let gen = $t021802201._3
102102 let p1 = getXy(xyg, ownerId)
103103 if ((p1._3 == gen))
104104 then p1
105105 else {
106106 let p2 = getXy(p1, ownerId)
107107 if ((p2._3 == p1._3))
108108 then p2
109109 else {
110110 let p3 = getXy(p2, ownerId)
111111 if ((p3._3 == p2._3))
112112 then p3
113113 else {
114114 let p4 = getXy(p3, ownerId)
115115 if ((p4._3 == p3._3))
116116 then p4
117117 else {
118118 let p5 = getXy(p4, ownerId)
119119 if ((p5._3 == p4._3))
120120 then p5
121121 else {
122122 let p6 = getXy(p5, ownerId)
123123 if ((p6._3 == p5._3))
124124 then p6
125125 else {
126126 let p7 = getXy(p6, ownerId)
127127 if ((p7._3 == p6._3))
128128 then p7
129129 else {
130130 let p8 = getXy(p7, ownerId)
131131 if ((p8._3 == p7._3))
132132 then p8
133133 else {
134134 let p9 = getXy(p8, ownerId)
135135 if ((p9._3 == p8._3))
136136 then p9
137137 else getXy(getXy(p9, ownerId), ownerId)
138138 }
139139 }
140140 }
141141 }
142142 }
143143 }
144144 }
145145 }
146146 }
147147
148148
149149 func claimSquare (x,y,ownerId,transactionId) = {
150150 let $t032543351 = getXy($Tuple3(parseIntValue(x), parseIntValue(y), 1), ownerId)
151151 let resolvedX = $t032543351._1
152152 let resolvedY = $t032543351._2
153153 let resolvedGen = $t032543351._3
154154 let resolvedXStr = toString(resolvedX)
155155 let resolvedYStr = toString(resolvedY)
156156 let resolvedGenStr = toString(resolvedGen)
157157 let assetName = ((resolvedXStr + ",") + resolvedYStr)
158158 let assetUrl = ((nftDomain + transactionId) + ".png")
159159 let asset = Issue(((assetName + " Gen ") + resolvedGenStr), assetUrl, 1, 0, false)
160160 let assetId = calculateAssetId(asset)
161161 let gen = resolvedGenStr
162162 let dataKeyPrefix = ((assetName + ",") + gen)
163163 $Tuple4(asset, assetId, assetUrl, dataKeyPrefix)
164164 }
165165
166166
167167 @Callable(i)
168168 func purchase (x,y) = {
169169 let ownerId = toBase58String(i.caller.bytes)
170170 let transactionId = toBase58String(i.transactionId)
171171 let $t039844074 = claimSquare(x, y, ownerId, transactionId)
172172 let asset = $t039844074._1
173173 let assetId = $t039844074._2
174174 let assetUrl = $t039844074._3
175175 let dataKeyPrefix = $t039844074._4
176176 [asset, StringEntry((dataKeyPrefix + "_assetId"), toBase58String(assetId)), StringEntry((dataKeyPrefix + "_asset"), assetUrl), StringEntry((dataKeyPrefix + "_owner"), ownerId), StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(i.caller, 1, assetId)]
177177 }
178178
179179
180180
181181 @Callable(i)
182182 func autoBuy (x,y) = {
183183 let address = addressFromPublicKey(base58'251TfxXBEXj72aSzHVyqj8vf47nRECBGm96ZbfjqbY8s')
184184 let ownerId = toBase58String(address.bytes)
185185 let transactionId = toBase58String(i.transactionId)
186186 let $t046064696 = claimSquare(x, y, ownerId, transactionId)
187187 let asset = $t046064696._1
188188 let assetId = $t046064696._2
189189 let assetUrl = $t046064696._3
190190 let dataKeyPrefix = $t046064696._4
191191 [asset, StringEntry((dataKeyPrefix + "_assetId"), toBase58String(assetId)), StringEntry((dataKeyPrefix + "_asset"), assetUrl), StringEntry((dataKeyPrefix + "_owner"), ownerId), StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(address, 1, assetId)]
192192 }
193193
194194
195195 @Verifier(tx)
196-func verify () = if (sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey))
197- then true
198- else sigVerify(tx.bodyBytes, tx.proofs[1], tx.senderPublicKey)
196+func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
199197

github/deemru/w8io/873ac7e 
29.77 ms