2019.03.04 10:39 [1422142] smart account 3P9UAorJQ8Uu8nbTVBHFmfuYwczYVUyVMGX > SELF 0.00000000 Waves
{ "type": 13, "id": "6Yt8tasLUmxc4PF7yABSf2Np8gHKJWDXk6CprHkXLz86", "fee": 1000000, "feeAssetId": null, "timestamp": 1551685159557, "version": 1, "sender": "3P9UAorJQ8Uu8nbTVBHFmfuYwczYVUyVMGX", "senderPublicKey": "AFuwdwyjNoREiqspUyxyjf87eHR1mkyayBtTiDZjDY4t", "proofs": [ "4YcNhvZuy3SLCAdB2GbjxaEyUL31QLP4Yti8kAX3oVjsxSwuY1ev2WydWFdK1TcEnLJUMMdGkN5wQFNbCpW9MMpB" ], "script": "base64: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", "chainId": 87, "height": 1422142, "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
Old | New | Differences | |
---|---|---|---|
1 | - | # no script | |
1 | + | {-# STDLIB_VERSION 1 #-} | |
2 | + | {-# CONTENT_TYPE EXPRESSION #-} | |
3 | + | let startHeight = 1422150 | |
4 | + | let finishHeight = (startHeight + 6000) | |
5 | + | let startPrice = 100000 | |
6 | + | let this = extract(tx.sender) | |
7 | + | let token = base58'BYHS4v4vY48x2f4y2vYW5EvmEvQitXmrJSiQdD9fHwxy' | |
8 | + | match tx { | |
9 | + | case d: DataTransaction => | |
10 | + | let currentPrice = if (isDefined(getInteger(this, "price"))) | |
11 | + | then extract(getInteger(this, "price")) | |
12 | + | else startPrice | |
13 | + | let newPrice = extract(getInteger(d.data, "price")) | |
14 | + | let priceIsBigger = (newPrice > currentPrice) | |
15 | + | let fee = 700000 | |
16 | + | let hasMoney = ((wavesBalance(tx.sender) + fee) >= newPrice) | |
17 | + | let correctFields = if ((size(d.data) == 2)) | |
18 | + | then (d.sender == addressFromString(extract(getString(d.data, "sender")))) | |
19 | + | else false | |
20 | + | if (if (if (if ((height >= startHeight)) | |
21 | + | then (finishHeight >= height) | |
22 | + | else false) | |
23 | + | then priceIsBigger | |
24 | + | else false) | |
25 | + | then hasMoney | |
26 | + | else false) | |
27 | + | then correctFields | |
28 | + | else false | |
29 | + | case e: ExchangeTransaction => | |
30 | + | let senderIsWinner = (e.sender == addressFromString(extract(getString(this, "sender")))) | |
31 | + | let correctAssetPair = if ((e.sellOrder.assetPair.amountAsset == token)) | |
32 | + | then !(isDefined(e.sellOrder.assetPair.priceAsset)) | |
33 | + | else false | |
34 | + | let correctAmount = (e.amount == 1) | |
35 | + | let correctPrice = (e.price == extract(getInteger(this, "price"))) | |
36 | + | if (if (if (if ((height > finishHeight)) | |
37 | + | then senderIsWinner | |
38 | + | else false) | |
39 | + | then correctAssetPair | |
40 | + | else false) | |
41 | + | then correctAmount | |
42 | + | else false) | |
43 | + | then correctPrice | |
44 | + | else false | |
45 | + | case _ => | |
46 | + | false | |
47 | + | } |
github/deemru/w8io/786bc32 45.57 ms ◑