2023.05.12 20:11 [3640474] smart account 3P9k1sC5WFHCdr8xVwcQYPZxkCXBudYRNGY > SELF 0.00000000 Waves

{ "type": 13, "id": "Fbzm9uLWwyPpMnF4TAdp1evqaoYewPDaHNBYcX8xhn74", "fee": 700000, "feeAssetId": null, "timestamp": 1683911621189, "version": 2, "chainId": 87, "sender": "3P9k1sC5WFHCdr8xVwcQYPZxkCXBudYRNGY", "senderPublicKey": "DPdvCYDZjJh9yDx6EyfLQuDfL9VBGEZ5ro5BE9MPex2Q", "proofs": [ "3u5yveXM47EfVDARKsbfKB3Mzyi3w38XEvoWvXiRaAHyzE23KpCivnQxwHSBzXYuM8f7VoZs1Tv3JGsjTSMnPCqY" ], "script": "base64:BgIRCAISAwoBCBIDCgEIEgMKAQgJAQxhc0J5dGVWZWN0b3IBBXZhbHVlBAckbWF0Y2gwBQV2YWx1ZQMJAAECBQckbWF0Y2gwAgpCeXRlVmVjdG9yBApieXRlVmVjdG9yBQckbWF0Y2gwBQpieXRlVmVjdG9yCQACAQIlQUFTOiB3cm9uZyB0eXBlLCBleHBlY3RlZDogYnl0ZVZlY3RvcgEUdHJ5R2V0U3RyaW5nRXh0ZXJuYWwCB2FkZHJlc3MDa2V5BAckbWF0Y2gwCQCdCAIFB2FkZHJlc3MFA2tleQMJAAECBQckbWF0Y2gwAgZTdHJpbmcEAWEFByRtYXRjaDAFAWECAAEVdHJ5R2V0SW50ZWdlckV4dGVybmFsAgdhZGRyZXNzA2tleQQHJG1hdGNoMAkAmggCBQdhZGRyZXNzBQNrZXkDCQABAgUHJG1hdGNoMAIDSW50BAFiBQckbWF0Y2gwBQFiAAABDHRyeUdldFN0cmluZwEDa2V5CQEUdHJ5R2V0U3RyaW5nRXh0ZXJuYWwCBQR0aGlzBQNrZXkBCWdldE9yYWNsZQAJAQdBZGRyZXNzAQkA2QQBCQEMdHJ5R2V0U3RyaW5nAQIUc3RhdGljX29yYWNsZUFkZHJlc3MBFWdldE1hcmtldHBsYWNlQWRkcmVzcwAJAQdBZGRyZXNzAQkA2QQBCQEUdHJ5R2V0U3RyaW5nRXh0ZXJuYWwCCQEJZ2V0T3JhY2xlAAIZc3RhdGljX21hcmtldHBsYWNlQWRkcmVzcwEOZ2V0SHVudEFkZHJlc3MACQEHQWRkcmVzcwEJANkEAQkBFHRyeUdldFN0cmluZ0V4dGVybmFsAgkBCWdldE9yYWNsZQACEnN0YXRpY19odW50QWRkcmVzcwEUZ2V0QWNjZXNzSXRlbUFzc2V0SWQACQDZBAEJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkAnQgCCQEOZ2V0SHVudEFkZHJlc3MAAhhzdGF0aWNfYWNjZXNzSXRlbUFzc2V0SWQJAKwCAgIfQ2FuIG5vdCBmaW5kIGFjY2VzcyBpdGVtIGlkIGluIAkApQgBCQEOZ2V0SHVudEFkZHJlc3MAARJnZXRBY2Nlc3NJdGVtUHJpY2UACQEVdHJ5R2V0SW50ZWdlckV4dGVybmFsAgkBDmdldEh1bnRBZGRyZXNzAAIWc3RhdGljX2FjY2Vzc0l0ZW1QcmljZQMBaQEPY29uZmlndXJlT3JhY2xlAQZvcmFjbGUDCQECIT0CCAUBaQZjYWxsZXIFBHRoaXMJAAIBAg9BQ086IGFkbWluIG9ubHkJAMwIAgkBC1N0cmluZ0VudHJ5AgIUc3RhdGljX29yYWNsZUFkZHJlc3MFBm9yYWNsZQUDbmlsAWkBEGJ1eUFuZFNlbmRUb0h1bnQBCWF1Y3Rpb25JZAQKZHVja0J1eWluZwkBDGFzQnl0ZVZlY3RvcgEJAPwHBAkBFWdldE1hcmtldHBsYWNlQWRkcmVzcwACCmluc3RhbnRCdXkJAMwIAgUJYXVjdGlvbklkBQNuaWwJAMwIAgkAkQMCCAUBaQhwYXltZW50cwAABQNuaWwDCQAAAgUKZHVja0J1eWluZwUKZHVja0J1eWluZwQOc2VuZFRvSHVudERhdGEJAPwHBAkBDmdldEh1bnRBZGRyZXNzAAIIbG9ja0R1Y2sFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUKZHVja0J1eWluZwABBQNuaWwDCQAAAgUOc2VuZFRvSHVudERhdGEFDnNlbmRUb0h1bnREYXRhCQDMCAIJAQtTdHJpbmdFbnRyeQICBURFQlVHCQCsAgIJAKwCAgUJYXVjdGlvbklkAgEgCQDYBAEFCmR1Y2tCdXlpbmcFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpARlidXlEdWNrQW5kQVJBbmRTZW5kVG9IdW50AQlhdWN0aW9uSWQDCQECIT0CCQCQAwEIBQFpCHBheW1lbnRzAAIJAAIBAitBQkQ6IFBsZWFzZSBtYWtlIHN1cmUgdG8gYXR0YWNoIDIgcGF5bWVudHMhAwkBAiE9AggJAJEDAggFAWkIcGF5bWVudHMAAQdhc3NldElkCQEUZ2V0QWNjZXNzSXRlbUFzc2V0SWQACQACAQkArAICCQCsAgIJAKwCAgIVQUJEOiBXcm9uZyBhc3NldCBpZCEgCQDYBAEJAQV2YWx1ZQEICQCRAwIIBQFpCHBheW1lbnRzAAEHYXNzZXRJZAIBIAkA2AQBCQEUZ2V0QWNjZXNzSXRlbUFzc2V0SWQAAwkBAiE9AggJAJEDAggFAWkIcGF5bWVudHMAAQZhbW91bnQJARJnZXRBY2Nlc3NJdGVtUHJpY2UACQACAQkArAICCQCsAgIJAKwCAgIcQUJEOiBXcm9uZyBBbW91bnQgYXR0YWNoZWQhIAkApAMBCAkAkQMCCAUBaQhwYXltZW50cwABBmFtb3VudAIBIAkApAMBCQESZ2V0QWNjZXNzSXRlbVByaWNlAAQKZHVja0J1eWluZwkBDGFzQnl0ZVZlY3RvcgEJAPwHBAkBFWdldE1hcmtldHBsYWNlQWRkcmVzcwACCmluc3RhbnRCdXkJAMwIAgUJYXVjdGlvbklkBQNuaWwJAMwIAgkAkQMCCAUBaQhwYXltZW50cwAABQNuaWwDCQAAAgUKZHVja0J1eWluZwUKZHVja0J1eWluZwQOc2VuZFRvSHVudERhdGEJAPwHBAkBDmdldEh1bnRBZGRyZXNzAAIYYnV5QWNjZXNzSXRlbUFuZExvY2tEdWNrBQNuaWwJAMwIAgkAkQMCCAUBaQhwYXltZW50cwABCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCBQpkdWNrQnV5aW5nAAEFA25pbAMJAAACBQ5zZW5kVG9IdW50RGF0YQUOc2VuZFRvSHVudERhdGEJAMwIAgkBC1N0cmluZ0VudHJ5AgIFREVCVUcJAKwCAgkArAICBQlhdWN0aW9uSWQCASAJANgEAQUKZHVja0J1eWluZwUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAFCXspA=", "height": 3640474, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: BhXsQesBw5BJzVmGRG6a4GMLU9GrChomyBErEhQt1VKx Next: H8xhVtzH7nALu32ge6K3oDhqyCACUU6cqKgk2MnEGb29 Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func asByteVector (value) = match value {
55 case byteVector: ByteVector =>
66 byteVector
77 case _ =>
88 throw("AAS: wrong type, expected: byteVector")
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
3434 func getMarketplaceAddress () = Address(fromBase58String(tryGetStringExternal(getOracle(), "static_marketplaceAddress")))
3535
3636
3737 func getHuntAddress () = Address(fromBase58String(tryGetStringExternal(getOracle(), "static_huntAddress")))
3838
3939
4040 func getAccessItemAssetId () = fromBase58String(valueOrErrorMessage(getString(getHuntAddress(), "static_accessItemAssetId"), ("Can not find access item id in " + toString(getHuntAddress()))))
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)
5454 func buyAndSendToHunt (auctionId) = {
5555 let duckBuying = asByteVector(invoke(getMarketplaceAddress(), "instantBuy", [auctionId], [i.payments[0]]))
5656 if ((duckBuying == duckBuying))
5757 then {
5858 let sendToHuntData = invoke(getHuntAddress(), "lockDuck", nil, [AttachedPayment(duckBuying, 1)])
5959 if ((sendToHuntData == sendToHuntData))
6060 then [StringEntry("DEBUG", ((auctionId + " ") + toBase58String(duckBuying)))]
6161 else throw("Strict value is not equal to itself.")
6262 }
6363 else throw("Strict value is not equal to itself.")
6464 }
6565
6666
6767
6868 @Callable(i)
6969 func buyDuckAndARAndSendToHunt (auctionId) = if ((size(i.payments) != 2))
7070 then throw("ABD: Please make sure to attach 2 payments!")
7171 else if ((i.payments[1].assetId != getAccessItemAssetId()))
7272 then throw(((("ABD: Wrong asset id! " + toBase58String(value(i.payments[1].assetId))) + " ") + toBase58String(getAccessItemAssetId())))
7373 else if ((i.payments[1].amount != getAccessItemPrice()))
7474 then throw(((("ABD: Wrong Amount attached! " + toString(i.payments[1].amount)) + " ") + toString(getAccessItemPrice())))
7575 else {
7676 let duckBuying = asByteVector(invoke(getMarketplaceAddress(), "instantBuy", [auctionId], [i.payments[0]]))
7777 if ((duckBuying == duckBuying))
7878 then {
7979 let sendToHuntData = invoke(getHuntAddress(), "buyAccessItemAndLockDuck", nil, [i.payments[1], AttachedPayment(duckBuying, 1)])
8080 if ((sendToHuntData == sendToHuntData))
8181 then [StringEntry("DEBUG", ((auctionId + " ") + toBase58String(duckBuying)))]
8282 else throw("Strict value is not equal to itself.")
8383 }
8484 else throw("Strict value is not equal to itself.")
8585 }
8686
8787

github/deemru/w8io/786bc32 
175.44 ms