tx · 9sc2JnQdyErt2aYnGqTCXLjRx6M21ywprXyYSr2zk1Va

3N4vqUXWw8tf23LDWDbSEpJZH6dent3ETFu:  -0.04000000 Waves

2022.02.15 04:51 [1924108] smart account 3N4vqUXWw8tf23LDWDbSEpJZH6dent3ETFu > SELF 0.00000000 Waves

{ "type": 13, "id": "9sc2JnQdyErt2aYnGqTCXLjRx6M21ywprXyYSr2zk1Va", "fee": 4000000, "feeAssetId": null, "timestamp": 1644889906555, "version": 2, "chainId": 84, "sender": "3N4vqUXWw8tf23LDWDbSEpJZH6dent3ETFu", "senderPublicKey": "D4v2S9mjah7eEEmuQVBNd4WipC3scs8V4PjuDBweWatE", "proofs": [ "56zS3WjvuiCVv9yshq7RCiaKDc9zcjeDaXoPYHRf8Zb1XrkZs7acU6K3ejA3Lf5vecsf2bjjPmcxjCEk2A69Be72" ], "script": "base64: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", "height": 1924108, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: FigRWRStUtTT4LbXNaRARFTA773XY1bvit8Zu93YyBmK Next: HTkhgvzSPx8Atgw8tdZisy4YMYjJvyzqXLbUyFuNa6fd Diff:
OldNewDifferences
5757
5858
5959 @Callable(i)
60+func addOwnerAndAmount (ownerId,assetId,amount) = [StringEntry((("sale_" + assetId) + "_originalOwner"), ownerId), IntegerEntry((("sale_" + assetId) + "_amount"), amount)]
61+
62+
63+
64+@Callable(i)
6065 func purchase (x,y) = {
6166 let ownerId = toBase58String(i.caller.bytes)
6267 let transactionId = toBase58String(i.transactionId)
63- let $t015101605 = claimSquare(x, y, "1", ownerId, transactionId)
64- let asset = $t015101605._1
65- let assetId = $t015101605._2
66- let assetUrl = $t015101605._3
67- let dataKeyPrefix = $t015101605._4
68+ let $t017281823 = claimSquare(x, y, "1", ownerId, transactionId)
69+ let asset = $t017281823._1
70+ let assetId = $t017281823._2
71+ let assetUrl = $t017281823._3
72+ let dataKeyPrefix = $t017281823._4
6873 [asset, StringEntry((dataKeyPrefix + "_assetId"), toBase58String(assetId)), StringEntry((dataKeyPrefix + "_asset"), assetUrl), StringEntry((dataKeyPrefix + "_owner"), ownerId), StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(i.caller, 1, assetId)]
6974 }
7075
7378 @Callable(i)
7479 func autoBuy (x,y) = {
7580 let transactionId = toBase58String(i.transactionId)
76- let $t020472143 = claimSquare(x, y, "1", holdings, transactionId)
77- let asset = $t020472143._1
78- let assetId = $t020472143._2
79- let assetUrl = $t020472143._3
80- let dataKeyPrefix = $t020472143._4
81+ let $t022652361 = claimSquare(x, y, "1", holdings, transactionId)
82+ let asset = $t022652361._1
83+ let assetId = $t022652361._2
84+ let assetUrl = $t022652361._3
85+ let dataKeyPrefix = $t022652361._4
8186 let assetIdStr = toBase58String(assetId)
8287 [asset, StringEntry((dataKeyPrefix + "_assetId"), assetIdStr), StringEntry((dataKeyPrefix + "_asset"), assetUrl), StringEntry((dataKeyPrefix + "_owner"), holdings), StringEntry((("sale_" + assetIdStr) + "_originalOwner"), holdings), IntegerEntry((("sale_" + assetIdStr) + "_amount"), 2), StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(holdingsAddress, 1, assetId)]
8388 }
8792 @Callable(i)
8893 func evolve (x,y,gen,ownerId) = {
8994 let transactionId = toBase58String(i.transactionId)
90- let $t028732968 = claimSquare(x, y, gen, ownerId, transactionId)
91- let asset = $t028732968._1
92- let assetId = $t028732968._2
93- let assetUrl = $t028732968._3
94- let dataKeyPrefix = $t028732968._4
95+ let $t030913186 = claimSquare(x, y, gen, ownerId, transactionId)
96+ let asset = $t030913186._1
97+ let assetId = $t030913186._2
98+ let assetUrl = $t030913186._3
99+ let dataKeyPrefix = $t030913186._4
95100 [asset, StringEntry((dataKeyPrefix + "_assetId"), toBase58String(assetId)), StringEntry((dataKeyPrefix + "_asset"), assetUrl), StringEntry((dataKeyPrefix + "_owner"), ownerId), StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(Address(fromBase58String(ownerId)), 1, assetId)]
96101 }
97102
113118 case _ =>
114119 throw("Owner not found in data")
115120 }
116- if ((1 > amount))
121+ if ((100000000 > amount))
117122 then throw("Amount needs to be more than 1 wave")
118123 else if (if ((callerId != ownerId))
119124 then (callerId != holdings)
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 holdings = "3N9R7u449Z1b76QpJp9u3gzPjMYQYnp3V7r"
1313
1414 let holdingsAddress = Address(fromBase58String(holdings))
1515
1616 func getAssetName (x,y) = {
1717 let name = ((x + ",") + y)
1818 name
1919 }
2020
2121
2222 func getDataKeyPrefix (x,y,gen) = {
2323 let name = getAssetName(x, y)
2424 let prefix = ((name + ",") + gen)
2525 prefix
2626 }
2727
2828
2929 func getXYGenFromName (name) = {
3030 let parts = split(name, ",")
3131 let tuple = $Tuple3(parts[0], parts[1], parts[2])
3232 tuple
3333 }
3434
3535
3636 func getDataKeyPrefixFromAssetName (name) = {
3737 let $t0683723 = getXYGenFromName(name)
3838 let x = $t0683723._1
3939 let y = $t0683723._2
4040 let gen = $t0683723._3
4141 let prefix = getDataKeyPrefix(x, y, gen)
4242 prefix
4343 }
4444
4545
4646 func claimSquare (x,y,gen,ownerId,transactionId) = {
4747 let resolvedXStr = x
4848 let resolvedYStr = y
4949 let resolvedGenStr = gen
5050 let assetName = getAssetName(resolvedXStr, resolvedYStr)
5151 let assetUrl = ((nftDomain + transactionId) + ".png")
5252 let asset = Issue(((assetName + ",") + resolvedGenStr), assetUrl, 1, 0, false)
5353 let assetId = calculateAssetId(asset)
5454 let dataKeyPrefix = getDataKeyPrefix(resolvedXStr, resolvedYStr, gen)
5555 $Tuple4(asset, assetId, assetUrl, dataKeyPrefix)
5656 }
5757
5858
5959 @Callable(i)
60+func addOwnerAndAmount (ownerId,assetId,amount) = [StringEntry((("sale_" + assetId) + "_originalOwner"), ownerId), IntegerEntry((("sale_" + assetId) + "_amount"), amount)]
61+
62+
63+
64+@Callable(i)
6065 func purchase (x,y) = {
6166 let ownerId = toBase58String(i.caller.bytes)
6267 let transactionId = toBase58String(i.transactionId)
63- let $t015101605 = claimSquare(x, y, "1", ownerId, transactionId)
64- let asset = $t015101605._1
65- let assetId = $t015101605._2
66- let assetUrl = $t015101605._3
67- let dataKeyPrefix = $t015101605._4
68+ let $t017281823 = claimSquare(x, y, "1", ownerId, transactionId)
69+ let asset = $t017281823._1
70+ let assetId = $t017281823._2
71+ let assetUrl = $t017281823._3
72+ let dataKeyPrefix = $t017281823._4
6873 [asset, StringEntry((dataKeyPrefix + "_assetId"), toBase58String(assetId)), StringEntry((dataKeyPrefix + "_asset"), assetUrl), StringEntry((dataKeyPrefix + "_owner"), ownerId), StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(i.caller, 1, assetId)]
6974 }
7075
7176
7277
7378 @Callable(i)
7479 func autoBuy (x,y) = {
7580 let transactionId = toBase58String(i.transactionId)
76- let $t020472143 = claimSquare(x, y, "1", holdings, transactionId)
77- let asset = $t020472143._1
78- let assetId = $t020472143._2
79- let assetUrl = $t020472143._3
80- let dataKeyPrefix = $t020472143._4
81+ let $t022652361 = claimSquare(x, y, "1", holdings, transactionId)
82+ let asset = $t022652361._1
83+ let assetId = $t022652361._2
84+ let assetUrl = $t022652361._3
85+ let dataKeyPrefix = $t022652361._4
8186 let assetIdStr = toBase58String(assetId)
8287 [asset, StringEntry((dataKeyPrefix + "_assetId"), assetIdStr), StringEntry((dataKeyPrefix + "_asset"), assetUrl), StringEntry((dataKeyPrefix + "_owner"), holdings), StringEntry((("sale_" + assetIdStr) + "_originalOwner"), holdings), IntegerEntry((("sale_" + assetIdStr) + "_amount"), 2), StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(holdingsAddress, 1, assetId)]
8388 }
8489
8590
8691
8792 @Callable(i)
8893 func evolve (x,y,gen,ownerId) = {
8994 let transactionId = toBase58String(i.transactionId)
90- let $t028732968 = claimSquare(x, y, gen, ownerId, transactionId)
91- let asset = $t028732968._1
92- let assetId = $t028732968._2
93- let assetUrl = $t028732968._3
94- let dataKeyPrefix = $t028732968._4
95+ let $t030913186 = claimSquare(x, y, gen, ownerId, transactionId)
96+ let asset = $t030913186._1
97+ let assetId = $t030913186._2
98+ let assetUrl = $t030913186._3
99+ let dataKeyPrefix = $t030913186._4
95100 [asset, StringEntry((dataKeyPrefix + "_assetId"), toBase58String(assetId)), StringEntry((dataKeyPrefix + "_asset"), assetUrl), StringEntry((dataKeyPrefix + "_owner"), ownerId), StringEntry(transactionId, dataKeyPrefix), ScriptTransfer(Address(fromBase58String(ownerId)), 1, assetId)]
96101 }
97102
98103
99104
100105 @Callable(i)
101106 func putForSale (assetId,amount) = {
102107 let callerId = toBase58String(i.caller.bytes)
103108 let assetData = match assetInfo(fromBase58String(assetId)) {
104109 case ass: Asset =>
105110 ass
106111 case _ =>
107112 throw("Asset not found")
108113 }
109114 let dataPrefix = getDataKeyPrefixFromAssetName(assetData.name)
110115 let ownerId = match getString(this, (dataPrefix + "_owner")) {
111116 case s: String =>
112117 s
113118 case _ =>
114119 throw("Owner not found in data")
115120 }
116- if ((1 > amount))
121+ if ((100000000 > amount))
117122 then throw("Amount needs to be more than 1 wave")
118123 else if (if ((callerId != ownerId))
119124 then (callerId != holdings)
120125 else false)
121126 then throw("You are not able to put this asset up for sale")
122127 else {
123128 let res = invoke(holdingsAddress, "addOwnerAndAmount", [callerId, assetId, amount], [AttachedPayment(unit, 0)])
124129 if ((res == res))
125130 then [StringEntry((("sale_" + assetId) + "_originalOwner"), callerId), IntegerEntry((("sale_" + assetId) + "_amount"), amount), ScriptTransfer(holdingsAddress, 1, fromBase58String(assetId))]
126131 else throw("Strict value is not equal to itself.")
127132 }
128133 }
129134
130135
131136 @Verifier(tx)
132137 func verify () = true
133138

github/deemru/w8io/873ac7e 
38.42 ms