tx · 4ncEewfzv1YQiJ3Et4WJ1JtjeqPCE6sVbdY3hud2Y5NR

3MuVEuhXaTvF3ELakZksUP77a4bT8gPJtm6:  -0.01000000 Waves

2021.12.04 18:22 [1819710] smart account 3MuVEuhXaTvF3ELakZksUP77a4bT8gPJtm6 > SELF 0.00000000 Waves

{ "type": 13, "id": "4ncEewfzv1YQiJ3Et4WJ1JtjeqPCE6sVbdY3hud2Y5NR", "fee": 1000000, "feeAssetId": null, "timestamp": 1638631348167, "version": 2, "chainId": 84, "sender": "3MuVEuhXaTvF3ELakZksUP77a4bT8gPJtm6", "senderPublicKey": "2LizaCNygFYwGFKe34vvFHgJc4ckK7MpzRzziRNn56Cu", "proofs": [ "ZfUgfkd1YJ8rBZJTJTQXJzDmVfd9yAUUGzye5mffZS5bmT7zSvtpym6c9MJNEHUzkcvHRD2oiBqYHmh7KMScG2q" ], "script": "base64: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", "height": 1819710, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 84VoT8biS9VYSbVe9hzYEiqSdkDoBDzFG1HUWy5adPU Next: 5a1d92LuVrxUERLnykqnzdY7nV1B6zgtUUBEkRHoj6zA Diff:
OldNewDifferences
4242 [pixxy[x], makeString([callerAdress, toString((price + parseIntValue(initprice))), "color", "url"], separ), "", toString(price)]
4343 }
4444
45- func paymentforpix (x) = if ((number > x))
45+ func paymentforpix (x) = if (if ((number > x))
46+ then (getrecord(x) != false)
47+ else false)
4648 then match parseInt(split(getStringValue(pixxy[x]), separ)[1]) {
4749 case a: Int =>
4850 parseIntValue(split(getStringValue(pixxy[x]), separ)[1])
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let master = Address(base58'3MuW4t1jCXHt8WRsHVLUar32EnvJxZaQWAx')
55
66 let separ = "|||||"
77
88 let initprice = "100000"
99
1010 @Callable(i)
1111 func paint (idata) = {
1212 let callerAdress = toBase58String(i.caller.bytes)
1313 let pixxy = split(idata, separ)
1414 let number = min([5, size(pixxy)])
1515 let records = nil
1616 func validxy (x) = match parseInt(pixxy[x]) {
1717 case a: Int =>
1818 if (if ((parseIntValue(pixxy[x]) > -1))
1919 then (1000 > parseIntValue(pixxy[x]))
2020 else false)
2121 then parseInt(pixxy[x])
2222 else false
2323 case _ =>
2424 false
2525 }
2626
2727 func getrecord (x) = match getString(pixxy[x]) {
2828 case a: String =>
2929 a
3030 case _ =>
3131 false
3232 }
3333
3434 func makerecord (x) = if ((x > (number - 1)))
3535 then ["--", "--", "--", "0"]
3636 else if ((validxy(x) == false))
3737 then ["--", "--", "--", "0"]
3838 else if ((getrecord(x) == false))
3939 then [pixxy[x], makeString([callerAdress, initprice, "color", "url"], separ), "", initprice]
4040 else {
4141 let price = parseIntValue(split(getStringValue(pixxy[x]), separ)[1])
4242 [pixxy[x], makeString([callerAdress, toString((price + parseIntValue(initprice))), "color", "url"], separ), "", toString(price)]
4343 }
4444
45- func paymentforpix (x) = if ((number > x))
45+ func paymentforpix (x) = if (if ((number > x))
46+ then (getrecord(x) != false)
47+ else false)
4648 then match parseInt(split(getStringValue(pixxy[x]), separ)[1]) {
4749 case a: Int =>
4850 parseIntValue(split(getStringValue(pixxy[x]), separ)[1])
4951 case _ =>
5052 0
5153 }
5254 else 0
5355
5456 let payment = ((((paymentforpix(0) + paymentforpix(1)) + paymentforpix(2)) + paymentforpix(3)) + paymentforpix(4))
5557 let pmt = if ((size(i.payments) == 1))
5658 then i.payments[0]
5759 else throw(("Attached payment is required: " + toString(payment)))
5860 if (isDefined(pmt.assetId))
5961 then throw("works with waves only")
6062 else if ((payment > pmt.amount))
6163 then throw(((("you give: " + toString(pmt.amount)) + ", but deal needs: ") + toString(payment)))
6264 else {
6365 let all = [makerecord(0), makerecord(1), makerecord(2), makerecord(3), makerecord(4)]
6466 $Tuple2([StringEntry(all[0][0], all[0][1]), ScriptTransfer(master, parseIntValue(all[0][3]), unit), StringEntry(all[1][0], all[1][1]), ScriptTransfer(master, parseIntValue(all[1][3]), unit), StringEntry(all[2][0], all[2][1]), ScriptTransfer(master, parseIntValue(all[2][3]), unit), StringEntry(all[3][0], all[3][1]), ScriptTransfer(master, parseIntValue(all[3][3]), unit), StringEntry(all[4][0], all[4][1]), ScriptTransfer(master, parseIntValue(all[4][3]), unit)], unit)
6567 }
6668 }
6769
6870

github/deemru/w8io/c3f4982 
28.86 ms