tx · 4SoAWkBc8nzkLZVga8zBKfE1SUbxDq8CDzeThHLUJjrt

3MuH9NgpoGaSQufEQLPRikXNS9PXhkhcLzp:  -0.01400000 Waves

2022.05.19 15:34 [2058557] smart account 3MuH9NgpoGaSQufEQLPRikXNS9PXhkhcLzp > SELF 0.00000000 Waves

{ "type": 13, "id": "4SoAWkBc8nzkLZVga8zBKfE1SUbxDq8CDzeThHLUJjrt", "fee": 1400000, "feeAssetId": null, "timestamp": 1652963692376, "version": 2, "chainId": 84, "sender": "3MuH9NgpoGaSQufEQLPRikXNS9PXhkhcLzp", "senderPublicKey": "74D2dSZ2CcYprVwEPr2GayHyp7wbLrppDt4SWXZcfT1z", "proofs": [ "32fRFQp7dsyJxSjJRLbPaRG7w11HfTmJXa2r8Tbyk4bP6qSj4HCK7uMJA5GrTckdhZQyJZwtUQFY6RSAHv2Sc8oq" ], "script": "base64:AAIFAAAAAAAAAAwIAhIDCgEBEgMKAQEAAAAhAAAAAAlzZXBhcmF0b3ICAAAAAV8AAAAAE2tleUxhc3RCYXR0bGVIZWlnaHQCAAAAEmxhc3RfYmF0dGxlX2hlaWdodAAAAAANa2V5SXRlbXNDb3VudAIAAAALaXRlbXNfY291bnQAAAAADGtleUl0ZW1Pd25lcgIAAAAKaXRlbV9vd25lcgAAAAAPa2V5SXRlbUNhdGVnb3J5AgAAAA1pdGVtX2NhdGVnb3J5AAAAAAtrZXlJdGVtVHlwZQIAAAAJaXRlbV90eXBlAAAAABJrZXlJdGVtRWZmZWN0VHlwZTECAAAAEml0ZW1fZWZmZWN0X3R5cGVfMQAAAAATa2V5SXRlbUVmZmVjdFZhbHVlMQIAAAATaXRlbV9lZmZlY3RfdmFsdWVfMQAAAAASa2V5SXRlbUVmZmVjdFR5cGUyAgAAABJpdGVtX2VmZmVjdF90eXBlXzIAAAAAE2tleUl0ZW1FZmZlY3RWYWx1ZTICAAAAE2l0ZW1fZWZmZWN0X3ZhbHVlXzIAAAAAEmtleUl0ZW1FZmZlY3RUeXBlMwIAAAASaXRlbV9lZmZlY3RfdHlwZV8zAAAAABNrZXlJdGVtRWZmZWN0VmFsdWUzAgAAABNpdGVtX2VmZmVjdF92YWx1ZV8zAAAAABJrZXlJdGVtRWZmZWN0VHlwZTQCAAAAEml0ZW1fZWZmZWN0X3R5cGVfNAAAAAATa2V5SXRlbUVmZmVjdFZhbHVlNAIAAAATaXRlbV9lZmZlY3RfdmFsdWVfNAAAAAAGZ292QXBwCQEAAAARQGV4dHJOYXRpdmUoMTA2MikAAAABAgAAACMzTXl4Znd2YnVlVUJ5bllIZlFzdXROWFpOcU5vekdpTW5zRwAAAAAVa2V5RWNvc3lzdGVtQWRkcmVzc2VzAgAAABNlY29zeXN0ZW1fYWRkcmVzc2VzAAAAABNrZXlCYXR0bGVSZXN0UGVyaW9kAgAAABJiYXR0bGVfcmVzdF9wZXJpb2QAAAAAGWtleUJhdHRsZVdpbkNoYW5jZUhhcmRjYXACAAAAGWJhdHRsZV93aW5fY2hhbmNlX2hhcmRjYXAAAAAAHmtleUJhdHRsZVdpbkNoYW5jZUluY3JQZXJCbG9jawIAAAAgYmF0dGxlX3dpbl9jaGFuY2VfaW5jcl9wZXJfYmxvY2sAAAAAGWtleUJhdHRsZUxvb3RSYXJpdHlSYW5nZXMCAAAAGWJhdHRsZV9sb290X3Jhcml0eV9yYW5nZXMAAAAAIGtleUNoYXJzTmF0dXJhbEJhdHRsZUJvbnVzUmFuZ2VzAgAAACFjaGFyc19uYXR1cmFsX2JhdHRsZV9ib251c19yYW5nZXMAAAAAEmtleUl0ZW1zQ2F0ZWdvcmllcwIAAAAQaXRlbXNfY2F0ZWdvcmllcwAAAAATa2V5SXRlbXNUeXBlc1BlckNhdAIAAAATaXRlbXNfdHlwZXNfcGVyX2NhdAAAAAAPa2V5SXRlbXNFZmZlY3RzAgAAAA1pdGVtc19lZmZlY3RzAAAAABhrZXlpdGVtc0VmZmVjdHNNYXhSYW5nZXMCAAAAF2l0ZW1zX2VmZmVjdHNfbWF4X3JhbmdlAAAAAAhjaGFyc0FwcAkBAAAAEUBleHRyTmF0aXZlKDEwNjIpAAAAAQIAAAAjM05BM0xSU2lnazZrbkxaMTZ1VHpjZExOb3cyRVFadFhUYUoAAAAACGtleU93bmVyAgAAAAVvd25lcgAAAAAVa2V5TmF0dXJhbEJhdHRsZUJvbnVzAgAAABRuYXR1cmFsX2JhdHRsZV9ib251cwAAAAAIbGFuZHNBcHAJAQAAABFAZXh0ck5hdGl2ZSgxMDYyKQAAAAECAAAAIzNNeGlKTHJZNlFhNWJTWXh4U0ZIU0c1YlZWMm41OXgxTUduAQAAAAxpbnZva2VDaGVja3MAAAABAAAACmNhbGxlckFkZHIDCQEAAAACIT0AAAACCQAEHgAAAAEFAAAABmdvdkFwcAcJAAACAAAAAQIAAAAXR292ZXJuaW5nIGFwcCBub3QgcmVhZHkEAAAAEmVjb3N5c3RlbUFkZHJlc3NlcwkBAAAAEUBleHRyTmF0aXZlKDEwNTMpAAAAAgUAAAAGZ292QXBwBQAAABVrZXlFY29zeXN0ZW1BZGRyZXNzZXMDCQEAAAACIT0AAAACCQEAAAAIY29udGFpbnMAAAACBQAAABJlY29zeXN0ZW1BZGRyZXNzZXMJAAQlAAAAAQUAAAAKY2FsbGVyQWRkcgcJAAACAAAAAQIAAAANQWNjZXNzIGRlbmllZAYBAAAADmVjb3N5c3RlbUNoZWNrAAAAAQAAAAZjYWxsZXIDCQEA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AAAAAgkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAAEGl0ZW1SYXJpdHlSYW5nZXMAAAAAAAAAAAIFAAAACml0ZW1SYXJpdHkAAAAAAAAAAAMAAAAAAAAAAAQEAAAAEml0ZW1FZmZlY3RzQW1vdW50cwkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAGZ292QXBwBQAAAA9rZXlJdGVtc0VmZmVjdHMEAAAAFGl0ZW1FZmZlY3RzTWF4UmFuZ2VzCQAEtQAAAAIJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABmdvdkFwcAUAAAAYa2V5aXRlbXNFZmZlY3RzTWF4UmFuZ2VzBQAAAAlzZXBhcmF0b3IEAAAAD2l0ZW1FZmZlY3RUeXBlMQkBAAAAB3JhbmRJbnQAAAAEAAAAAAAAAAABBQAAABJpdGVtRWZmZWN0c0Ftb3VudHMFAAAABHR4SWQAAAAAAAAAAAQEAAAAEGl0ZW1FZmZlY3RWYWx1ZTEJAQAAAAdyYW5kSW50AAAABAAAAAAAAAAAAQkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAAFGl0ZW1FZmZlY3RzTWF4UmFuZ2VzBQAAAA9pdGVtRWZmZWN0VHlwZTEFAAAABHR4SWQAAAAAAAAAAAUEAAAAD2l0ZW1FZmZlY3RUeXBlMgMJAABmAAAAAgUAAAAPaXRlbUVmZmVjdFNsb3RzAAAAAAAAAAABCQEAAAAHcmFuZEludAAAAAQAAAAAAAAAAAEFAAAAEml0ZW1FZmZlY3RzQW1vdW50cwUAAAAEdHhJZAAAAAAAAAAABgAAAAAAAAAAAAQAAAAQaXRlbUVmZmVjdFZhbHVlMgMJAABmAAAAAgUAAAAPaXRlbUVmZmVjdFNsb3RzAAAAAAAAAAABCQEAAAAHcmFuZEludAAAAAQAAAAAAAAAAAEJAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAABRpdGVtRWZmZWN0c01heFJhbmdlcwUAAAAPaXRlbUVmZmVjdFR5cGUyBQAAAAR0eElkAAAAAAAAAAAHAAAAAAAAAAAABAAAAA9pdGVtRWZmZWN0VHlwZTMDCQAAZgAAAAIFAAAAD2l0ZW1FZmZlY3RTbG90cwAAAAAAAAAAAgkBAAAAB3JhbmRJbnQAAAAEAAAAAAAAAAABBQAAABJpdGVtRWZmZWN0c0Ftb3VudHMFAAAABHR4SWQAAAAAAAAAAAgAAAAAAAAAAAAEAAAAEGl0ZW1FZmZlY3RWYWx1ZTMDCQAAZgAAAAIFAAAAD2l0ZW1FZmZlY3RTbG90cwAAAAAAAAAAAgkBAAAAB3JhbmRJbnQAAAAEAAAAAAAAAAABCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAAUaXRlbUVmZmVjdHNNYXhSYW5nZXMFAAAAD2l0ZW1FZmZlY3RUeXBlMwUAAAAEdHhJZAAAAAAAAAAACQAAAAAAAAAAAAQAAAAPaXRlbUVmZmVjdFR5cGU0AwkAAGYAAAACBQAAAA9pdGVtRWZmZWN0U2xvdHMAAAAAAAAAAAMJAQAAAAdyYW5kSW50AAAABAAAAAAAAAAAAQUAAAASaXRlbUVmZmVjdHNBbW91bnRzBQAAAAR0eElkAAAAAAAAAAAKAAAAAAAAAAAABAAAABBpdGVtRWZmZWN0VmFsdWU0AwkAAGYAAAACBQAAAA9pdGVtRWZmZWN0U2xvdHMAAAAAAAAAAAMJAQAAAAdyYW5kSW50AAAABAAAAAAAAAAAAQkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAAFGl0ZW1FZmZlY3RzTWF4UmFuZ2VzBQAAAA9pdGVtRWZmZWN0VHlwZTQFAAAABHR4SWQAAAAAAAAAAAsAAAAAAAAAAAAEAAAABml0ZW1JZAkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABBoAAAACBQAAAAR0aGlzBQAAAA1rZXlJdGVtc0NvdW50AAAAAAAAAAABCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAEd2l0aAAAAAIFAAAAE2tleUxhc3RCYXR0bGVIZWlnaHQFAAAABmNoYXJJZAUAAAAGaGVpZ2h0CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAAA1rZXlJdGVtc0NvdW50CQAAZAAAAAIFAAAABml0ZW1JZAAAAAAAAAAAAQkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQEAAAAEd2l0aAAAAAIFAAAADGtleUl0ZW1Pd25lcgUAAAAGaXRlbUlkBQAAAApjYWxsZXJBZGRyCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAEd2l0aAAAAAIFAAAAD2tleUl0ZW1DYXRlZ29yeQUAAAAGaXRlbUlkBQAAAAdpdGVtQ2F0CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAEd2l0aAAAAAIFAAAAC2tleUl0ZW1UeXBlBQAAAAZpdGVtSWQFAAAACGl0ZW1UeXBlCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAEd2l0aAAAAAIFAAAAEmtleUl0ZW1FZmZlY3RUeXBlMQUAAAAGaXRlbUlkBQAAAA9pdGVtRWZmZWN0VHlwZTEJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAAAR3aXRoAAAAAgUAAAATa2V5SXRlbUVmZmVjdFZhbHVlMQUAAAAGaXRlbUlkBQAAABBpdGVtRWZmZWN0VmFsdWUxCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAEd2l0aAAAAAIFAAAAEmtleUl0ZW1FZmZlY3RUeXBlMgUAAAAGaXRlbUlkBQAAAA9pdGVtRWZmZWN0VHlwZTIJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAAAR3aXRoAAAAAgUAAAATa2V5SXRlbUVmZmVjdFZhbHVlMgUAAAAGaXRlbUlkBQAAABBpdGVtRWZmZWN0VmFsdWUyCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAEd2l0aAAAAAIFAAAAEmtleUl0ZW1FZmZlY3RUeXBlMwUAAAAGaXRlbUlkBQAAAA9pdGVtRWZmZWN0VHlwZTMJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAAAR3aXRoAAAAAgUAAAATa2V5SXRlbUVmZmVjdFZhbHVlMwUAAAAGaXRlbUlkBQAAABBpdGVtRWZmZWN0VmFsdWUzCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAEd2l0aAAAAAIFAAAAEmtleUl0ZW1FZmZlY3RUeXBlNAUAAAAGaXRlbUlkBQAAAA9pdGVtRWZmZWN0VHlwZTQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAAAR3aXRoAAAAAgUAAAATa2V5SXRlbUVmZmVjdFZhbHVlNAUAAAAGaXRlbUlkBQAAABBpdGVtRWZmZWN0VmFsdWU0CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAEd2l0aAAAAAICAAAACXdpbkNoYW5jZQUAAAAGaXRlbUlkBQAAAAl3aW5DaGFuY2UJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAQAAAAR3aXRoAAAAAgIAAAAHcmFuZE5icgUAAAAGaXRlbUlkBQAAAAdyYW5kTmJyBQAAAANuaWwAAAABaQEAAAAWdXBkYXRlTGFzdEJhdHRsZUhlaWdodAAAAAEAAAAGY2hhcklkAwkBAAAAAiE9AAAAAgkBAAAADmVjb3N5c3RlbUNoZWNrAAAAAQgFAAAAAWkAAAAGY2FsbGVyBgkBAAAABXRocm93AAAAAAkABRQAAAACCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAAEd2l0aAAAAAIFAAAAE2tleUxhc3RCYXR0bGVIZWlnaHQFAAAABmNoYXJJZAUAAAAGaGVpZ2h0BQAAAANuaWwFAAAABmhlaWdodAAAAAEAAAACdHgBAAAABnZlcmlmeQAAAAAJAAH0AAAAAwgFAAAAAnR4AAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAAACAUAAAACdHgAAAAPc2VuZGVyUHVibGljS2V5VNpz6w==", "height": 2058557, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: CxZnjP1gyGM8PUjk69DEtgGBYw5Hu2HqDGLGCXgMppei Next: Awg9M16HtAqjmxTmc2RF53D9goPNGe49u7nDY3k6yC6Y Diff:
OldNewDifferences
113113 then throw("Still resting")
114114 else {
115115 let Y = min([((getIntegerValue(o, s) * (height - X)) + (getIntegerValue(z, I(B, W)) * 100)), getIntegerValue(o, r)])
116- if ((Y > P(0, 10000, S, 0)))
117- then [IntegerEntry(I(b, W), height), IntegerEntry("test", Y)]
116+ let Z = P(0, 1000000, S, 0)
117+ if ((Y > Z))
118+ then [IntegerEntry(I(b, W), height), IntegerEntry("winChance", Y), IntegerEntry("randNbr", Z)]
118119 else {
119- let Z = P(1, getIntegerValue(o, v), S, 1)
120- let aa = parseIntValue(split(getStringValue(o, w), a)[(Z - 1)])
121- let ab = P(1, aa, S, 2)
122- let ac = split(getStringValue(o, t), a)
123- let ad = P(0, 10000, S, 3)
124- let ae = if ((parseIntValue(ac[0]) >= ad))
120+ let aa = P(1, getIntegerValue(o, v), S, 1)
121+ let ab = parseIntValue(split(getStringValue(o, w), a)[(aa - 1)])
122+ let ac = P(1, ab, S, 2)
123+ let ad = split(getStringValue(o, t), a)
124+ let ae = P(0, 10000, S, 3)
125+ let af = if ((parseIntValue(ad[0]) >= ae))
125126 then 1
126- else if ((parseIntValue(ac[1]) >= ad))
127+ else if ((parseIntValue(ad[1]) >= ae))
127128 then 2
128- else if ((parseIntValue(ac[2]) >= ad))
129+ else if ((parseIntValue(ad[2]) >= ae))
129130 then 3
130131 else 4
131- let af = getIntegerValue(o, x)
132- let ag = split(getStringValue(o, y), a)
133- let ah = P(1, af, S, 4)
134- let ai = P(1, parseIntValue(ag[ah]), S, 5)
135- let aj = if ((ae > 1))
136- then P(1, af, S, 6)
132+ let ag = getIntegerValue(o, x)
133+ let ah = split(getStringValue(o, y), a)
134+ let ai = P(1, ag, S, 4)
135+ let aj = P(1, parseIntValue(ah[ai]), S, 5)
136+ let ak = if ((af > 1))
137+ then P(1, ag, S, 6)
137138 else 0
138- let ak = if ((ae > 1))
139- then P(1, parseIntValue(ag[aj]), S, 7)
139+ let al = if ((af > 1))
140+ then P(1, parseIntValue(ah[ak]), S, 7)
140141 else 0
141- let al = if ((ae > 2))
142- then P(1, af, S, 8)
142+ let am = if ((af > 2))
143+ then P(1, ag, S, 8)
143144 else 0
144- let am = if ((ae > 2))
145- then P(1, parseIntValue(ag[al]), S, 9)
145+ let an = if ((af > 2))
146+ then P(1, parseIntValue(ah[am]), S, 9)
146147 else 0
147- let an = if ((ae > 3))
148- then P(1, af, S, 10)
148+ let ao = if ((af > 3))
149+ then P(1, ag, S, 10)
149150 else 0
150- let ao = if ((ae > 3))
151- then P(1, parseIntValue(ag[an]), S, 11)
151+ let ap = if ((af > 3))
152+ then P(1, parseIntValue(ah[ao]), S, 11)
152153 else 0
153- let ap = valueOrElse(getInteger(this, c), 1)
154-[IntegerEntry(I(b, W), height), IntegerEntry(c, (ap + 1)), StringEntry(I(d, ap), E), IntegerEntry(I(e, ap), Z), IntegerEntry(I(f, ap), ab), IntegerEntry(I(g, ap), ah), IntegerEntry(I(h, ap), ai), IntegerEntry(I(i, ap), aj), IntegerEntry(I(j, ap), ak), IntegerEntry(I(k, ap), al), IntegerEntry(I(l, ap), am), IntegerEntry(I(m, ap), an), IntegerEntry(I(n, ap), ao), IntegerEntry("test", Y)]
154+ let aq = valueOrElse(getInteger(this, c), 1)
155+[IntegerEntry(I(b, W), height), IntegerEntry(c, (aq + 1)), StringEntry(I(d, aq), E), IntegerEntry(I(e, aq), aa), IntegerEntry(I(f, aq), ac), IntegerEntry(I(g, aq), ai), IntegerEntry(I(h, aq), aj), IntegerEntry(I(i, aq), ak), IntegerEntry(I(j, aq), al), IntegerEntry(I(k, aq), am), IntegerEntry(I(l, aq), an), IntegerEntry(I(m, aq), ao), IntegerEntry(I(n, aq), ap), IntegerEntry(I("winChance", aq), Y), IntegerEntry(I("randNbr", aq), Z)]
155156 }
156157 }
157158 }
165166 else $Tuple2([IntegerEntry(I(b, W), height)], height)
166167
167168
168-@Verifier(aq)
169-func ar () = sigVerify(aq.bodyBytes, aq.proofs[0], aq.senderPublicKey)
169+@Verifier(ar)
170+func as () = sigVerify(ar.bodyBytes, ar.proofs[0], ar.senderPublicKey)
170171
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "_"
55
66 let b = "last_battle_height"
77
88 let c = "items_count"
99
1010 let d = "item_owner"
1111
1212 let e = "item_category"
1313
1414 let f = "item_type"
1515
1616 let g = "item_effect_type_1"
1717
1818 let h = "item_effect_value_1"
1919
2020 let i = "item_effect_type_2"
2121
2222 let j = "item_effect_value_2"
2323
2424 let k = "item_effect_type_3"
2525
2626 let l = "item_effect_value_3"
2727
2828 let m = "item_effect_type_4"
2929
3030 let n = "item_effect_value_4"
3131
3232 let o = addressFromStringValue("3MyxfwvbueUBynYHfQsutNXZNqNozGiMnsG")
3333
3434 let p = "ecosystem_addresses"
3535
3636 let q = "battle_rest_period"
3737
3838 let r = "battle_win_chance_hardcap"
3939
4040 let s = "battle_win_chance_incr_per_block"
4141
4242 let t = "battle_loot_rarity_ranges"
4343
4444 let u = "chars_natural_battle_bonus_ranges"
4545
4646 let v = "items_categories"
4747
4848 let w = "items_types_per_cat"
4949
5050 let x = "items_effects"
5151
5252 let y = "items_effects_max_range"
5353
5454 let z = addressFromStringValue("3NA3LRSigk6knLZ16uTzcdLNow2EQZtXTaJ")
5555
5656 let A = "owner"
5757
5858 let B = "natural_battle_bonus"
5959
6060 let C = addressFromStringValue("3MxiJLrY6Qa5bSYxxSFHSG5bVV2n59x1MGn")
6161
6262 func D (E) = if ((isDataStorageUntouched(o) != false))
6363 then throw("Governing app not ready")
6464 else {
6565 let F = getStringValue(o, p)
6666 if ((contains(F, toString(E)) != false))
6767 then throw("Access denied")
6868 else true
6969 }
7070
7171
7272 func G (H) = if ((contains(getStringValue(o, p), toBase58String(H.bytes)) != true))
7373 then throw("Access denied")
7474 else true
7575
7676
7777 func I (J,K) = {
7878 let L = {
7979 let M = K
8080 if ($isInstanceOf(M, "Int"))
8181 then {
8282 let N = M
8383 toString(N)
8484 }
8585 else if ($isInstanceOf(M, "String"))
8686 then {
8787 let O = M
8888 O
8989 }
9090 else throw("Matching issue in with function")
9191 }
9292 ((L + a) + J)
9393 }
9494
9595
9696 func P (Q,R,S,T) = {
9797 let U = value(sha256_16Kb(((value(value(blockInfoByHeight(height)).vrf) + S) + toBytes(T))))
9898 value(((value(toInt(U)) % ((R - Q) + 1)) + Q))
9999 }
100100
101101
102102 @Callable(V)
103103 func battle (W) = if ((D(V.caller) != true))
104104 then throw()
105105 else {
106106 let E = toBase58String(V.caller.bytes)
107107 let S = V.transactionId
108108 if ((getStringValue(z, I(A, W)) != E))
109109 then throw("Caller doesn't own this char")
110110 else {
111111 let X = (getIntegerValue(this, I(b, W)) + getIntegerValue(o, q))
112112 if ((X > height))
113113 then throw("Still resting")
114114 else {
115115 let Y = min([((getIntegerValue(o, s) * (height - X)) + (getIntegerValue(z, I(B, W)) * 100)), getIntegerValue(o, r)])
116- if ((Y > P(0, 10000, S, 0)))
117- then [IntegerEntry(I(b, W), height), IntegerEntry("test", Y)]
116+ let Z = P(0, 1000000, S, 0)
117+ if ((Y > Z))
118+ then [IntegerEntry(I(b, W), height), IntegerEntry("winChance", Y), IntegerEntry("randNbr", Z)]
118119 else {
119- let Z = P(1, getIntegerValue(o, v), S, 1)
120- let aa = parseIntValue(split(getStringValue(o, w), a)[(Z - 1)])
121- let ab = P(1, aa, S, 2)
122- let ac = split(getStringValue(o, t), a)
123- let ad = P(0, 10000, S, 3)
124- let ae = if ((parseIntValue(ac[0]) >= ad))
120+ let aa = P(1, getIntegerValue(o, v), S, 1)
121+ let ab = parseIntValue(split(getStringValue(o, w), a)[(aa - 1)])
122+ let ac = P(1, ab, S, 2)
123+ let ad = split(getStringValue(o, t), a)
124+ let ae = P(0, 10000, S, 3)
125+ let af = if ((parseIntValue(ad[0]) >= ae))
125126 then 1
126- else if ((parseIntValue(ac[1]) >= ad))
127+ else if ((parseIntValue(ad[1]) >= ae))
127128 then 2
128- else if ((parseIntValue(ac[2]) >= ad))
129+ else if ((parseIntValue(ad[2]) >= ae))
129130 then 3
130131 else 4
131- let af = getIntegerValue(o, x)
132- let ag = split(getStringValue(o, y), a)
133- let ah = P(1, af, S, 4)
134- let ai = P(1, parseIntValue(ag[ah]), S, 5)
135- let aj = if ((ae > 1))
136- then P(1, af, S, 6)
132+ let ag = getIntegerValue(o, x)
133+ let ah = split(getStringValue(o, y), a)
134+ let ai = P(1, ag, S, 4)
135+ let aj = P(1, parseIntValue(ah[ai]), S, 5)
136+ let ak = if ((af > 1))
137+ then P(1, ag, S, 6)
137138 else 0
138- let ak = if ((ae > 1))
139- then P(1, parseIntValue(ag[aj]), S, 7)
139+ let al = if ((af > 1))
140+ then P(1, parseIntValue(ah[ak]), S, 7)
140141 else 0
141- let al = if ((ae > 2))
142- then P(1, af, S, 8)
142+ let am = if ((af > 2))
143+ then P(1, ag, S, 8)
143144 else 0
144- let am = if ((ae > 2))
145- then P(1, parseIntValue(ag[al]), S, 9)
145+ let an = if ((af > 2))
146+ then P(1, parseIntValue(ah[am]), S, 9)
146147 else 0
147- let an = if ((ae > 3))
148- then P(1, af, S, 10)
148+ let ao = if ((af > 3))
149+ then P(1, ag, S, 10)
149150 else 0
150- let ao = if ((ae > 3))
151- then P(1, parseIntValue(ag[an]), S, 11)
151+ let ap = if ((af > 3))
152+ then P(1, parseIntValue(ah[ao]), S, 11)
152153 else 0
153- let ap = valueOrElse(getInteger(this, c), 1)
154-[IntegerEntry(I(b, W), height), IntegerEntry(c, (ap + 1)), StringEntry(I(d, ap), E), IntegerEntry(I(e, ap), Z), IntegerEntry(I(f, ap), ab), IntegerEntry(I(g, ap), ah), IntegerEntry(I(h, ap), ai), IntegerEntry(I(i, ap), aj), IntegerEntry(I(j, ap), ak), IntegerEntry(I(k, ap), al), IntegerEntry(I(l, ap), am), IntegerEntry(I(m, ap), an), IntegerEntry(I(n, ap), ao), IntegerEntry("test", Y)]
154+ let aq = valueOrElse(getInteger(this, c), 1)
155+[IntegerEntry(I(b, W), height), IntegerEntry(c, (aq + 1)), StringEntry(I(d, aq), E), IntegerEntry(I(e, aq), aa), IntegerEntry(I(f, aq), ac), IntegerEntry(I(g, aq), ai), IntegerEntry(I(h, aq), aj), IntegerEntry(I(i, aq), ak), IntegerEntry(I(j, aq), al), IntegerEntry(I(k, aq), am), IntegerEntry(I(l, aq), an), IntegerEntry(I(m, aq), ao), IntegerEntry(I(n, aq), ap), IntegerEntry(I("winChance", aq), Y), IntegerEntry(I("randNbr", aq), Z)]
155156 }
156157 }
157158 }
158159 }
159160
160161
161162
162163 @Callable(V)
163164 func updateLastBattleHeight (W) = if ((G(V.caller) != true))
164165 then throw()
165166 else $Tuple2([IntegerEntry(I(b, W), height)], height)
166167
167168
168-@Verifier(aq)
169-func ar () = sigVerify(aq.bodyBytes, aq.proofs[0], aq.senderPublicKey)
169+@Verifier(ar)
170+func as () = sigVerify(ar.bodyBytes, ar.proofs[0], ar.senderPublicKey)
170171

github/deemru/w8io/169f3d6 
61.17 ms