tx · 7jkKmpx7hhDwEtzM727G1Csph9mRBgaHeMFiXmUqK3dz

3P9k1sC5WFHCdr8xVwcQYPZxkCXBudYRNGY:  -0.01000000 Waves

2023.01.12 13:53 [3467142] smart account 3P9k1sC5WFHCdr8xVwcQYPZxkCXBudYRNGY > SELF 0.00000000 Waves

{ "type": 13, "id": "7jkKmpx7hhDwEtzM727G1Csph9mRBgaHeMFiXmUqK3dz", "fee": 1000000, "feeAssetId": null, "timestamp": 1673520900373, "version": 2, "chainId": 87, "sender": "3P9k1sC5WFHCdr8xVwcQYPZxkCXBudYRNGY", "senderPublicKey": "DPdvCYDZjJh9yDx6EyfLQuDfL9VBGEZ5ro5BE9MPex2Q", "proofs": [ "Mktg2SsdHXTk8ue7NXvS7EZJKKWaioAvSEZquKfFUyHGPAUmq5b24zKk2W64WugxKhW2TW9niT8R7zmH96i4nEV" ], "script": "base64:BgIRCAISAwoBCBIDCgEIEgMKAQgJAQhhc1N0cmluZwEFdmFsdWUEByRtYXRjaDAFBXZhbHVlAwkAAQIFByRtYXRjaDACBlN0cmluZwQGc3RyaW5nBQckbWF0Y2gwBQZzdHJpbmcJAAIBAiFBQVM6IHdyb25nIHR5cGUsIGV4cGVjdGVkOiBTdHJpbmcBFHRyeUdldFN0cmluZ0V4dGVybmFsAgdhZGRyZXNzA2tleQQHJG1hdGNoMAkAnQgCBQdhZGRyZXNzBQNrZXkDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAFhBQckbWF0Y2gwBQFhAgABFXRyeUdldEludGVnZXJFeHRlcm5hbAIHYWRkcmVzcwNrZXkEByRtYXRjaDAJAJoIAgUHYWRkcmVzcwUDa2V5AwkAAQIFByRtYXRjaDACA0ludAQBYgUHJG1hdGNoMAUBYgAAAQx0cnlHZXRTdHJpbmcBA2tleQkBFHRyeUdldFN0cmluZ0V4dGVybmFsAgUEdGhpcwUDa2V5AQlnZXRPcmFjbGUACQEHQWRkcmVzcwEJANkEAQkBDHRyeUdldFN0cmluZwECFHN0YXRpY19vcmFjbGVBZGRyZXNzARVnZXRNYXJrZXRwbGFjZUFkZHJlc3MACQEHQWRkcmVzcwEJANkEAQkBFHRyeUdldFN0cmluZ0V4dGVybmFsAgkBCWdldE9yYWNsZQACGXN0YXRpY19tYXJrZXRwbGFjZUFkZHJlc3MBDmdldEh1bnRBZGRyZXNzAAkBB0FkZHJlc3MBCQDZBAEJARR0cnlHZXRTdHJpbmdFeHRlcm5hbAIJAQlnZXRPcmFjbGUAAhJzdGF0aWNfaHVudEFkZHJlc3MBFGdldEFjY2Vzc0l0ZW1Bc3NldElkAAkA2QQBCQEUdHJ5R2V0U3RyaW5nRXh0ZXJuYWwCCQEOZ2V0SHVudEFkZHJlc3MAAhhzdGF0aWNfYWNjZXNzSXRlbUFzc2V0SWQBEmdldEFjY2Vzc0l0ZW1QcmljZQAJARV0cnlHZXRJbnRlZ2VyRXh0ZXJuYWwCCQEOZ2V0SHVudEFkZHJlc3MAAhZzdGF0aWNfYWNjZXNzSXRlbVByaWNlAwFpAQ9jb25maWd1cmVPcmFjbGUBBm9yYWNsZQMJAQIhPQIIBQFpBmNhbGxlcgUEdGhpcwkAAgECD0FDTzogYWRtaW4gb25seQkAzAgCCQELU3RyaW5nRW50cnkCAhRzdGF0aWNfb3JhY2xlQWRkcmVzcwUGb3JhY2xlBQNuaWwBaQEQYnV5QW5kU2VuZFRvSHVudAEJYXVjdGlvbklkBApkdWNrQnV5aW5nCQEIYXNTdHJpbmcBCQD8BwQJARVnZXRNYXJrZXRwbGFjZUFkZHJlc3MAAgppbnN0YW50QnV5CQDMCAIFCWF1Y3Rpb25JZAUDbmlsCQDMCAIJAJEDAggFAWkIcGF5bWVudHMAAAUDbmlsAwkAAAIFCmR1Y2tCdXlpbmcFCmR1Y2tCdXlpbmcEDnNlbmRUb0h1bnREYXRhCQEIYXNTdHJpbmcBCQD8BwQJAQ5nZXRIdW50QWRkcmVzcwACCGxvY2tEdWNrBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJANkEAQUKZHVja0J1eWluZwABBQNuaWwDCQAAAgUOc2VuZFRvSHVudERhdGEFDnNlbmRUb0h1bnREYXRhCQDMCAIJAQtTdHJpbmdFbnRyeQICBURFQlVHCQCsAgIJAKwCAgUJYXVjdGlvbklkAgEgBQpkdWNrQnV5aW5nBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEZYnV5RHVja0FuZEFSQW5kU2VuZFRvSHVudAEJYXVjdGlvbklkBApkdWNrQnV5aW5nCQEIYXNTdHJpbmcBCQD8BwQJARVnZXRNYXJrZXRwbGFjZUFkZHJlc3MAAgppbnN0YW50QnV5CQDMCAIFCWF1Y3Rpb25JZAUDbmlsCQDMCAIJAJEDAggFAWkIcGF5bWVudHMAAAUDbmlsAwkAAAIFCmR1Y2tCdXlpbmcFCmR1Y2tCdXlpbmcEDnNlbmRUb0h1bnREYXRhCQEIYXNTdHJpbmcBCQD8BwQJAQ5nZXRIdW50QWRkcmVzcwACGGJ1eUFjY2Vzc0l0ZW1BbmRMb2NrRHVjawUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQEUZ2V0QWNjZXNzSXRlbUFzc2V0SWQACQESZ2V0QWNjZXNzSXRlbVByaWNlAAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkA2QQBBQpkdWNrQnV5aW5nAAEFA25pbAMJAAACBQ5zZW5kVG9IdW50RGF0YQUOc2VuZFRvSHVudERhdGEJAMwIAgkBC1N0cmluZ0VudHJ5AgIFREVCVUcJAKwCAgkArAICBQlhdWN0aW9uSWQCASAFCmR1Y2tCdXlpbmcFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgBl52vG", "height": 3467142, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 4DnpuTq9tVYXFLLzTuchpNZsqRR9zT9qhWFagiRbRgUY Next: FmL5rzaKbfPrJX62P9MpzdNXyszhdajXvD9zRuXKLLib Diff:
OldNewDifferences
3131 func getOracle () = Address(fromBase58String(tryGetString("static_oracleAddress")))
3232
3333
34-func getMarketplaceAddress () = Address(fromBase58String(tryGetString("static_marketplaceAddress")))
34+func getMarketplaceAddress () = Address(fromBase58String(tryGetStringExternal(getOracle(), "static_marketplaceAddress")))
3535
3636
37-func getHuntAddress () = Address(fromBase58String(tryGetString("static_huntAddress")))
37+func getHuntAddress () = Address(fromBase58String(tryGetStringExternal(getOracle(), "static_huntAddress")))
3838
3939
4040 func getAccessItemAssetId () = fromBase58String(tryGetStringExternal(getHuntAddress(), "static_accessItemAssetId"))
5151
5252
5353 @Callable(i)
54-func buyAndSendToHunt (auctionId) = [StringEntry("DEBUG", (auctionId + " "))]
54+func buyAndSendToHunt (auctionId) = {
55+ let duckBuying = asString(invoke(getMarketplaceAddress(), "instantBuy", [auctionId], [i.payments[0]]))
56+ if ((duckBuying == duckBuying))
57+ then {
58+ let sendToHuntData = asString(invoke(getHuntAddress(), "lockDuck", nil, [AttachedPayment(fromBase58String(duckBuying), 1)]))
59+ if ((sendToHuntData == sendToHuntData))
60+ then [StringEntry("DEBUG", ((auctionId + " ") + duckBuying))]
61+ else throw("Strict value is not equal to itself.")
62+ }
63+ else throw("Strict value is not equal to itself.")
64+ }
5565
5666
5767
5868 @Callable(i)
59-func buyDuckAndARAndSendToHunt (auctionId) = [StringEntry("DEBUG", (auctionId + " "))]
69+func buyDuckAndARAndSendToHunt (auctionId) = {
70+ let duckBuying = asString(invoke(getMarketplaceAddress(), "instantBuy", [auctionId], [i.payments[0]]))
71+ if ((duckBuying == duckBuying))
72+ then {
73+ let sendToHuntData = asString(invoke(getHuntAddress(), "buyAccessItemAndLockDuck", nil, [AttachedPayment(getAccessItemAssetId(), getAccessItemPrice()), AttachedPayment(fromBase58String(duckBuying), 1)]))
74+ if ((sendToHuntData == sendToHuntData))
75+ then [StringEntry("DEBUG", ((auctionId + " ") + duckBuying))]
76+ else throw("Strict value is not equal to itself.")
77+ }
78+ else throw("Strict value is not equal to itself.")
79+ }
6080
6181
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func asString (value) = match value {
55 case string: String =>
66 string
77 case _ =>
88 throw("AAS: wrong type, expected: String")
99 }
1010
1111
1212 func tryGetStringExternal (address,key) = match getString(address, key) {
1313 case a: String =>
1414 a
1515 case _ =>
1616 ""
1717 }
1818
1919
2020 func tryGetIntegerExternal (address,key) = match getInteger(address, key) {
2121 case b: Int =>
2222 b
2323 case _ =>
2424 0
2525 }
2626
2727
2828 func tryGetString (key) = tryGetStringExternal(this, key)
2929
3030
3131 func getOracle () = Address(fromBase58String(tryGetString("static_oracleAddress")))
3232
3333
34-func getMarketplaceAddress () = Address(fromBase58String(tryGetString("static_marketplaceAddress")))
34+func getMarketplaceAddress () = Address(fromBase58String(tryGetStringExternal(getOracle(), "static_marketplaceAddress")))
3535
3636
37-func getHuntAddress () = Address(fromBase58String(tryGetString("static_huntAddress")))
37+func getHuntAddress () = Address(fromBase58String(tryGetStringExternal(getOracle(), "static_huntAddress")))
3838
3939
4040 func getAccessItemAssetId () = fromBase58String(tryGetStringExternal(getHuntAddress(), "static_accessItemAssetId"))
4141
4242
4343 func getAccessItemPrice () = tryGetIntegerExternal(getHuntAddress(), "static_accessItemPrice")
4444
4545
4646 @Callable(i)
4747 func configureOracle (oracle) = if ((i.caller != this))
4848 then throw("ACO: admin only")
4949 else [StringEntry("static_oracleAddress", oracle)]
5050
5151
5252
5353 @Callable(i)
54-func buyAndSendToHunt (auctionId) = [StringEntry("DEBUG", (auctionId + " "))]
54+func buyAndSendToHunt (auctionId) = {
55+ let duckBuying = asString(invoke(getMarketplaceAddress(), "instantBuy", [auctionId], [i.payments[0]]))
56+ if ((duckBuying == duckBuying))
57+ then {
58+ let sendToHuntData = asString(invoke(getHuntAddress(), "lockDuck", nil, [AttachedPayment(fromBase58String(duckBuying), 1)]))
59+ if ((sendToHuntData == sendToHuntData))
60+ then [StringEntry("DEBUG", ((auctionId + " ") + duckBuying))]
61+ else throw("Strict value is not equal to itself.")
62+ }
63+ else throw("Strict value is not equal to itself.")
64+ }
5565
5666
5767
5868 @Callable(i)
59-func buyDuckAndARAndSendToHunt (auctionId) = [StringEntry("DEBUG", (auctionId + " "))]
69+func buyDuckAndARAndSendToHunt (auctionId) = {
70+ let duckBuying = asString(invoke(getMarketplaceAddress(), "instantBuy", [auctionId], [i.payments[0]]))
71+ if ((duckBuying == duckBuying))
72+ then {
73+ let sendToHuntData = asString(invoke(getHuntAddress(), "buyAccessItemAndLockDuck", nil, [AttachedPayment(getAccessItemAssetId(), getAccessItemPrice()), AttachedPayment(fromBase58String(duckBuying), 1)]))
74+ if ((sendToHuntData == sendToHuntData))
75+ then [StringEntry("DEBUG", ((auctionId + " ") + duckBuying))]
76+ else throw("Strict value is not equal to itself.")
77+ }
78+ else throw("Strict value is not equal to itself.")
79+ }
6080
6181

github/deemru/w8io/6500d08 
55.14 ms