tx · CdhLW5YysA36yWh7fevBh24UkA1jgDexBAFfLn9wrbMy
3N6GuFb7Ucxs3cZjmwYDusKtfLaAigDtav5: -0.01000000 Waves
2023.05.29 14:01 [2599360] smart account 3N6GuFb7Ucxs3cZjmwYDusKtfLaAigDtav5 > SELF 0.00000000 Waves
{
"type": 13,
"id": "CdhLW5YysA36yWh7fevBh24UkA1jgDexBAFfLn9wrbMy",
"fee": 1000000,
"feeAssetId": null,
"timestamp": 1685368909749,
"version": 2,
"chainId": 84,
"sender": "3N6GuFb7Ucxs3cZjmwYDusKtfLaAigDtav5",
"senderPublicKey": "EMAuwff72FwVoiJK9xHyuUUMbpKmgV5temqeLU2aEsiS",
"proofs": [
"jPLMHYppwhGqap4owQfWZ5qiw4AQrEa8Kk1cGptrDQ3pajJ6w732qRpti9MDm2CNZZoxx5eEhJm6TnUzPtoDmWn"
],
"script": "base64:BgIOCAISABIAEgASABIAEgAFAQ9nZXRSYW5kb21OdW1iZXIABA9yYW5kb21TZWVkQmxvY2sJAQV2YWx1ZQEJAO0HAQACBApyYW5kb21IYXNoCQDUFgEJAQV2YWx1ZQEIBQ9yYW5kb21TZWVkQmxvY2sDdnJmCQCxCQEFCnJhbmRvbUhhc2gBFGdlbmVyYXRlUmFuZG9tTnVtYmVyAwFpA21pbgNtYXgECnJhbmRvbVNlZWQJALEJAQkA9QMBCAUBaQ10cmFuc2FjdGlvbklkBAxyYW5kb21OdW1iZXIJAGQCCQBqAgUKcmFuZG9tU2VlZAkAZAIJAGUCBQNtYXgFA21pbgABBQNtaW4FDHJhbmRvbU51bWJlcgEQZ2V0UmFuZG9tTnVtYmVyMgAED3JhbmRvbVNlZWRCbG9jawkBBXZhbHVlAQkA7QcBAAIECnJhbmRvbUhhc2gJANQWAQkBBXZhbHVlAQgFD3JhbmRvbVNlZWRCbG9jawN2cmYJANoEAQUKcmFuZG9tSGFzaAEHdGVzdDVoMQEHYWRkcmVzcwkAzAgCCQELU3RyaW5nRW50cnkCAghhZGRyZXNzMgUHYWRkcmVzcwUDbmlsAQRjYWxjAAADBgFpAQV0ZXN0MQAEBnJlc3VsdAkBFGdlbmVyYXRlUmFuZG9tTnVtYmVyAwUBaQABAAcJAJQKAgkAzAgCCQEMSW50ZWdlckVudHJ5AgIGcmVzdWx0BQZyZXN1bHQFA25pbAUGcmVzdWx0AWkBBXRlc3QzAAQHYWRkcmVzcwkA2AQBCAgFAWkGY2FsbGVyBWJ5dGVzCQDMCAIJAQtTdHJpbmdFbnRyeQICB2FkZHJlc3MFB2FkZHJlc3MFA25pbAFpAQV0ZXN0NAAEB2FkZHJlc3MJANgEAQgIBQFpBmNhbGxlcgVieXRlcwkAAgEFB2FkZHJlc3MBaQEFdGVzdDUABAdhZGRyZXNzCQDYBAEICAUBaQZjYWxsZXIFYnl0ZXMJAQd0ZXN0NWgxAQUHYWRkcmVzcwFpAQV0ZXN0NgAEB2FkZHJlc3MJANgEAQgIBQFpBmNhbGxlcgVieXRlcwQBcgkBB3Rlc3Q1aDEBBQdhZGRyZXNzCQACAQUHYWRkcmVzcwFpAQV0ZXN0NwAEB2FkZHJlc3MJANgEAQgIBQFpBmNhbGxlcgVieXRlcwQBcgkApAMBCQEPZ2V0UmFuZG9tTnVtYmVyAAkAAgEFAXIAviTU/w==",
"height": 2599360,
"applicationStatus": "succeeded",
"spentComplexity": 0
}
View: original | compacted
Prev: GKVLQq85vivSMbVF7cAGSrHJby5nLEKrtdckL6VPW3sa
Next: HkjequGVzd7e1hYxPr6ASrgVW4q9cXcSy4YEGixAup5N
Diff:
Old | New | | Differences |
---|
5 | 5 | | let randomSeedBlock = value(blockInfoByHeight(2)) |
---|
6 | 6 | | let randomHash = sha256_16Kb(value(randomSeedBlock.vrf)) |
---|
7 | 7 | | toInt(randomHash) |
---|
| 8 | + | } |
---|
| 9 | + | |
---|
| 10 | + | |
---|
| 11 | + | func generateRandomNumber (i,min,max) = { |
---|
| 12 | + | let randomSeed = toInt(keccak256(i.transactionId)) |
---|
| 13 | + | let randomNumber = ((randomSeed % ((max - min) + 1)) + min) |
---|
| 14 | + | randomNumber |
---|
8 | 15 | | } |
---|
9 | 16 | | |
---|
10 | 17 | | |
---|
|
23 | 30 | | |
---|
24 | 31 | | @Callable(i) |
---|
25 | 32 | | func test1 () = { |
---|
26 | | - | let result = height |
---|
27 | | - | $Tuple2([IntegerEntry("height", height)], result) |
---|
| 33 | + | let result = generateRandomNumber(i, 1, 7) |
---|
| 34 | + | $Tuple2([IntegerEntry("result", result)], result) |
---|
28 | 35 | | } |
---|
29 | 36 | | |
---|
30 | 37 | | |
---|
Full:
Old | New | | Differences |
---|
1 | 1 | | {-# STDLIB_VERSION 6 #-} |
---|
2 | 2 | | {-# SCRIPT_TYPE ACCOUNT #-} |
---|
3 | 3 | | {-# CONTENT_TYPE DAPP #-} |
---|
4 | 4 | | func getRandomNumber () = { |
---|
5 | 5 | | let randomSeedBlock = value(blockInfoByHeight(2)) |
---|
6 | 6 | | let randomHash = sha256_16Kb(value(randomSeedBlock.vrf)) |
---|
7 | 7 | | toInt(randomHash) |
---|
| 8 | + | } |
---|
| 9 | + | |
---|
| 10 | + | |
---|
| 11 | + | func generateRandomNumber (i,min,max) = { |
---|
| 12 | + | let randomSeed = toInt(keccak256(i.transactionId)) |
---|
| 13 | + | let randomNumber = ((randomSeed % ((max - min) + 1)) + min) |
---|
| 14 | + | randomNumber |
---|
8 | 15 | | } |
---|
9 | 16 | | |
---|
10 | 17 | | |
---|
11 | 18 | | func getRandomNumber2 () = { |
---|
12 | 19 | | let randomSeedBlock = value(blockInfoByHeight(2)) |
---|
13 | 20 | | let randomHash = sha256_16Kb(value(randomSeedBlock.vrf)) |
---|
14 | 21 | | toBase64String(randomHash) |
---|
15 | 22 | | } |
---|
16 | 23 | | |
---|
17 | 24 | | |
---|
18 | 25 | | func test5h1 (address) = [StringEntry("address2", address)] |
---|
19 | 26 | | |
---|
20 | 27 | | |
---|
21 | 28 | | func calc () = 3 |
---|
22 | 29 | | |
---|
23 | 30 | | |
---|
24 | 31 | | @Callable(i) |
---|
25 | 32 | | func test1 () = { |
---|
26 | | - | let result = height |
---|
27 | | - | $Tuple2([IntegerEntry("height", height)], result) |
---|
| 33 | + | let result = generateRandomNumber(i, 1, 7) |
---|
| 34 | + | $Tuple2([IntegerEntry("result", result)], result) |
---|
28 | 35 | | } |
---|
29 | 36 | | |
---|
30 | 37 | | |
---|
31 | 38 | | |
---|
32 | 39 | | @Callable(i) |
---|
33 | 40 | | func test3 () = { |
---|
34 | 41 | | let address = toBase58String(i.caller.bytes) |
---|
35 | 42 | | [StringEntry("address", address)] |
---|
36 | 43 | | } |
---|
37 | 44 | | |
---|
38 | 45 | | |
---|
39 | 46 | | |
---|
40 | 47 | | @Callable(i) |
---|
41 | 48 | | func test4 () = { |
---|
42 | 49 | | let address = toBase58String(i.caller.bytes) |
---|
43 | 50 | | throw(address) |
---|
44 | 51 | | } |
---|
45 | 52 | | |
---|
46 | 53 | | |
---|
47 | 54 | | |
---|
48 | 55 | | @Callable(i) |
---|
49 | 56 | | func test5 () = { |
---|
50 | 57 | | let address = toBase58String(i.caller.bytes) |
---|
51 | 58 | | test5h1(address) |
---|
52 | 59 | | } |
---|
53 | 60 | | |
---|
54 | 61 | | |
---|
55 | 62 | | |
---|
56 | 63 | | @Callable(i) |
---|
57 | 64 | | func test6 () = { |
---|
58 | 65 | | let address = toBase58String(i.caller.bytes) |
---|
59 | 66 | | let r = test5h1(address) |
---|
60 | 67 | | throw(address) |
---|
61 | 68 | | } |
---|
62 | 69 | | |
---|
63 | 70 | | |
---|
64 | 71 | | |
---|
65 | 72 | | @Callable(i) |
---|
66 | 73 | | func test7 () = { |
---|
67 | 74 | | let address = toBase58String(i.caller.bytes) |
---|
68 | 75 | | let r = toString(getRandomNumber()) |
---|
69 | 76 | | throw(r) |
---|
70 | 77 | | } |
---|
71 | 78 | | |
---|
72 | 79 | | |
---|