tx · Aaej9rab5Z8GttwwkRXxqNwFJSztsCacQnzVgL7a7EXb

3Mra7mjPipcQd5sJaRmXK8xgS4scb8gPF4A:  -0.01000000 Waves

2022.10.26 13:39 [2289283] smart account 3Mra7mjPipcQd5sJaRmXK8xgS4scb8gPF4A > SELF 0.00000000 Waves

{ "type": 13, "id": "Aaej9rab5Z8GttwwkRXxqNwFJSztsCacQnzVgL7a7EXb", "fee": 1000000, "feeAssetId": null, "timestamp": 1666780795345, "version": 2, "chainId": 84, "sender": "3Mra7mjPipcQd5sJaRmXK8xgS4scb8gPF4A", "senderPublicKey": "HTEmPgvFxYj3ixqqyCZYUX15Z31rMbac2vWaQw8vrPRj", "proofs": [ "5xT8kuEvdZ9fbknmdME27Cv199k7TUegh9qhCMw7ShekKULr5TZiJPz3VejopfQsfufWQxBrAKBmEuukcuso9ese" ], "script": "base64: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AAAAAGQEAAAADHNoZWd0b3NlbGxlcgkAAGUAAAACBQAAAAhhbW91bnRJbgUAAAAOc2hlZ3RvcGxhdGZvcm0DCQAAAAAAAAIFAAAACHRyYW5zZmVyCQAEJQAAAAEIBQAAAAFpAAAABmNhbGxlcgkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADBQAAAAthZG1pbldhbGxldAUAAAANVG9BZG1pbldhbGxldAUAAAAKc2hpbnl3Z2dpZAkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADBQAAABZkYWlseUdhbWVSZXdhcmRzV2FsbGV0BQAAABNUb0dhbWVSZXdhcmRzV2FsbGV0BQAAAApzaGlueXdnZ2lkCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMFAAAAGWRhaWx5U3Rha2luZ1Jld2FyZHNXYWxsZXQFAAAAFlRvU3Rha2luZ1Jld2FyZHNXYWxsZXQFAAAACnNoaW55d2dnaWQJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwUAAAAMb3duZXJhZGRyZXNzBQAAAAxzaGVndG9zZWxsZXIFAAAACnNoaW55d2dnaWQJAARMAAAAAgkBAAAAC0RlbGV0ZUVudHJ5AAAAAQkBAAAAFmdldEFzc2V0T3duZXJLZXlTdHJpbmcAAAABBQAAAAdhc3NldElkCQAETAAAAAIJAQAAAAtEZWxldGVFbnRyeQAAAAEJAQAAABZnZXRBc3NldFByaWNlS2V5U3RyaW5nAAAAAQUAAAAHYXNzZXRJZAkABEwAAAACCQEAAAALRGVsZXRlRW50cnkAAAABBQAAAAdhc3NldElkBQAAAANuaWwJAAACAAAAAQIAAAAsRXJyb3IgdHJhbnNmZXJyaW5nIHRoZSBvd25lcnNoaXAgb2YgdGhlIGl0ZW0JAAACAAAAAQIAAAAsRXJyb3IgcmVtb3ZpbmcgdGhlIGl0ZW0gZnJvbSB0aGUgbWFya2V0cGxhY2UAAAABaQEAAAAOcmVtb3ZlRnJvbVNhbGUAAAABAAAAB2Fzc2V0SWQEAAAABW93bmVyCQEAAAAMdHJ5R2V0U3RyaW5nAAAAAQkBAAAAFmdldEFzc2V0T3duZXJLZXlTdHJpbmcAAAABBQAAAAdhc3NldElkAwkBAAAAAiE9AAAAAgkABCUAAAABCAUAAAABaQAAAAZjYWxsZXIFAAAABW93bmVyCQAAAgAAAAECAAAAPU9ubHkgdGhlIG93bmVyIG9mIHRoZSBJdGVtIGNhbiByZW1vdmUgaXQgZnJvbSB0aGUgbWFya2V0cGxhY2UEAAAACWFzc2V0c2hlZwkBAAAADXRyeUdldEludGVnZXIAAAABBQAAAAdhc3NldElkBAAAAAd0b2Fzc2V0CQAD/AAAAAQJAQAAAAdBZGRyZXNzAAAAAQUAAAANYXNzZXRzQWRkcmVzcwIAAAAWQWRkQXNzZXRGcm9tTWFya2VwbGFjZQkABEwAAAACBQAAAAdhc3NldElkCQAETAAAAAIFAAAABW93bmVyCQAETAAAAAIFAAAACWFzc2V0c2hlZwUAAAADbmlsBQAAAANuaWwDCQAAAAAAAAIFAAAAB3RvYXNzZXQFAAAABW93bmVyCQAETAAAAAIJAQAAAAtEZWxldGVFbnRyeQAAAAEJAQAAABZnZXRBc3NldE93bmVyS2V5U3RyaW5nAAAAAQUAAAAHYXNzZXRJZAkABEwAAAACCQEAAAALRGVsZXRlRW50cnkAAAABCQEAAAAWZ2V0QXNzZXRQcmljZUtleVN0cmluZwAAAAEFAAAAB2Fzc2V0SWQJAARMAAAAAgkBAAAAC0RlbGV0ZUVudHJ5AAAAAQUAAAAHYXNzZXRJZAUAAAADbmlsCQAAAgAAAAECAAAALEVycm9yIHJlbW92aW5nIHRoZSBpdGVtIGZyb20gdGhlIG1hcmtldHBsYWNlAAAAAM+L4ho=", "height": 2289283, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 12dSCB1G5vd3uEa5nADioP1rao85j6kQ5A34S3BNeC3m Next: AVb4m4yP5hHu8Hjw2HfV3h8jgyXGEVNvtENhvo7C3SrJ Diff:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let shinywggid = base58'AFQS5E4ELtxex3iANtWtUU2V2oWJZSo8VVnK8z3VFmqf'
4+let shinywggid = base58'A2hcw6RV23Fc8Y8FNfV35Sq5QeS9Tgp6n8hbrESiRvXX'
55
6-let treasuryAddress = base58'3MyDGEoKp1gF4LSRknk9vSuDEyrwuYXcQEQ'
6+let treasuryAddress = base58'3PDW5NBHrSqYhwB8KJidBfprM6n6KPCykBB'
77
8-let assetsAddress = base58'3N8WDKbqGox5Eky326PHHT7rUyrby5MXdmb'
8+let assetsAddress = base58'3PRCCnKuNS3PdbcSYcKdmTecSXXR9SE3rVb'
99
10-let marketplaceAddress = base58'3Mra7mjPipcQd5sJaRmXK8xgS4scb8gPF4A'
10+let marketplaceAddress = base58'3P5EAhvWXJpTW5XCmw4cTRLirr5hdV43wG9'
1111
12-let configurationAddress = base58'3N9tj3b2djcaZozn97VkYchL9S1i6cdEbC1'
12+let configurationAddress = base58'3PDREv1pvqS9r2Gi5CZDHrgsQLigA9xXYp3'
1313
14-let nationsAddress = base58'3MvyzDtzWWV5MZ1GP8JfQhhQqiGU4Nbifdy'
14+let nationsAddress = base58'3PAvvCSVicC2Ugsj9zWrzYmu2b6uAuGc3Fo'
1515
16-let adminWallet = addressFromStringValue("3MpNtiPSRSq6NnaQYk38BfWSzZcgAYTyrQ9")
16+let adminWallet = addressFromStringValue("3PHKGy65emtBy4xxeQwz49nzSV1cqcJdw4U")
1717
18-let dailyGameRewardsWallet = addressFromStringValue("3MuSrXTTiwo9bdoD6FeaBpMUYMiU5saDv2U")
18+let dailyGameRewardsWallet = addressFromStringValue("3PHANHAVYa72vkHVGrLqzUkyKeeEDhDknXj")
1919
20-let dailyStakingRewardsWallet = addressFromStringValue("3Mv3mr3uNXdpgkVPApbGEJjMQXqau37DY5i")
20+let dailyStakingRewardsWallet = addressFromStringValue("3PFQGA6DA66ny11vFAWPWrqprmivyyySDCv")
2121
2222 func checkAdmin (caller) = if (if (if (if (if ((caller == adminWallet))
2323 then true
143143 @Callable(i)
144144 func buyItem (assetId) = {
145145 let owner = tryGetString(getAssetOwnerKeyString(assetId))
146+ let owneraddress = addressFromStringValue(owner)
146147 let assetPrice = tryGetInteger(getAssetPriceKeyString(assetId))
147148 let amountIn = value(i.payments[0].amount)
148149 if ((assetPrice > amountIn))
161162 let ToStakingRewardsWallet = ((shegtoplatform * 25) / 100)
162163 let shegtoseller = (amountIn - shegtoplatform)
163164 if ((transfer == toString(i.caller)))
164- then [ScriptTransfer(adminWallet, ToAdminWallet, shinywggid), ScriptTransfer(dailyGameRewardsWallet, ToGameRewardsWallet, shinywggid), ScriptTransfer(dailyStakingRewardsWallet, ToStakingRewardsWallet, shinywggid), ScriptTransfer(addressFromStringValue(owner), shegtoseller, shinywggid), DeleteEntry(getAssetOwnerKeyString(assetId)), DeleteEntry(getAssetPriceKeyString(assetId)), DeleteEntry(assetId)]
165+ then [ScriptTransfer(adminWallet, ToAdminWallet, shinywggid), ScriptTransfer(dailyGameRewardsWallet, ToGameRewardsWallet, shinywggid), ScriptTransfer(dailyStakingRewardsWallet, ToStakingRewardsWallet, shinywggid), ScriptTransfer(owneraddress, shegtoseller, shinywggid), DeleteEntry(getAssetOwnerKeyString(assetId)), DeleteEntry(getAssetPriceKeyString(assetId)), DeleteEntry(assetId)]
165166 else throw("Error transferring the ownership of the item")
166167 }
167168 else throw("Error removing the item from the marketplace")
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let shinywggid = base58'AFQS5E4ELtxex3iANtWtUU2V2oWJZSo8VVnK8z3VFmqf'
4+let shinywggid = base58'A2hcw6RV23Fc8Y8FNfV35Sq5QeS9Tgp6n8hbrESiRvXX'
55
6-let treasuryAddress = base58'3MyDGEoKp1gF4LSRknk9vSuDEyrwuYXcQEQ'
6+let treasuryAddress = base58'3PDW5NBHrSqYhwB8KJidBfprM6n6KPCykBB'
77
8-let assetsAddress = base58'3N8WDKbqGox5Eky326PHHT7rUyrby5MXdmb'
8+let assetsAddress = base58'3PRCCnKuNS3PdbcSYcKdmTecSXXR9SE3rVb'
99
10-let marketplaceAddress = base58'3Mra7mjPipcQd5sJaRmXK8xgS4scb8gPF4A'
10+let marketplaceAddress = base58'3P5EAhvWXJpTW5XCmw4cTRLirr5hdV43wG9'
1111
12-let configurationAddress = base58'3N9tj3b2djcaZozn97VkYchL9S1i6cdEbC1'
12+let configurationAddress = base58'3PDREv1pvqS9r2Gi5CZDHrgsQLigA9xXYp3'
1313
14-let nationsAddress = base58'3MvyzDtzWWV5MZ1GP8JfQhhQqiGU4Nbifdy'
14+let nationsAddress = base58'3PAvvCSVicC2Ugsj9zWrzYmu2b6uAuGc3Fo'
1515
16-let adminWallet = addressFromStringValue("3MpNtiPSRSq6NnaQYk38BfWSzZcgAYTyrQ9")
16+let adminWallet = addressFromStringValue("3PHKGy65emtBy4xxeQwz49nzSV1cqcJdw4U")
1717
18-let dailyGameRewardsWallet = addressFromStringValue("3MuSrXTTiwo9bdoD6FeaBpMUYMiU5saDv2U")
18+let dailyGameRewardsWallet = addressFromStringValue("3PHANHAVYa72vkHVGrLqzUkyKeeEDhDknXj")
1919
20-let dailyStakingRewardsWallet = addressFromStringValue("3Mv3mr3uNXdpgkVPApbGEJjMQXqau37DY5i")
20+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
132132 func getAssetPriceKeyString (assetId) = (assetId + "_Price")
133133
134134
135135 @Callable(i)
136136 func putOnSale (assetId,assetSheg,sellPrice) = {
137137 let strCaller = toString(i.originCaller)
138138 $Tuple2([StringEntry(getAssetOwnerKeyString(assetId), strCaller), IntegerEntry(getAssetPriceKeyString(assetId), sellPrice), IntegerEntry(assetId, assetSheg)], sellPrice)
139139 }
140140
141141
142142
143143 @Callable(i)
144144 func buyItem (assetId) = {
145145 let owner = tryGetString(getAssetOwnerKeyString(assetId))
146+ let owneraddress = addressFromStringValue(owner)
146147 let assetPrice = tryGetInteger(getAssetPriceKeyString(assetId))
147148 let amountIn = value(i.payments[0].amount)
148149 if ((assetPrice > amountIn))
149150 then throw("You provided less $heg than the needed cost for buying this Item")
150151 else if ((i.payments[0].assetId != shinywggid))
151152 then throw("Only $HEG payments allowed")
152153 else {
153154 let assetsheg = tryGetInteger(assetId)
154155 let toasset = invoke(Address(assetsAddress), "AddAssetFromMarkeplace", [assetId, owner, assetsheg], nil)
155156 if ((toasset == owner))
156157 then {
157158 let transfer = invoke(Address(assetsAddress), "transferOwnership", [assetId, toString(i.caller), 1], nil)
158159 let shegtoplatform = ((amountIn * 10) / 100)
159160 let ToAdminWallet = ((shegtoplatform * 50) / 100)
160161 let ToGameRewardsWallet = ((shegtoplatform * 25) / 100)
161162 let ToStakingRewardsWallet = ((shegtoplatform * 25) / 100)
162163 let shegtoseller = (amountIn - shegtoplatform)
163164 if ((transfer == toString(i.caller)))
164- then [ScriptTransfer(adminWallet, ToAdminWallet, shinywggid), ScriptTransfer(dailyGameRewardsWallet, ToGameRewardsWallet, shinywggid), ScriptTransfer(dailyStakingRewardsWallet, ToStakingRewardsWallet, shinywggid), ScriptTransfer(addressFromStringValue(owner), shegtoseller, shinywggid), DeleteEntry(getAssetOwnerKeyString(assetId)), DeleteEntry(getAssetPriceKeyString(assetId)), DeleteEntry(assetId)]
165+ then [ScriptTransfer(adminWallet, ToAdminWallet, shinywggid), ScriptTransfer(dailyGameRewardsWallet, ToGameRewardsWallet, shinywggid), ScriptTransfer(dailyStakingRewardsWallet, ToStakingRewardsWallet, shinywggid), ScriptTransfer(owneraddress, shegtoseller, shinywggid), DeleteEntry(getAssetOwnerKeyString(assetId)), DeleteEntry(getAssetPriceKeyString(assetId)), DeleteEntry(assetId)]
165166 else throw("Error transferring the ownership of the item")
166167 }
167168 else throw("Error removing the item from the marketplace")
168169 }
169170 }
170171
171172
172173
173174 @Callable(i)
174175 func removeFromSale (assetId) = {
175176 let owner = tryGetString(getAssetOwnerKeyString(assetId))
176177 if ((toString(i.caller) != owner))
177178 then throw("Only the owner of the Item can remove it from the marketplace")
178179 else {
179180 let assetsheg = tryGetInteger(assetId)
180181 let toasset = invoke(Address(assetsAddress), "AddAssetFromMarkeplace", [assetId, owner, assetsheg], nil)
181182 if ((toasset == owner))
182183 then [DeleteEntry(getAssetOwnerKeyString(assetId)), DeleteEntry(getAssetPriceKeyString(assetId)), DeleteEntry(assetId)]
183184 else throw("Error removing the item from the marketplace")
184185 }
185186 }
186187
187188

github/deemru/w8io/3ef1775 
44.86 ms