2022.09.30 11:51 [3317121] smart account 3PDW5NBHrSqYhwB8KJidBfprM6n6KPCykBB > SELF 0.00000000 Waves

{ "type": 13, "id": "Aurs3hoqM7GJvnbiSjpXEeAVxzLELQSRcfs8ukHFu5UQ", "fee": 1000000, "feeAssetId": null, "timestamp": 1664527861308, "version": 2, "chainId": 87, "sender": "3PDW5NBHrSqYhwB8KJidBfprM6n6KPCykBB", "senderPublicKey": "DMmtRAJdLQA417x1KZQ7F9MH9HxBHvaYsFhMZiS1hDnP", "proofs": [ "2U1a5ydFHFPEPoj89jWKZNvcdHvvFC1EhcTXFg6SpGqgRMbwWj7tc7XieDHSAnd7MFoRZViefMpm1QryaFiWZ8Rd" ], "script": "base64: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IHBlcmZvcm0gdGhpcyBvcGVyYXRpb24JAAUUAAAAAgkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCQEAAAARQGV4dHJOYXRpdmUoMTA2MikAAAABBQAAAAZ0b2FkZHIFAAAABmFtb3VudAUAAAAKc2hpbnl3Z2dpZAUAAAADbmlsBQAAAAZhbW91bnQAAAABaQEAAAAaZGlzdHJpYnV0ZU5hdGlvblBheVJld2FyZHMAAAABAAAADmFzc2V0QnVpbGRDb3N0AwkBAAAAASEAAAABCQEAAAAKY2hlY2tBZG1pbgAAAAEIBQAAAAFpAAAABmNhbGxlcgkAAAIAAAABAgAAADB5b3UgYXJlIG5vdCBhdXRob3JpemVkIHRvIHBlcmZvcm0gdGhpcyBvcGVyYXRpb24EAAAADVRvQWRtaW5XYWxsZXQJAABpAAAAAgkAAGgAAAACBQAAAA5hc3NldEJ1aWxkQ29zdAAAAAAAAAAABQAAAAAAAAAAZAQAAAATVG9HYW1lUmV3YXJkc1dhbGxldAkAAGkAAAACCQAAaAAAAAIFAAAADmFzc2V0QnVpbGRDb3N0AAAAAAAAAAAKAAAAAAAAAABkBAAAABZUb1N0YWtpbmdSZXdhcmRzV2FsbGV0CQAAaQAAAAIJAABoAAAAAgUAAAAOYXNzZXRCdWlsZENvc3QAAAAAAAAAAEEAAAAAAAAAAGQJAAUUAAAAAgkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADBQAAAAthZG1pbldhbGxldAUAAAANVG9BZG1pbldhbGxldAUAAAAKc2hpbnl3Z2dpZAkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADBQAAABZkYWlseUdhbWVSZXdhcmRzV2FsbGV0BQAAABNUb0dhbWVSZXdhcmRzV2FsbGV0BQAAAApzaGlueXdnZ2lkCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMFAAAAGWRhaWx5U3Rha2luZ1Jld2FyZHNXYWxsZXQFAAAAFlRvU3Rha2luZ1Jld2FyZHNXYWxsZXQFAAAACnNoaW55d2dnaWQFAAAAA25pbAUAAAAOYXNzZXRCdWlsZENvc3QAAAAAnxCxKg==", "height": 3317121, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: 94m5rjnST5HVVqZojoBP2ZeNTyrNYENCaddXKU64pKcN Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 5 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+let shinywggid = base58'A2hcw6RV23Fc8Y8FNfV35Sq5QeS9Tgp6n8hbrESiRvXX'
5+
6+let treasuryAddress = base58'3PDW5NBHrSqYhwB8KJidBfprM6n6KPCykBB'
7+
8+let assetsAddress = base58'3PRCCnKuNS3PdbcSYcKdmTecSXXR9SE3rVb'
9+
10+let marketplaceAddress = base58'3P5EAhvWXJpTW5XCmw4cTRLirr5hdV43wG9'
11+
12+let configurationAddress = base58'3PDREv1pvqS9r2Gi5CZDHrgsQLigA9xXYp3'
13+
14+let nationsAddress = base58'3PAvvCSVicC2Ugsj9zWrzYmu2b6uAuGc3Fo'
15+
16+let adminWallet = addressFromStringValue("3PHKGy65emtBy4xxeQwz49nzSV1cqcJdw4U")
17+
18+let dailyGameRewardsWallet = addressFromStringValue("3PHANHAVYa72vkHVGrLqzUkyKeeEDhDknXj")
19+
20+let dailyStakingRewardsWallet = addressFromStringValue("3PFQGA6DA66ny11vFAWPWrqprmivyyySDCv")
21+
22+func checkAdmin (caller) = if (if (if (if (if ((caller == adminWallet))
23+ then true
24+ else (caller == this))
25+ then true
26+ else (caller.bytes == assetsAddress))
27+ then true
28+ else (caller.bytes == treasuryAddress))
29+ then true
30+ else (caller.bytes == marketplaceAddress))
31+ then true
32+ else (caller.bytes == nationsAddress)
33+
34+
35+func tryGetInteger (key) = match getInteger(this, key) {
36+ case b: Int =>
37+ b
38+ case _ =>
39+ 0
40+}
41+
42+
43+func tryGetBoolean (key) = match getBoolean(this, key) {
44+ case b: Boolean =>
45+ b
46+ case _ =>
47+ false
48+}
49+
50+
51+func tryGetString (key) = match getString(this, key) {
52+ case b: String =>
53+ b
54+ case _ =>
55+ ""
56+}
57+
58+
59+func getALKey (Name,Level) = ((Name + "_lvl") + toString(Level))
60+
61+
62+func confTryGetInteger (key) = match getInteger(Address(configurationAddress), key) {
63+ case b: Int =>
64+ b
65+ case _ =>
66+ 0
67+}
68+
69+
70+func confTryGetString (key) = match getString(Address(configurationAddress), key) {
71+ case b: String =>
72+ b
73+ case _ =>
74+ ""
75+}
76+
77+
78+func confTryGetBoolean (key) = match getBoolean(Address(configurationAddress), key) {
79+ case b: Boolean =>
80+ b
81+ case _ =>
82+ false
83+}
84+
85+
86+func getTreasuryKey (nationid) = (nationid + "_Treasury")
87+
88+
89+func treasuryTryGetInteger (key) = match getInteger(Address(treasuryAddress), key) {
90+ case b: Int =>
91+ b
92+ case _ =>
93+ 0
94+}
95+
96+
97+func nationsTryGetInteger (key) = match getInteger(Address(nationsAddress), key) {
98+ case b: Int =>
99+ b
100+ case _ =>
101+ 0
102+}
103+
104+
105+func nationsTryGetBoolean (key) = match getBoolean(Address(nationsAddress), key) {
106+ case b: Boolean =>
107+ b
108+ case _ =>
109+ false
110+}
111+
112+
113+func nationsTryGetString (key) = match getString(Address(nationsAddress), key) {
114+ case b: String =>
115+ b
116+ case _ =>
117+ ""
118+}
119+
120+
121+func getAssetOwnerKeyString (assetId) = (assetId + "_Owner")
122+
123+
124+func assetsTryGetInteger (key) = match getInteger(Address(assetsAddress), key) {
125+ case b: Int =>
126+ b
127+ case _ =>
128+ 0
129+}
130+
131+
132+func internalDeposit (addressStr,amountIn) = {
133+ let amount = tryGetInteger((addressStr + "_Deposit"))
134+[IntegerEntry((addressStr + "_Deposit"), (amount + amountIn))]
135+ }
136+
137+
138+func internalPay (addressStr,amount) = {
139+ let deposited = tryGetInteger((addressStr + "_Deposit"))
140+ if ((0 > (deposited - amount)))
141+ then throw("Not enough deposit.")
142+ else if (((deposited - amount) == 0))
143+ then [DeleteEntry((addressStr + "_Deposit"))]
144+ else [IntegerEntry((addressStr + "_Deposit"), (deposited - amount))]
145+ }
146+
147+
148+func internalReserve (addressStr,amount) = {
149+ let reservedAmount = tryGetInteger((addressStr + "_Reserved"))
150+ IntegerEntry((addressStr + "_Reserved"), (reservedAmount + amount))
151+ }
152+
153+
154+func internalTransfer (fromAddress,toAddress,amount) = (internalPay(fromAddress, amount) ++ internalDeposit(toAddress, amount))
155+
156+
157+func insertRedeem (accum,nextValue) = {
158+ let val = split(nextValue, "_")
159+ let addr = val[0]
160+ let amnt = val[1]
161+ (accum :+ internalReserve(addr, parseIntValue(amnt)))
162+ }
163+
164+
165+@Callable(i)
166+func Deposit () = {
167+ let addressStr = toString(i.originCaller)
168+ let pmt = i.payments[0]
169+ if ((pmt == pmt))
170+ then {
171+ let amountIn = value(i.payments[0].amount)
172+ if ((amountIn == amountIn))
173+ then {
174+ let assetIn = pmt.assetId
175+ if ((assetIn == assetIn))
176+ then if ((assetIn != shinywggid))
177+ then throw("Only $HEG payments allowed")
178+ else {
179+ let amount = tryGetInteger((addressStr + "_Deposit"))
180+ $Tuple2(internalDeposit(addressStr, amountIn), (amount + amountIn))
181+ }
182+ else throw("Strict value is not equal to itself.")
183+ }
184+ else throw("Strict value is not equal to itself.")
185+ }
186+ else throw("Strict value is not equal to itself.")
187+ }
188+
189+
190+
191+@Callable(i)
192+func NoPaymentDeposit (addressStr,amountIn) = if (!(checkAdmin(i.caller)))
193+ then throw("")
194+ else {
195+ let amount = tryGetInteger((addressStr + "_Deposit"))
196+ $Tuple2(internalDeposit(addressStr, amountIn), (amount + amountIn))
197+ }
198+
199+
200+
201+@Callable(i)
202+func Pay (addressStr,amount) = if (!(checkAdmin(i.caller)))
203+ then throw("you are not authorized to perform this operation")
204+ else $Tuple2(internalPay(addressStr, amount), amount)
205+
206+
207+
208+@Callable(i)
209+func CallerPay (amount) = {
210+ let callerAddr = toString(i.caller)
211+ internalPay(callerAddr, amount)
212+ }
213+
214+
215+
216+@Callable(i)
217+func transferCoins (fromAddress,toAddress,amount) = if (if ((i.caller != adminWallet))
218+ then (i.caller.bytes != assetsAddress)
219+ else false)
220+ then throw("you are not authorized to perform this operation")
221+ else $Tuple2(internalTransfer(fromAddress, toAddress, amount), amount)
222+
223+
224+
225+@Callable(i)
226+func callerTransferCoins (toAddress,amount) = internalTransfer(toString(i.caller), toAddress, amount)
227+
228+
229+
230+@Callable(i)
231+func arbitraryAddCoins (toAddress,amount) = if (!(checkAdmin(i.caller)))
232+ then throw("you are not authorized to perform this operation")
233+ else $Tuple2(internalDeposit(toAddress, amount), amount)
234+
235+
236+
237+@Callable(i)
238+func Redeem () = {
239+ let addressStr = toString(i.caller)
240+ let reservedAmount = tryGetInteger((addressStr + "_Reserved"))
241+ if ((reservedAmount == 0))
242+ then throw("Nothing to redeem")
243+ else [DeleteEntry((addressStr + "_Reserved")), ScriptTransfer(i.caller, reservedAmount, shinywggid)]
244+ }
245+
246+
247+
248+@Callable(i)
249+func addReward (addressStr,amount) = if (!(checkAdmin(i.caller)))
250+ then throw("you are not authorized to perform this operation")
251+ else {
252+ let reservedAmount = tryGetInteger((addressStr + "_Reserved"))
253+ $Tuple2([IntegerEntry((addressStr + "_Reserved"), (reservedAmount + amount))], (reservedAmount + amount))
254+ }
255+
256+
257+
258+@Callable(i)
259+func addRewards (addr) = {
260+ let chunks = split(addr, "#")
261+ if (!(checkAdmin(i.caller)))
262+ then throw("you are not authorized to perform this operation")
263+ else {
264+ let $l = chunks
265+ let $s = size($l)
266+ let $acc0 = nil
267+ func $f0_1 ($a,$i) = if (($i >= $s))
268+ then $a
269+ else insertRedeem($a, $l[$i])
270+
271+ func $f0_2 ($a,$i) = if (($i >= $s))
272+ then $a
273+ else throw("List size exceeds 30")
274+
275+ $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20), 21), 22), 23), 24), 25), 26), 27), 28), 29), 30)
276+ }
277+ }
278+
279+
280+
281+@Callable(i)
282+func increaseNationWallet (NationKey,amount) = if (!(checkAdmin(i.caller)))
283+ then throw("you are not authorized to perform this operation")
284+ else {
285+ let key = getTreasuryKey(NationKey)
286+ let reservedAmount = tryGetInteger(key)
287+ $Tuple2([IntegerEntry(key, (reservedAmount + amount))], (reservedAmount + amount))
288+ }
289+
290+
291+
292+@Callable(i)
293+func decreaseNationWallet (NationKey,amount) = if (!(checkAdmin(i.caller)))
294+ then throw("you are not authorized to perform this operation")
295+ else {
296+ let key = getTreasuryKey(NationKey)
297+ let reservedAmount = tryGetInteger(key)
298+ $Tuple2([IntegerEntry(key, (reservedAmount - amount))], amount)
299+ }
300+
301+
302+
303+@Callable(i)
304+func adminTransfer (toaddr,amount) = if (!(checkAdmin(i.caller)))
305+ then throw("you are not authorized to perform this operation")
306+ else $Tuple2([ScriptTransfer(addressFromStringValue(toaddr), amount, shinywggid)], amount)
307+
308+
309+
310+@Callable(i)
311+func distributeNationPayRewards (assetBuildCost) = if (!(checkAdmin(i.caller)))
312+ then throw("you are not authorized to perform this operation")
313+ else {
314+ let ToAdminWallet = ((assetBuildCost * 5) / 100)
315+ let ToGameRewardsWallet = ((assetBuildCost * 10) / 100)
316+ let ToStakingRewardsWallet = ((assetBuildCost * 65) / 100)
317+ $Tuple2([ScriptTransfer(adminWallet, ToAdminWallet, shinywggid), ScriptTransfer(dailyGameRewardsWallet, ToGameRewardsWallet, shinywggid), ScriptTransfer(dailyStakingRewardsWallet, ToStakingRewardsWallet, shinywggid)], assetBuildCost)
318+ }
319+
320+

github/deemru/w8io/786bc32 
36.21 ms