tx · AqnenM2g4xox4bGPwNrooc1aPcrWdAASLPQu5f82tEhL

3P7GafyRyfQu58o6iQk5fHbkgVkQwVNPJoQ:  -0.01000000 Waves

2022.05.28 10:06 [3136711] smart account 3P7GafyRyfQu58o6iQk5fHbkgVkQwVNPJoQ > SELF 0.00000000 Waves

{ "type": 13, "id": "AqnenM2g4xox4bGPwNrooc1aPcrWdAASLPQu5f82tEhL", "fee": 1000000, "feeAssetId": null, "timestamp": 1653721627856, "version": 2, "chainId": 87, "sender": "3P7GafyRyfQu58o6iQk5fHbkgVkQwVNPJoQ", "senderPublicKey": "omvWsTsb3YXewGPiQajyCtwYiFFWpzwwUzRwFnPaj6A", "proofs": [ "3RTM1f96iagiKaCpMCpUCf8qkz5BzVcF3fKPfZAbjZGXXspFbDQsM8CRXtBaPxDgaNRZ7hGbts92EUTusk5aDNQh" ], "script": "base64:AAIFAAAAAAAAAB4IAhIECgIICBIAEgMKAQgSAwoBCBIDCgEIEgMKAQgAAAASAQAAAAhrZXlPd25lcgAAAAEAAAALZHVja0hvdXNlSWQJAAEsAAAAAgUAAAALZHVja0hvdXNlSWQCAAAABl9vd25lcgEAAAAMa2V5RHVja0hvdXNlAAAAAQAAAAZkdWNrSWQJAAEsAAAAAgUAAAAGZHVja0lkAgAAAAtfZHVja19ob3VzZQEAAAAXb2NjdXBpZWRTcG90c0R1Y2tzSG91c2UAAAABAAAAC2R1Y2tIb3VzZUlkCQABLAAAAAIFAAAAC2R1Y2tIb3VzZUlkAgAAAA1fZmlsbGVkX3Nwb3RzAQAAABR0cnlHZXRTdHJpbmdFeHRlcm5hbAAAAAIAAAAHYWRkcmVzcwAAAANrZXkEAAAAByRtYXRjaDAJAAQdAAAAAgUAAAAHYWRkcmVzcwUAAAADa2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAZTdHJpbmcEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWECAAAAAAEAAAAMdHJ5R2V0U3RyaW5nAAAAAQAAAANrZXkJAQAAABR0cnlHZXRTdHJpbmdFeHRlcm5hbAAAAAIFAAAABHRoaXMFAAAAA2tleQEAAAANdHJ5R2V0SW50ZWdlcgAAAAEAAAADa2V5BAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMFAAAAA2tleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFiBQAAAAckbWF0Y2gwBQAAAAFiAAAAAAAAAAAAAQAAAAhhc1N0cmluZwAAAAEAAAAFdmFsdWUEAAAAByRtYXRjaDAFAAAABXZhbHVlAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAZTdHJpbmcEAAAABnN0cmluZwUAAAAHJG1hdGNoMAUAAAAGc3RyaW5nCQAAAgAAAAECAAAAHHdyb25nIHR5cGUsIGV4cGVjdGVkOiBTdHJpbmcBAAAABWFzSW50AAAAAQAAAAV2YWx1ZQQAAAAHJG1hdGNoMAUAAAAFdmFsdWUDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAADaW50BQAAAAckbWF0Y2gwBQAAAANpbnQJAAACAAAAAQIAAAAZd3JvbmcgdHlwZSwgZXhwZWN0ZWQ6IEludAEAAAAJZ2V0T3JhY2xlAAAAAAkBAAAAB0FkZHJlc3MAAAABCQACWQAAAAEJAQAAAAx0cnlHZXRTdHJpbmcAAAABAgAAABRzdGF0aWNfb3JhY2xlQWRkcmVzcwEAAAAPZ2V0SXRlbXNBZGRyZXNzAAAAAAkBAAAAB0FkZHJlc3MAAAABCQACWQAAAAEJAQAAABR0cnlHZXRTdHJpbmdFeHRlcm5hbAAAAAIJAQAAAAlnZXRPcmFjbGUAAAAAAgAAABNzdGF0aWNfaXRlbXNBZGRyZXNzAQAAABFnZXRGYXJtaW5nQWRkcmVzcwAAAAAJAQAAAAdBZGRyZXNzAAAAAQkAAlkAAAABCQEAAAAUdHJ5R2V0U3RyaW5nRXh0ZXJuYWwAAAACCQEAAAAJZ2V0T3JhY2xlAAAAAAIAAAAVc3RhdGljX2Zhcm1pbmdBZGRyZXNzAQAAAA1nZXRFZ2dBc3NldElkAAAAAAkAAlkAAAABCQEAAAAUdHJ5R2V0U3RyaW5nRXh0ZXJuYWwAAAACCQEAAAAJZ2V0T3JhY2xlAAAAAAIAAAARc3RhdGljX2VnZ0Fzc2V0SWQBAAAACG1heER1Y2tzAAAAAAkBAAAADXRyeUdldEludGVnZXIAAAABAgAAAA9zdGF0aWNfbWF4RHVja3MBAAAACXN0YWtlQ2FsbAAAAAAJAQAAAAx0cnlHZXRTdHJpbmcAAAABAgAAABBzdGF0aWNfc3Rha2VDYWxsAQAAAApKU3Rha2VDYWxsAAAAAAkBAAAADHRyeUdldFN0cmluZwAAAAECAAAAEXN0YXRpY19KU3Rha2VDYWxsAQAAAAR0eXBlAAAAAAkBAAAADHRyeUdldFN0cmluZwAAAAECAAAAC3N0YXRpY190eXBlAQAAAAVib29zdAAAAAAJAQAAAA10cnlHZXRJbnRlZ2VyAAAAAQIAAAAMc3RhdGljX2Jvb3N0AQAAAAlpc0phY2twb3QAAAABAAAAB2Fzc2V0SWQJAAAAAAAAAgkBAAAACXRha2VSaWdodAAAAAIJAQAAAAV2YWx1ZQAAAAEICQEAAAAFdmFsdWUAAAABCQAD7AAAAAEFAAAAB2Fzc2V0SWQAAAAEbmFtZQAAAAAAAAAAAQIAAAABVQAAAAYAAAABaQEAAAAPY29uZmlndXJlT3JhY2xl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", "height": 3136711, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: FPnmuVsdireSazmMwU9kk1CCSeDyza4TAamsHQWHXLBN Next: GMtu87mt5VTvywGqcMtp48PaCprMpe7uAMG9Jjm54dfG Diff:
OldNewDifferences
8282 let setup = if ((type == "ART-BIGHOUSE"))
8383 then [IntegerEntry("static_boost", 15), IntegerEntry("static_maxDucks", 10), StringEntry("static_stakeCall", "stakeNFTWithoutPerch"), StringEntry("static_type", "ART-BIGHOUSE"), StringEntry("static_JStakeCall", "stakeNFTWithoutPerch")]
8484 else if ((type == "ART-HOUSE"))
85- then [IntegerEntry("static_boost", 30), IntegerEntry("static_maxDucks", 4), StringEntry("static_stakeCall", "stakeNFT"), StringEntry("static_type", "ART-HOUSE"), StringEntry("static_JStakeCall", "stakeJackpot")]
85+ then [IntegerEntry("static_boost", 30), IntegerEntry("static_maxDucks", 4), StringEntry("static_stakeCall", "stakeNFT"), StringEntry("static_type", "ART-HOUSE"), StringEntry("static_JStakeCall", "stakeNFTWithoutPerch")]
8686 else throw("Unknown type!")
8787 ([StringEntry("static_oracleAddress", oracle)] ++ setup)
8888 }
141141 if ((boostDuck == boostDuck))
142142 then {
143143 let stakeDuck = if (isJackpot(assetId))
144- then invoke(getFarmingAddress(), stakeCall(), nil, i.payments)
145- else invoke(getFarmingAddress(), JStakeCall(), nil, i.payments)
144+ then invoke(getFarmingAddress(), JStakeCall(), nil, i.payments)
145+ else invoke(getFarmingAddress(), stakeCall(), nil, i.payments)
146146 if ((stakeDuck == stakeDuck))
147147 then [IntegerEntry(occupiedSpotsDucksHouse(duckHouseId), (filledSpots + 1)), StringEntry(keyDuckHouse(toBase58String(assetId)), duckHouseId)]
148148 else throw("Strict value is not equal to itself.")
163163 then throw("Don't try to steal someone duck!")
164164 else {
165165 let unstakeDuckReward = if (isJackpot(fromBase58String(asset)))
166- then asInt(invoke(getFarmingAddress(), "unstakeNFT", [asset], nil))
167- else asInt(invoke(getFarmingAddress(), "unstakeJackpot", [asset], nil))
166+ then asInt(invoke(getFarmingAddress(), "unstakeJackpot", [asset], nil))
167+ else asInt(invoke(getFarmingAddress(), "unstakeNFT", [asset], nil))
168168 if ((unstakeDuckReward == unstakeDuckReward))
169169 then {
170170 let filledSpots = tryGetInteger(occupiedSpotsDucksHouse(duckHouseId))
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func keyOwner (duckHouseId) = (duckHouseId + "_owner")
55
66
77 func keyDuckHouse (duckId) = (duckId + "_duck_house")
88
99
1010 func occupiedSpotsDucksHouse (duckHouseId) = (duckHouseId + "_filled_spots")
1111
1212
1313 func tryGetStringExternal (address,key) = match getString(address, key) {
1414 case a: String =>
1515 a
1616 case _ =>
1717 ""
1818 }
1919
2020
2121 func tryGetString (key) = tryGetStringExternal(this, key)
2222
2323
2424 func tryGetInteger (key) = match getInteger(this, key) {
2525 case b: Int =>
2626 b
2727 case _ =>
2828 0
2929 }
3030
3131
3232 func asString (value) = match value {
3333 case string: String =>
3434 string
3535 case _ =>
3636 throw("wrong type, expected: String")
3737 }
3838
3939
4040 func asInt (value) = match value {
4141 case int: Int =>
4242 int
4343 case _ =>
4444 throw("wrong type, expected: Int")
4545 }
4646
4747
4848 func getOracle () = Address(fromBase58String(tryGetString("static_oracleAddress")))
4949
5050
5151 func getItemsAddress () = Address(fromBase58String(tryGetStringExternal(getOracle(), "static_itemsAddress")))
5252
5353
5454 func getFarmingAddress () = Address(fromBase58String(tryGetStringExternal(getOracle(), "static_farmingAddress")))
5555
5656
5757 func getEggAssetId () = fromBase58String(tryGetStringExternal(getOracle(), "static_eggAssetId"))
5858
5959
6060 func maxDucks () = tryGetInteger("static_maxDucks")
6161
6262
6363 func stakeCall () = tryGetString("static_stakeCall")
6464
6565
6666 func JStakeCall () = tryGetString("static_JStakeCall")
6767
6868
6969 func type () = tryGetString("static_type")
7070
7171
7272 func boost () = tryGetInteger("static_boost")
7373
7474
7575 func isJackpot (assetId) = (takeRight(value(value(assetInfo(assetId)).name), 1) == "U")
7676
7777
7878 @Callable(i)
7979 func configureOracle (oracle,type) = if ((i.caller != this))
8080 then throw("admin only")
8181 else {
8282 let setup = if ((type == "ART-BIGHOUSE"))
8383 then [IntegerEntry("static_boost", 15), IntegerEntry("static_maxDucks", 10), StringEntry("static_stakeCall", "stakeNFTWithoutPerch"), StringEntry("static_type", "ART-BIGHOUSE"), StringEntry("static_JStakeCall", "stakeNFTWithoutPerch")]
8484 else if ((type == "ART-HOUSE"))
85- then [IntegerEntry("static_boost", 30), IntegerEntry("static_maxDucks", 4), StringEntry("static_stakeCall", "stakeNFT"), StringEntry("static_type", "ART-HOUSE"), StringEntry("static_JStakeCall", "stakeJackpot")]
85+ then [IntegerEntry("static_boost", 30), IntegerEntry("static_maxDucks", 4), StringEntry("static_stakeCall", "stakeNFT"), StringEntry("static_type", "ART-HOUSE"), StringEntry("static_JStakeCall", "stakeNFTWithoutPerch")]
8686 else throw("Unknown type!")
8787 ([StringEntry("static_oracleAddress", oracle)] ++ setup)
8888 }
8989
9090
9191
9292 @Callable(i)
9393 func stakeDuckHouse () = {
9494 let owner = toString(i.caller)
9595 let artefactPayment = value(i.payments[0])
9696 let artefactAssetId = toBase58String(value(artefactPayment.assetId))
9797 if ((artefactPayment.amount != 1))
9898 then throw("NFT is not attached")
9999 else {
100100 let artefactName = asString(invoke(getItemsAddress(), "checkArtefactDetails", [artefactAssetId], nil))
101101 if ((artefactName == artefactName))
102102 then if ((artefactName != type()))
103103 then throw("Wrong artefact")
104104 else [StringEntry(keyOwner(artefactAssetId), owner)]
105105 else throw("Strict value is not equal to itself.")
106106 }
107107 }
108108
109109
110110
111111 @Callable(i)
112112 func unstakeDuckHouse (duckHouseId) = {
113113 let caller = toString(i.caller)
114114 let duckHouseOwner = tryGetString(keyOwner(duckHouseId))
115115 if ((duckHouseOwner == ""))
116116 then throw("This duckhouse is not staked!")
117117 else if ((duckHouseOwner != caller))
118118 then throw("This duckhouse is not yours!")
119119 else if ((tryGetInteger(occupiedSpotsDucksHouse(duckHouseId)) != 0))
120120 then throw("Please first remove your ducks from the duckhouse")
121121 else [ScriptTransfer(i.caller, 1, fromBase58String(duckHouseId)), DeleteEntry(keyOwner(duckHouseId))]
122122 }
123123
124124
125125
126126 @Callable(i)
127127 func stakeDuck (duckHouseId) = {
128128 let assetId = value(value(i.payments[0]).assetId)
129129 let address = toString(i.caller)
130130 let duckHouseOwner = tryGetString(keyOwner(duckHouseId))
131131 if ((duckHouseOwner == ""))
132132 then throw("This duckhouse is not staked!")
133133 else if ((duckHouseOwner != address))
134134 then throw("This duckhouse is not yours!")
135135 else {
136136 let filledSpots = tryGetInteger(occupiedSpotsDucksHouse(duckHouseId))
137137 if ((filledSpots == maxDucks()))
138138 then throw("No space in duck house left!")
139139 else {
140140 let boostDuck = invoke(getItemsAddress(), "manipulateBoost", [boost(), toBase58String(assetId)], nil)
141141 if ((boostDuck == boostDuck))
142142 then {
143143 let stakeDuck = if (isJackpot(assetId))
144- then invoke(getFarmingAddress(), stakeCall(), nil, i.payments)
145- else invoke(getFarmingAddress(), JStakeCall(), nil, i.payments)
144+ then invoke(getFarmingAddress(), JStakeCall(), nil, i.payments)
145+ else invoke(getFarmingAddress(), stakeCall(), nil, i.payments)
146146 if ((stakeDuck == stakeDuck))
147147 then [IntegerEntry(occupiedSpotsDucksHouse(duckHouseId), (filledSpots + 1)), StringEntry(keyDuckHouse(toBase58String(assetId)), duckHouseId)]
148148 else throw("Strict value is not equal to itself.")
149149 }
150150 else throw("Strict value is not equal to itself.")
151151 }
152152 }
153153 }
154154
155155
156156
157157 @Callable(i)
158158 func unstakeDuck (asset) = {
159159 let duckHouseId = tryGetString(keyDuckHouse(asset))
160160 let owner = tryGetString(keyOwner(duckHouseId))
161161 let address = toString(i.caller)
162162 if ((owner != address))
163163 then throw("Don't try to steal someone duck!")
164164 else {
165165 let unstakeDuckReward = if (isJackpot(fromBase58String(asset)))
166- then asInt(invoke(getFarmingAddress(), "unstakeNFT", [asset], nil))
167- else asInt(invoke(getFarmingAddress(), "unstakeJackpot", [asset], nil))
166+ then asInt(invoke(getFarmingAddress(), "unstakeJackpot", [asset], nil))
167+ else asInt(invoke(getFarmingAddress(), "unstakeNFT", [asset], nil))
168168 if ((unstakeDuckReward == unstakeDuckReward))
169169 then {
170170 let filledSpots = tryGetInteger(occupiedSpotsDucksHouse(duckHouseId))
171171 if ((filledSpots == 0))
172172 then throw("You aren't staking any ducks!")
173173 else {
174174 let unboostDuck = invoke(getItemsAddress(), "manipulateBoost", [-(boost()), asset], nil)
175175 if ((unboostDuck == unboostDuck))
176176 then [ScriptTransfer(i.caller, unstakeDuckReward, getEggAssetId()), ScriptTransfer(i.caller, 1, fromBase58String(asset)), DeleteEntry(keyDuckHouse(asset)), IntegerEntry(occupiedSpotsDucksHouse(duckHouseId), (filledSpots - 1))]
177177 else throw("Strict value is not equal to itself.")
178178 }
179179 }
180180 else throw("Strict value is not equal to itself.")
181181 }
182182 }
183183
184184
185185
186186 @Callable(i)
187187 func claimDuckRewards (asset) = {
188188 let claimRewards = asInt(invoke(getFarmingAddress(), "claimReward", [asset], nil))
189189 if ((claimRewards == claimRewards))
190190 then nil
191191 else throw("Strict value is not equal to itself.")
192192 }
193193
194194

github/deemru/w8io/6500d08 
64.37 ms