tx · 676bakyFA99q3eahNLFUsBr24aKyg4e6C1PCtzGj86h2 3NCz3oCc3PNdauKDJEiPLzQwpBXXYEBc9p2: -0.00100000 Waves 2022.08.02 15:51 [2166891] smart account 3NCz3oCc3PNdauKDJEiPLzQwpBXXYEBc9p2 > SELF 0.00000000 Waves
{ "type": 13, "id": "676bakyFA99q3eahNLFUsBr24aKyg4e6C1PCtzGj86h2", "fee": 100000, "feeAssetId": null, "timestamp": 1659444744373, "version": 2, "chainId": 84, "sender": "3NCz3oCc3PNdauKDJEiPLzQwpBXXYEBc9p2", "senderPublicKey": "3rvQsNbK5fc274oTJXxit5LUfVpNUHyPrKiaJZbmJ7zx", "proofs": [ "3K8WUoVudABNuvtw78hDRP6cZCxTiweHJ43WsYAQzrev3gwjYTQFbhdnhWiFciPjniFZAc9jzaW9diPMon5a2Dc" ], "script": "base64:BgIRCAISBgoECAgICBIDCgEIEgAFAAZrUHJpY2UCCnByaWNlTGV2ZXIACXNlcGFyYXRvcgIBfAAHa0FjdGl2ZQIGYWN0aXZlAQlyYW5kb21pemUCBWJ5dGVzBXJhbmdlBARoYXNoCQD3AwEFBWJ5dGVzBAVpbmRleAkAsQkBBQRoYXNoCQBqAgUFaW5kZXgFBXJhbmdlARFjYWxjdWxhdGlvblJhcml0eQENdHJhbnNhY3Rpb25JZAQJdG9rZW5SYXJlCQEJcmFuZG9taXplAgUNdHJhbnNhY3Rpb25JZABkBAtudW1iZXJUb2tlbgkBCXJhbmRvbWl6ZQIFDXRyYW5zYWN0aW9uSWQAAwQGY29tbW9uAgZjb21tb24EBHJhcmUCBHJhcmUECWxlZ2VuZGFyeQIJbGVnZW5kYXJ5AwkAZwIABQUJdG9rZW5SYXJlCQCsAgIJAKwCAgUJbGVnZW5kYXJ5BQlzZXBhcmF0b3IJAKQDAQULbnVtYmVyVG9rZW4DCQBnAgUJdG9rZW5SYXJlAFAJAKwCAgkArAICBQRyYXJlBQlzZXBhcmF0b3IJAKQDAQULbnVtYmVyVG9rZW4JAKwCAgkArAICBQZjb21tb24FCXNlcGFyYXRvcgkApAMBBQtudW1iZXJUb2tlbgMBaQEIaXNzdWVOZnQEBG5hbWUEZGVzYwZyYXJpdHkGcHJlZml4AwkBAiE9AggFAWkGY2FsbGVyBQR0aGlzCQACAQIKT25seSBvd25lcgQIbmV3VG9rZW4JAMIIBQUEbmFtZQUEZGVzYwABAAAHBAdpc3N1ZUlkCQC4CAEFCG5ld1Rva2VuCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICBQZyYXJpdHkFCXNlcGFyYXRvcgUGcHJlZml4CQDYBAEFB2lzc3VlSWQJAMwIAgUIbmV3VG9rZW4FA25pbAFpAQhzZXRQcmljZQEFcHJpY2UDCQECIT0CCAUBaQZjYWxsZXIFBHRoaXMJAAIBAgpPbmx5IG93bmVyCQDMCAIJAQtTdHJpbmdFbnRyeQIFBmtQcmljZQUFcHJpY2UFA25pbAFpAQxwdWxsVGhlTGV2ZXIABAZyYXJpdHkJARFjYWxjdWxhdGlvblJhcml0eQEIBQFpDXRyYW5zYWN0aW9uSWQJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwgFAWkGY2FsbGVyAAEJANkEAQkBEUBleHRyTmF0aXZlKDEwNTMpAgUEdGhpcwUGcmFyaXR5BQNuaWwALjj9dA==", "height": 2166891, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: H75AKw9JPm3MYhWkQoxHVis1GSMHM2FegkZpjQoxqu7i Next: Vja8KeavLZvHAwp5ZcxanT4xx7P7Z9va937yhkmXNo5 Diff:
Old | New | Differences | |
---|---|---|---|
6 | 6 | let separator = "|" | |
7 | 7 | ||
8 | 8 | let kActive = "active" | |
9 | - | ||
10 | - | let active = getBooleanValue(this, kActive) | |
11 | - | ||
12 | - | func isActive () = if (active) | |
13 | - | then unit | |
14 | - | else throw("Store is active") | |
15 | - | ||
16 | 9 | ||
17 | 10 | func randomize (bytes,range) = { | |
18 | 11 | let hash = sha256(bytes) | |
54 | 47 | ||
55 | 48 | ||
56 | 49 | @Callable(i) | |
57 | - | func pullTheLever () = if (!(active)) | |
58 | - | then throw("Not activated") | |
59 | - | else { | |
60 | - | let rarity = calculationRarity(i.transactionId) | |
50 | + | func pullTheLever () = { | |
51 | + | let rarity = calculationRarity(i.transactionId) | |
61 | 52 | [ScriptTransfer(i.caller, 1, fromBase58String(getStringValue(this, rarity)))] | |
62 | - | ||
53 | + | } | |
63 | 54 | ||
64 | 55 |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 6 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let kPrice = "priceLever" | |
5 | 5 | ||
6 | 6 | let separator = "|" | |
7 | 7 | ||
8 | 8 | let kActive = "active" | |
9 | - | ||
10 | - | let active = getBooleanValue(this, kActive) | |
11 | - | ||
12 | - | func isActive () = if (active) | |
13 | - | then unit | |
14 | - | else throw("Store is active") | |
15 | - | ||
16 | 9 | ||
17 | 10 | func randomize (bytes,range) = { | |
18 | 11 | let hash = sha256(bytes) | |
19 | 12 | let index = toInt(hash) | |
20 | 13 | (index % range) | |
21 | 14 | } | |
22 | 15 | ||
23 | 16 | ||
24 | 17 | func calculationRarity (transactionId) = { | |
25 | 18 | let tokenRare = randomize(transactionId, 100) | |
26 | 19 | let numberToken = randomize(transactionId, 3) | |
27 | 20 | let common = "common" | |
28 | 21 | let rare = "rare" | |
29 | 22 | let legendary = "legendary" | |
30 | 23 | if ((5 >= tokenRare)) | |
31 | 24 | then ((legendary + separator) + toString(numberToken)) | |
32 | 25 | else if ((tokenRare >= 80)) | |
33 | 26 | then ((rare + separator) + toString(numberToken)) | |
34 | 27 | else ((common + separator) + toString(numberToken)) | |
35 | 28 | } | |
36 | 29 | ||
37 | 30 | ||
38 | 31 | @Callable(i) | |
39 | 32 | func issueNft (name,desc,rarity,prefix) = if ((i.caller != this)) | |
40 | 33 | then throw("Only owner") | |
41 | 34 | else { | |
42 | 35 | let newToken = Issue(name, desc, 1, 0, false) | |
43 | 36 | let issueId = calculateAssetId(newToken) | |
44 | 37 | [StringEntry(((rarity + separator) + prefix), toBase58String(issueId)), newToken] | |
45 | 38 | } | |
46 | 39 | ||
47 | 40 | ||
48 | 41 | ||
49 | 42 | @Callable(i) | |
50 | 43 | func setPrice (price) = if ((i.caller != this)) | |
51 | 44 | then throw("Only owner") | |
52 | 45 | else [StringEntry(kPrice, price)] | |
53 | 46 | ||
54 | 47 | ||
55 | 48 | ||
56 | 49 | @Callable(i) | |
57 | - | func pullTheLever () = if (!(active)) | |
58 | - | then throw("Not activated") | |
59 | - | else { | |
60 | - | let rarity = calculationRarity(i.transactionId) | |
50 | + | func pullTheLever () = { | |
51 | + | let rarity = calculationRarity(i.transactionId) | |
61 | 52 | [ScriptTransfer(i.caller, 1, fromBase58String(getStringValue(this, rarity)))] | |
62 | - | ||
53 | + | } | |
63 | 54 | ||
64 | 55 |
github/deemru/w8io/169f3d6 24.58 ms ◑![]()