tx · 9uWvjSoKwswtLwBfTHbKtfUTgp8epS9AJKSqdCpbDjoU 3MwPF8FWd4fYohy6CXXB6wtjbRRvqFpxmdD: -0.01000000 Waves 2023.07.27 18:24 [2684441] smart account 3MwPF8FWd4fYohy6CXXB6wtjbRRvqFpxmdD > SELF 0.00000000 Waves
{ "type": 13, "id": "9uWvjSoKwswtLwBfTHbKtfUTgp8epS9AJKSqdCpbDjoU", "fee": 1000000, "feeAssetId": null, "timestamp": 1690471462567, "version": 2, "chainId": 84, "sender": "3MwPF8FWd4fYohy6CXXB6wtjbRRvqFpxmdD", "senderPublicKey": "G6PnkMn8MpXBkNwsQKMn1o1V7EKMgZyHCJRdFMQuouBC", "proofs": [ "4njwhXRM5YKYtAd8ZrD41VqL2cagQzaobRRL2rMgeHBiLvKb2ZR2XfZqvu7qZoBaeghq5iae6pqDNuqXCZehpo1K" ], "script": "base64:BgIOCAISABIDCgEBEgMKAQEGABBjb250cmFjdEZpbGVOYW1lAgJwMQADU0VQAgFfAAhrYXNzZXRJZAIHQXNzZXRJRAAJa25ld1Rva2VuAgVUb2tlbgEHd3JhcEVycgEDbXNnCQC5CQIJAMwIAgUQY29udHJhY3RGaWxlTmFtZQkAzAgCAgE6CQDMCAIFA21zZwUDbmlsAgABCHRocm93RXJyAQNtc2cJAAIBCQEHd3JhcEVycgEFA21zZwMBaQENdG9rZW5Jc3N1YW5jZQAEBG5hbWUCCFBSQUNUSUNFBAtkZXNjcmlwdGlvbgIKMToxMCB3YXZlcwQIcXVhbnRpdHkAgK3iBAQIZGVjaW1hbHMAAwQLaXNzdWVfdG9rZW4JAMIIBQUEbmFtZQULZGVzY3JpcHRpb24FCHF1YW50aXR5BQhkZWNpbWFscwYEB2Fzc2V0SWQJALgIAQULaXNzdWVfdG9rZW4JAMwIAgULaXNzdWVfdG9rZW4JAMwIAgkBC0JpbmFyeUVudHJ5AgUIa2Fzc2V0SWQFB2Fzc2V0SWQJAMwIAgkBC1N0cmluZ0VudHJ5AgUJa25ld1Rva2VuCAULaXNzdWVfdG9rZW4EbmFtZQUDbmlsAWkBCGJ1eVRva2VuAQhxdWFudGl0eQQKd2F2ZXNPckVycgkAAAIICQCRAwIIBQFpCHBheW1lbnRzAAAHYXNzZXRJZAUEdW5pdAQHYXNzZXRJZAkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQERQGV4dHJOYXRpdmUoMTA1MikCBQR0aGlzBQhrYXNzZXRJZAIhaWQg0YLQvtC60LXQvdCwINC90LUg0L3QsNC50LTQtdC9BA1wYXltZW50QW1vdW50CAkAkQMCCAUBaQhwYXltZW50cwAABmFtb3VudAQLdG9rZW5fcHJpY2UAgK3iBAQRdG9rZW5zX3RvX3JlY2VpdmUJAGkCBQ1wYXltZW50QW1vdW50CQBoAgULdG9rZW5fcHJpY2UFCHF1YW50aXR5CQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgURdG9rZW5zX3RvX3JlY2VpdmUFB2Fzc2V0SWQFA25pbAFpAQlidXlzVG9rZW4BCHF1YW50aXR5BAp3YXZlc09yRXJyCQAAAggJAJEDAggFAWkIcGF5bWVudHMAAAdhc3NldElkBQR1bml0BAdhc3NldElkCQETdmFsdWVPckVycm9yTWVzc2FnZQIJARFAZXh0ck5hdGl2ZSgxMDUyKQIFBHRoaXMFCGthc3NldElkAiFpZCDRgtC+0LrQtdC90LAg0L3QtSDQvdCw0LnQtNC10L0EDXBheW1lbnRBbW91bnQICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50BAt0b2tlbl9wcmljZQCAreIEBBF0b2tlbnNfdG9fcmVjZWl2ZQkAaAIFDXBheW1lbnRBbW91bnQJAGgCBQt0b2tlbl9wcmljZQUIcXVhbnRpdHkDCQAAAgUKd2F2ZXNPckVycgYJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwgFAWkGY2FsbGVyBRF0b2tlbnNfdG9fcmVjZWl2ZQUHYXNzZXRJZAUDbmlsCQEIdGhyb3dFcnIBAivQn9C70LDRgtC10LYg0LTQvtC70LbQtdC9INCx0YvRgtGMINCyIFdBVkVTAMy6fU8=", "height": 2684441, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 64oE3vsFjQoY15ntpn8HHjWx7tkXq2y7mspnhp7PC31d Next: BFRVnotfL65bmDNVHTBygYpQyBwyMUxTnuzJQNhwVyvJ Diff:
Old | New | Differences | |
---|---|---|---|
46 | 46 | let assetId = valueOrErrorMessage(getBinaryValue(this, kassetId), "id токена не найден") | |
47 | 47 | let paymentAmount = i.payments[0].amount | |
48 | 48 | let token_price = 10000000 | |
49 | - | let tokens_to_receive = (paymentAmount | |
49 | + | let tokens_to_receive = (paymentAmount * (token_price * quantity)) | |
50 | 50 | if ((wavesOrErr == true)) | |
51 | 51 | then [ScriptTransfer(i.caller, tokens_to_receive, assetId)] | |
52 | 52 | else throwErr("Платеж должен быть в WAVES") |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 6 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let contractFileName = "p1" | |
5 | 5 | ||
6 | 6 | let SEP = "_" | |
7 | 7 | ||
8 | 8 | let kassetId = "AssetID" | |
9 | 9 | ||
10 | 10 | let knewToken = "Token" | |
11 | 11 | ||
12 | 12 | func wrapErr (msg) = makeString([contractFileName, ":", msg], "") | |
13 | 13 | ||
14 | 14 | ||
15 | 15 | func throwErr (msg) = throw(wrapErr(msg)) | |
16 | 16 | ||
17 | 17 | ||
18 | 18 | @Callable(i) | |
19 | 19 | func tokenIssuance () = { | |
20 | 20 | let name = "PRACTICE" | |
21 | 21 | let description = "1:10 waves" | |
22 | 22 | let quantity = 10000000 | |
23 | 23 | let decimals = 3 | |
24 | 24 | let issue_token = Issue(name, description, quantity, decimals, true) | |
25 | 25 | let assetId = calculateAssetId(issue_token) | |
26 | 26 | [issue_token, BinaryEntry(kassetId, assetId), StringEntry(knewToken, issue_token.name)] | |
27 | 27 | } | |
28 | 28 | ||
29 | 29 | ||
30 | 30 | ||
31 | 31 | @Callable(i) | |
32 | 32 | func buyToken (quantity) = { | |
33 | 33 | let wavesOrErr = (i.payments[0].assetId == unit) | |
34 | 34 | let assetId = valueOrErrorMessage(getBinaryValue(this, kassetId), "id токена не найден") | |
35 | 35 | let paymentAmount = i.payments[0].amount | |
36 | 36 | let token_price = 10000000 | |
37 | 37 | let tokens_to_receive = (paymentAmount / (token_price * quantity)) | |
38 | 38 | [ScriptTransfer(i.caller, tokens_to_receive, assetId)] | |
39 | 39 | } | |
40 | 40 | ||
41 | 41 | ||
42 | 42 | ||
43 | 43 | @Callable(i) | |
44 | 44 | func buysToken (quantity) = { | |
45 | 45 | let wavesOrErr = (i.payments[0].assetId == unit) | |
46 | 46 | let assetId = valueOrErrorMessage(getBinaryValue(this, kassetId), "id токена не найден") | |
47 | 47 | let paymentAmount = i.payments[0].amount | |
48 | 48 | let token_price = 10000000 | |
49 | - | let tokens_to_receive = (paymentAmount | |
49 | + | let tokens_to_receive = (paymentAmount * (token_price * quantity)) | |
50 | 50 | if ((wavesOrErr == true)) | |
51 | 51 | then [ScriptTransfer(i.caller, tokens_to_receive, assetId)] | |
52 | 52 | else throwErr("Платеж должен быть в WAVES") | |
53 | 53 | } | |
54 | 54 | ||
55 | 55 |
github/deemru/w8io/169f3d6 44.15 ms ◑![]()