tx · 9w51zdBhXk44Bx5AmupAf1EEGJanjtPK5x23EPdCYsKj

3N4vqUXWw8tf23LDWDbSEpJZH6dent3ETFu:  -0.04000000 Waves

2022.01.02 19:45 [1861535] smart account 3N4vqUXWw8tf23LDWDbSEpJZH6dent3ETFu > SELF 0.00000000 Waves

{ "type": 13, "id": "9w51zdBhXk44Bx5AmupAf1EEGJanjtPK5x23EPdCYsKj", "fee": 4000000, "feeAssetId": null, "timestamp": 1641141943272, "version": 2, "chainId": 84, "sender": "3N4vqUXWw8tf23LDWDbSEpJZH6dent3ETFu", "senderPublicKey": "D4v2S9mjah7eEEmuQVBNd4WipC3scs8V4PjuDBweWatE", "proofs": [ "EvPhhE1yFf5VzXD4SUL4WrdME9EdmxHws5uxHT1vsPuazniRBBZep9VV3sdMRWBCsavzB4pRggrG8p5xnfpPjSK" ], "script": "base64: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", "height": 1861535, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: B9LePVe1Ld9Dt9c6tDdtMrg5GiLAt9tdYo1S34TNjUCb Next: FtqVuP8cSzffwq3jXxeR6KSbvq8yMXDmgnsA9rP8zSHv Diff:
OldNewDifferences
3030 let xy1 = $t0656684._1
3131 let xy2 = $t0656684._2
3232 let xy3 = $t0656684._3
33- let xyVal1 = match getStringValue(this, (((((toString(xy1._1) + ",") + toString(xy1._2)) + ",") + gen) + "_owner")) {
33+ let xyVal1 = match getString(this, (((((toString(xy1._1) + ",") + toString(xy1._2)) + ",") + gen) + "_owner")) {
3434 case n: String =>
3535 n
3636 case _ =>
3737 ""
3838 }
39- let xyVal2 = match getStringValue(this, (((((toString(xy2._1) + ",") + toString(xy2._2)) + ",") + gen) + "_owner")) {
39+ let xyVal2 = match getString(this, (((((toString(xy2._1) + ",") + toString(xy2._2)) + ",") + gen) + "_owner")) {
4040 case n: String =>
4141 n
4242 case _ =>
4343 ""
4444 }
45- let xyVal3 = match getStringValue(this, (((((toString(xy3._1) + ",") + toString(xy3._2)) + ",") + gen) + "_owner")) {
45+ let xyVal3 = match getString(this, (((((toString(xy3._1) + ",") + toString(xy3._2)) + ",") + gen) + "_owner")) {
4646 case n: String =>
4747 n
4848 case _ =>
5757
5858
5959 func getXyReturn (xy,gen) = {
60- let $t012671282 = xy
61- let x = $t012671282._1
62- let y = $t012671282._2
60+ let $t012521267 = xy
61+ let x = $t012521267._1
62+ let y = $t012521267._2
6363 $Tuple3(x, y, (gen + 1))
6464 }
6565
6666
6767 func getXy (xyg,ownerId) = {
6868 let checkList = getBoundCoords(xyg)
69- let $t013981419 = xyg
70- let x = $t013981419._1
71- let y = $t013981419._2
72- let gen = $t013981419._3
69+ let $t013831404 = xyg
70+ let x = $t013831404._1
71+ let y = $t013831404._2
72+ let gen = $t013831404._3
7373 let genStr = toString(gen)
7474 if (checkSquareForEvolve(checkList[0], genStr, ownerId))
7575 then getXyReturn(checkList[0]._1, gen)
8686 @Callable(i)
8787 func purchase (x,y) = {
8888 let ownerId = toBase58String(i.caller.bytes)
89- let $t020422139 = getXy($Tuple3(parseIntValue(x), parseIntValue(y), 1), ownerId)
90- let resolvedX = $t020422139._1
91- let resolvedY = $t020422139._2
92- let resolvedGen = $t020422139._3
89+ let $t020272124 = getXy($Tuple3(parseIntValue(x), parseIntValue(y), 1), ownerId)
90+ let resolvedX = $t020272124._1
91+ let resolvedY = $t020272124._2
92+ let resolvedGen = $t020272124._3
9393 let resolvedXStr = toString(resolvedX)
9494 let resolvedYStr = toString(resolvedY)
9595 let resolvedGenStr = toString(resolvedGen)
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.ca/"
99
1010 func getBoundCoords (data) = {
1111 let $t0205227 = data
1212 let x = $t0205227._1
1313 let y = $t0205227._2
1414 let gen = $t0205227._3
1515 let d = pow(2, 0, gen, 0, 0, HALFUP)
1616 let tl = $Tuple2((x - d), (y - d))
1717 let tc = $Tuple2(x, (y - d))
1818 let tr = $Tuple2((x + d), (y + d))
1919 let l = $Tuple2((x - d), y)
2020 let r = $Tuple2((x + d), y)
2121 let bl = $Tuple2((x - d), (y + d))
2222 let bc = $Tuple2(x, (y + d))
2323 let br = $Tuple2((x + d), (y + d))
2424 [$Tuple3(tl, tc, l), $Tuple3(tc, tr, r), $Tuple3(l, bl, bc), $Tuple3(r, bc, br)]
2525 }
2626
2727
2828 func checkSquareForEvolve (coords,gen,ownerId) = {
2929 let $t0656684 = coords
3030 let xy1 = $t0656684._1
3131 let xy2 = $t0656684._2
3232 let xy3 = $t0656684._3
33- let xyVal1 = match getStringValue(this, (((((toString(xy1._1) + ",") + toString(xy1._2)) + ",") + gen) + "_owner")) {
33+ let xyVal1 = match getString(this, (((((toString(xy1._1) + ",") + toString(xy1._2)) + ",") + gen) + "_owner")) {
3434 case n: String =>
3535 n
3636 case _ =>
3737 ""
3838 }
39- let xyVal2 = match getStringValue(this, (((((toString(xy2._1) + ",") + toString(xy2._2)) + ",") + gen) + "_owner")) {
39+ let xyVal2 = match getString(this, (((((toString(xy2._1) + ",") + toString(xy2._2)) + ",") + gen) + "_owner")) {
4040 case n: String =>
4141 n
4242 case _ =>
4343 ""
4444 }
45- let xyVal3 = match getStringValue(this, (((((toString(xy3._1) + ",") + toString(xy3._2)) + ",") + gen) + "_owner")) {
45+ let xyVal3 = match getString(this, (((((toString(xy3._1) + ",") + toString(xy3._2)) + ",") + gen) + "_owner")) {
4646 case n: String =>
4747 n
4848 case _ =>
4949 ""
5050 }
5151 if (if ((xyVal1 == ownerId))
5252 then (xyVal2 == ownerId)
5353 else false)
5454 then (xyVal3 == ownerId)
5555 else false
5656 }
5757
5858
5959 func getXyReturn (xy,gen) = {
60- let $t012671282 = xy
61- let x = $t012671282._1
62- let y = $t012671282._2
60+ let $t012521267 = xy
61+ let x = $t012521267._1
62+ let y = $t012521267._2
6363 $Tuple3(x, y, (gen + 1))
6464 }
6565
6666
6767 func getXy (xyg,ownerId) = {
6868 let checkList = getBoundCoords(xyg)
69- let $t013981419 = xyg
70- let x = $t013981419._1
71- let y = $t013981419._2
72- let gen = $t013981419._3
69+ let $t013831404 = xyg
70+ let x = $t013831404._1
71+ let y = $t013831404._2
72+ let gen = $t013831404._3
7373 let genStr = toString(gen)
7474 if (checkSquareForEvolve(checkList[0], genStr, ownerId))
7575 then getXyReturn(checkList[0]._1, gen)
7676 else if (checkSquareForEvolve(checkList[1], genStr, ownerId))
7777 then getXyReturn(checkList[1]._1, gen)
7878 else if (checkSquareForEvolve(checkList[2], genStr, ownerId))
7979 then getXyReturn(checkList[2]._1, gen)
8080 else if (checkSquareForEvolve(checkList[3], genStr, ownerId))
8181 then getXyReturn(checkList[3]._1, gen)
8282 else xyg
8383 }
8484
8585
8686 @Callable(i)
8787 func purchase (x,y) = {
8888 let ownerId = toBase58String(i.caller.bytes)
89- let $t020422139 = getXy($Tuple3(parseIntValue(x), parseIntValue(y), 1), ownerId)
90- let resolvedX = $t020422139._1
91- let resolvedY = $t020422139._2
92- let resolvedGen = $t020422139._3
89+ let $t020272124 = getXy($Tuple3(parseIntValue(x), parseIntValue(y), 1), ownerId)
90+ let resolvedX = $t020272124._1
91+ let resolvedY = $t020272124._2
92+ let resolvedGen = $t020272124._3
9393 let resolvedXStr = toString(resolvedX)
9494 let resolvedYStr = toString(resolvedY)
9595 let resolvedGenStr = toString(resolvedGen)
9696 let assetName = ((resolvedXStr + ",") + resolvedYStr)
9797 let assetUrl = ((nftDomain + toBase58String(i.transactionId)) + ".png")
9898 let asset = Issue(((assetName + " Gen ") + resolvedGenStr), assetUrl, 1, 0, false)
9999 let assetId = calculateAssetId(asset)
100100 let gen = ("0" + resolvedGenStr)
101101 let dataKeyPrefix = ((assetName + ",") + gen)
102102 [asset, StringEntry((dataKeyPrefix + "_assetId"), toBase58String(assetId)), StringEntry((dataKeyPrefix + "_asset"), assetUrl), StringEntry((dataKeyPrefix + "_owner"), ownerId), ScriptTransfer(i.caller, 1, assetId)]
103103 }
104104
105105
106106 @Verifier(tx)
107107 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
108108

github/deemru/w8io/873ac7e 
41.90 ms