2022.09.30 16:49 [3317425] smart account 3PAvvCSVicC2Ugsj9zWrzYmu2b6uAuGc3Fo > SELF 0.00000000 Waves

{ "type": 13, "id": "737YLkMJK6sVFjhG1H9TYc72NuGeVyTYvXcEU8bKGt37", "fee": 500000, "feeAssetId": null, "timestamp": 1664545797923, "version": 2, "chainId": 87, "sender": "3PAvvCSVicC2Ugsj9zWrzYmu2b6uAuGc3Fo", "senderPublicKey": "8F497hduHHrGXagSzgzjfcZXgBV3q6NKmgaBtoErZxV8", "proofs": [ "4hHhmBdHa2vjpueuahbJVjL31dG1G62BD3xkHz1f1V4MocwWHJWxa5g69gSEdu5aU5bdMJBo1kySr5Af4uZpPaRR" ], "script": "base64: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", "height": 3317425, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: EAEDxb2CiU3YhhnjQZpGLepNDoCXqtvxeMX84n2eCBK Next: none Diff:
OldNewDifferences
129129 }
130130
131131
132-let startNationsSHEG = 90000000000
132+let startNationsSHEG = 1000000000000
133133
134134 @Callable(i)
135135 func setUserNation (nationId) = {
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let shinywggid = base58'A2hcw6RV23Fc8Y8FNfV35Sq5QeS9Tgp6n8hbrESiRvXX'
55
66 let treasuryAddress = base58'3PDW5NBHrSqYhwB8KJidBfprM6n6KPCykBB'
77
88 let assetsAddress = base58'3PRCCnKuNS3PdbcSYcKdmTecSXXR9SE3rVb'
99
1010 let marketplaceAddress = base58'3P5EAhvWXJpTW5XCmw4cTRLirr5hdV43wG9'
1111
1212 let configurationAddress = base58'3PDREv1pvqS9r2Gi5CZDHrgsQLigA9xXYp3'
1313
1414 let nationsAddress = base58'3PAvvCSVicC2Ugsj9zWrzYmu2b6uAuGc3Fo'
1515
1616 let adminWallet = addressFromStringValue("3PHKGy65emtBy4xxeQwz49nzSV1cqcJdw4U")
1717
1818 let dailyGameRewardsWallet = addressFromStringValue("3PHANHAVYa72vkHVGrLqzUkyKeeEDhDknXj")
1919
2020 let dailyStakingRewardsWallet = addressFromStringValue("3PFQGA6DA66ny11vFAWPWrqprmivyyySDCv")
2121
2222 func checkAdmin (caller) = if (if (if (if (if ((caller == adminWallet))
2323 then true
2424 else (caller == this))
2525 then true
2626 else (caller.bytes == assetsAddress))
2727 then true
2828 else (caller.bytes == treasuryAddress))
2929 then true
3030 else (caller.bytes == marketplaceAddress))
3131 then true
3232 else (caller.bytes == nationsAddress)
3333
3434
3535 func tryGetInteger (key) = match getInteger(this, key) {
3636 case b: Int =>
3737 b
3838 case _ =>
3939 0
4040 }
4141
4242
4343 func tryGetBoolean (key) = match getBoolean(this, key) {
4444 case b: Boolean =>
4545 b
4646 case _ =>
4747 false
4848 }
4949
5050
5151 func tryGetString (key) = match getString(this, key) {
5252 case b: String =>
5353 b
5454 case _ =>
5555 ""
5656 }
5757
5858
5959 func getALKey (Name,Level) = ((Name + "_lvl") + toString(Level))
6060
6161
6262 func confTryGetInteger (key) = match getInteger(Address(configurationAddress), key) {
6363 case b: Int =>
6464 b
6565 case _ =>
6666 0
6767 }
6868
6969
7070 func confTryGetString (key) = match getString(Address(configurationAddress), key) {
7171 case b: String =>
7272 b
7373 case _ =>
7474 ""
7575 }
7676
7777
7878 func confTryGetBoolean (key) = match getBoolean(Address(configurationAddress), key) {
7979 case b: Boolean =>
8080 b
8181 case _ =>
8282 false
8383 }
8484
8585
8686 func getTreasuryKey (nationid) = (nationid + "_Treasury")
8787
8888
8989 func treasuryTryGetInteger (key) = match getInteger(Address(treasuryAddress), key) {
9090 case b: Int =>
9191 b
9292 case _ =>
9393 0
9494 }
9595
9696
9797 func nationsTryGetInteger (key) = match getInteger(Address(nationsAddress), key) {
9898 case b: Int =>
9999 b
100100 case _ =>
101101 0
102102 }
103103
104104
105105 func nationsTryGetBoolean (key) = match getBoolean(Address(nationsAddress), key) {
106106 case b: Boolean =>
107107 b
108108 case _ =>
109109 false
110110 }
111111
112112
113113 func nationsTryGetString (key) = match getString(Address(nationsAddress), key) {
114114 case b: String =>
115115 b
116116 case _ =>
117117 ""
118118 }
119119
120120
121121 func getAssetOwnerKeyString (assetId) = (assetId + "_Owner")
122122
123123
124124 func assetsTryGetInteger (key) = match getInteger(Address(assetsAddress), key) {
125125 case b: Int =>
126126 b
127127 case _ =>
128128 0
129129 }
130130
131131
132-let startNationsSHEG = 90000000000
132+let startNationsSHEG = 1000000000000
133133
134134 @Callable(i)
135135 func setUserNation (nationId) = {
136136 let k = toString(i.originCaller)
137137 let p = tryGetInteger((k + "_Power"))
138138 [IntegerEntry(k, nationId), IntegerEntry((k + "_Power"), p)]
139139 }
140140
141141
142142
143143 @Callable(i)
144144 func setUserPower (address,newPower) = if (!(checkAdmin(i.caller)))
145145 then throw("Only the admin can perform this operation")
146146 else $Tuple2([IntegerEntry((address + "_Power"), newPower)], newPower)
147147
148148
149149
150150 @Callable(i)
151151 func setNationDiscovered (strOwner,nationId) = if (!(checkAdmin(i.caller)))
152152 then throw("Only the admin can perform this operation")
153153 else {
154154 let Nationkey = ("Nation_" + toBase58String(i.transactionId))
155155 let deposit = invoke(Address(treasuryAddress), "increaseNationWallet", [Nationkey, startNationsSHEG], i.payments)
156156 if ((deposit == deposit))
157157 then {
158158 let own = invoke(Address(assetsAddress), "setNationOwner", [Nationkey, strOwner], nil)
159159 if ((own == own))
160160 then [IntegerEntry(Nationkey, nationId), StringEntry(toString(nationId), Nationkey), IntegerEntry(strOwner, nationId)]
161161 else throw("Strict value is not equal to itself.")
162162 }
163163 else throw("Strict value is not equal to itself.")
164164 }
165165
166166
167167
168168 @Callable(i)
169169 func setTecnhnologyDiscovered (nationKey,technologyKey) = if (!(checkAdmin(i.caller)))
170170 then throw("Only the admin can perform this operation")
171171 else {
172172 let Nationkey = ((nationKey + "_") + technologyKey)
173173 $Tuple2([BooleanEntry(Nationkey, true)], true)
174174 }
175175
176176
177177
178178 @Callable(i)
179179 func DelKey (key) = if (!(checkAdmin(i.caller)))
180180 then throw("")
181181 else [DeleteEntry(key)]
182182
183183
184184
185185 @Callable(i)
186186 func UpdKeyString (key,val) = if (!(checkAdmin(i.caller)))
187187 then throw("")
188188 else [StringEntry(key, val)]
189189
190190
191191
192192 @Callable(i)
193193 func UpdKeyInt (key,val) = if (!(checkAdmin(i.caller)))
194194 then throw("")
195195 else [IntegerEntry(key, val)]
196196
197197

github/deemru/w8io/786bc32 
41.14 ms