tx · BwyhVcWC3heSHBdBwq4UDxRPFDkXXJFNu9tSSSuG6sxs
3N1udE8qJtHNC1hiZmVEtVrZP7uFT8S63ag: -0.04000000 Waves
2022.02.03 15:23 [1907414] smart account 3N1udE8qJtHNC1hiZmVEtVrZP7uFT8S63ag > SELF 0.00000000 Waves
{
"type": 13,
"id": "BwyhVcWC3heSHBdBwq4UDxRPFDkXXJFNu9tSSSuG6sxs",
"fee": 4000000,
"feeAssetId": null,
"timestamp": 1643890994394,
"version": 2,
"chainId": 84,
"sender": "3N1udE8qJtHNC1hiZmVEtVrZP7uFT8S63ag",
"senderPublicKey": "5EqWwsB9JYQxDs54neduFP8jn3af55NmywxWuLo1JY4W",
"proofs": [
"4vGKpZW5camFSa4vFTaY2qLxc5xp29zSfk4BQjVd7xWgan7PTDhNCj9poSrAbN3jyJj4oq59bdk7AweyKXhYCXva"
],
"script": "base64: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",
"height": 1907414,
"applicationStatus": "succeeded",
"spentComplexity": 0
}
View: original | compacted
Prev: 7eLaVXLCtgt9DQg6LLL6D8SAtV5oBgrX92GkiEYpagWC
Next: none
Diff:
Old | New | | Differences |
---|
1 | 1 | | {-# STDLIB_VERSION 5 #-} |
---|
2 | 2 | | {-# SCRIPT_TYPE ACCOUNT #-} |
---|
3 | 3 | | {-# CONTENT_TYPE DAPP #-} |
---|
| 4 | + | let separator = "_" |
---|
| 5 | + | |
---|
| 6 | + | let v1TokenName = "The Token" |
---|
| 7 | + | |
---|
| 8 | + | let v1TokenDesc = "" |
---|
| 9 | + | |
---|
| 10 | + | let v1InitialCharCreationStats = (((((((((((((((((((((((((((((((((("4" + separator) + "20") + separator) + "1000") + separator) + "100") + separator) + "200") + separator) + "100") + separator) + "10") + separator) + "20") + separator) + "500") + separator) + "50") + separator) + "100") + separator) + "100") + separator) + "10") + separator) + "20") + separator) + "1") + separator) + "1") + separator) + "1") + separator) + "1") |
---|
| 11 | + | |
---|
4 | 12 | | let keyInitV1Done = "init_v1_done" |
---|
5 | 13 | | |
---|
6 | 14 | | let keyTokenId = "tokenId" |
---|
7 | 15 | | |
---|
| 16 | + | let keyInitialCharCreationStats = "initialCharCreationStats" |
---|
| 17 | + | |
---|
8 | 18 | | @Callable(i) |
---|
9 | 19 | | func clear () = { |
---|
10 | | - | let tokenId = fromBase58String("FYbW8JTtnGynXN2Hu37iiTYtx8rW9RHCDf264XYZKy1B") |
---|
11 | | - | let tokenId2 = fromBase58String("25FEqEjRkqK6yCkiT7Lz6SAYz7gUFCtxfCChnrVFD5AT") |
---|
12 | | - | [Burn(tokenId, assetBalance(this, tokenId)), Burn(tokenId2, assetBalance(this, tokenId2)), DeleteEntry(keyInitV1Done), DeleteEntry("foo1"), DeleteEntry("foo2")] |
---|
| 20 | + | let tokenId = fromBase58String(getStringValue(keyTokenId)) |
---|
| 21 | + | [Burn(tokenId, assetBalance(this, tokenId)), DeleteEntry(keyInitV1Done)] |
---|
13 | 22 | | } |
---|
14 | 23 | | |
---|
15 | 24 | | |
---|
|
18 | 27 | | func initV1 () = if (valueOrElse(getBoolean(this, keyInitV1Done), false)) |
---|
19 | 28 | | then throw("Init v1 done already") |
---|
20 | 29 | | else { |
---|
21 | | - | let tokenIssue = Issue("The Token", "", 1, 8, true, unit, 0) |
---|
| 30 | + | let tokenIssue = Issue(v1TokenName, v1TokenDesc, 1, 8, true, unit, 0) |
---|
22 | 31 | | let tokenId = toBase58String(calculateAssetId(tokenIssue)) |
---|
23 | | - | [BooleanEntry(keyInitV1Done, true), StringEntry(keyTokenId, tokenId), tokenIssue] |
---|
| 32 | + | [BooleanEntry(keyInitV1Done, true), StringEntry(keyTokenId, tokenId), StringEntry(keyInitialCharCreationStats, v1InitialCharCreationStats), tokenIssue] |
---|
24 | 33 | | } |
---|
25 | 34 | | |
---|
26 | 35 | | |
---|
Full:
Old | New | | Differences |
---|
1 | 1 | | {-# STDLIB_VERSION 5 #-} |
---|
2 | 2 | | {-# SCRIPT_TYPE ACCOUNT #-} |
---|
3 | 3 | | {-# CONTENT_TYPE DAPP #-} |
---|
| 4 | + | let separator = "_" |
---|
| 5 | + | |
---|
| 6 | + | let v1TokenName = "The Token" |
---|
| 7 | + | |
---|
| 8 | + | let v1TokenDesc = "" |
---|
| 9 | + | |
---|
| 10 | + | let v1InitialCharCreationStats = (((((((((((((((((((((((((((((((((("4" + separator) + "20") + separator) + "1000") + separator) + "100") + separator) + "200") + separator) + "100") + separator) + "10") + separator) + "20") + separator) + "500") + separator) + "50") + separator) + "100") + separator) + "100") + separator) + "10") + separator) + "20") + separator) + "1") + separator) + "1") + separator) + "1") + separator) + "1") |
---|
| 11 | + | |
---|
4 | 12 | | let keyInitV1Done = "init_v1_done" |
---|
5 | 13 | | |
---|
6 | 14 | | let keyTokenId = "tokenId" |
---|
7 | 15 | | |
---|
| 16 | + | let keyInitialCharCreationStats = "initialCharCreationStats" |
---|
| 17 | + | |
---|
8 | 18 | | @Callable(i) |
---|
9 | 19 | | func clear () = { |
---|
10 | | - | let tokenId = fromBase58String("FYbW8JTtnGynXN2Hu37iiTYtx8rW9RHCDf264XYZKy1B") |
---|
11 | | - | let tokenId2 = fromBase58String("25FEqEjRkqK6yCkiT7Lz6SAYz7gUFCtxfCChnrVFD5AT") |
---|
12 | | - | [Burn(tokenId, assetBalance(this, tokenId)), Burn(tokenId2, assetBalance(this, tokenId2)), DeleteEntry(keyInitV1Done), DeleteEntry("foo1"), DeleteEntry("foo2")] |
---|
| 20 | + | let tokenId = fromBase58String(getStringValue(keyTokenId)) |
---|
| 21 | + | [Burn(tokenId, assetBalance(this, tokenId)), DeleteEntry(keyInitV1Done)] |
---|
13 | 22 | | } |
---|
14 | 23 | | |
---|
15 | 24 | | |
---|
16 | 25 | | |
---|
17 | 26 | | @Callable(i) |
---|
18 | 27 | | func initV1 () = if (valueOrElse(getBoolean(this, keyInitV1Done), false)) |
---|
19 | 28 | | then throw("Init v1 done already") |
---|
20 | 29 | | else { |
---|
21 | | - | let tokenIssue = Issue("The Token", "", 1, 8, true, unit, 0) |
---|
| 30 | + | let tokenIssue = Issue(v1TokenName, v1TokenDesc, 1, 8, true, unit, 0) |
---|
22 | 31 | | let tokenId = toBase58String(calculateAssetId(tokenIssue)) |
---|
23 | | - | [BooleanEntry(keyInitV1Done, true), StringEntry(keyTokenId, tokenId), tokenIssue] |
---|
| 32 | + | [BooleanEntry(keyInitV1Done, true), StringEntry(keyTokenId, tokenId), StringEntry(keyInitialCharCreationStats, v1InitialCharCreationStats), tokenIssue] |
---|
24 | 33 | | } |
---|
25 | 34 | | |
---|
26 | 35 | | |
---|
27 | 36 | | @Verifier(tx) |
---|
28 | 37 | | func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey) |
---|
29 | 38 | | |
---|