tx · DwFWPbzX6oQRGuwjHw9JokHNv3GwHpzMUR48YVsYp57A

3N5BTH4bjnXn7AAKoj4sswxytsPGmdXUuTx:  -0.01000000 Waves

2023.03.24 15:08 [2504070] smart account 3N5BTH4bjnXn7AAKoj4sswxytsPGmdXUuTx > SELF 0.00000000 Waves

{ "type": 13, "id": "DwFWPbzX6oQRGuwjHw9JokHNv3GwHpzMUR48YVsYp57A", "fee": 1000000, "feeAssetId": null, "timestamp": 1679659837884, "version": 2, "chainId": 84, "sender": "3N5BTH4bjnXn7AAKoj4sswxytsPGmdXUuTx", "senderPublicKey": "DyeDJ3fgwVVux2WRkxpLU9BbVjTM96AyV58b7bRFzCBx", "proofs": [ "2fBuXAQ5cJB5reuqVTKcS7VRinRbuix1qkwsD9ZK7PxBVG7YqwSm96tEWHLbPE8qeAM8tUWTbumnFV42S6PUmzNy" ], "script": "base64:BgIKCAISBgoEGBgRAQEABXRlYW1zASCFY5Wj84iOsN4MF44ITr+aP5K7Jts66HaOFtwUIipIfgEBaQEGYnV5TmZ0BAZzZWxsZXIEbmZ0cwVwcmljZQt0b3RhbGFtb3VudAQFYnV5ZXIIBQFpBmNhbGxlcgQDbmZ0CQCQAwEFBG5mdHMEDGJ1eWVyQmFsYW5jZQkA8AcCBQVidXllcgEghWOVo/OIjrDeDBeOCE6/mj+SuybbOuh2jhbcFCIqSH4EBmFtb3VudAkBBXZhbHVlAQgJAJEDAggFAWkIcGF5bWVudHMAAAZhbW91bnQECHByaWNlT25lCQBoAgkAaQIJAJEDAgUFcHJpY2UAAADoBwDPBwQIcHJpY2VUd28JAGgCCQBpAgkAkQMCBQVwcmljZQABAOgHAM8HBApwcmljZVRocmVlCQBoAgkAaQIJAJEDAgUFcHJpY2UAAgDoBwDPBwoBA3N1bQIFYWNjdW0EbmV4dAkAZAIFBWFjY3VtBQRuZXh0BANhcnIFBXByaWNlBAl0b3RhbENvc3QKAAIkbAUDYXJyCgACJHMJAJADAQUCJGwKAAUkYWNjMAAACgEFJGYwXzECAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAQNzdW0CBQIkYQkAkQMCBQIkbAUCJGkKAQUkZjBfMgICJGECJGkDCQBnAgUCJGkFAiRzBQIkYQkAAgECE0xpc3Qgc2l6ZSBleGNlZWRzIDUJAQUkZjBfMgIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIFBSRhY2MwAAAAAQACAAMABAAFAwMJAGYCBQl0b3RhbENvc3QFBmFtb3VudAYJAGYCBQt0b3RhbGFtb3VudAUGYW1vdW50CQACAQIdeW91ciBwYXlpbmcgYW1tb3VudCBpcyB3cm9uZyADAwkBAiE9AgkAkAMBBQRuZnRzCQCQAwEFBnNlbGxlcgYJAQIhPQIJAJADAQUGc2VsbGVyCQCQAwEFBXByaWNlCQACAQJMSW52YWxpZCBpbnB1dDogTnVtYmVyIG9mIE5GVHMsIHNlbGxlciBhZGRyZXNzZXMsIGFuZCBjb3N0cyBtdXN0IGJlIHRoZSBzYW1lLgMJAGYCBQZhbW91bnQFDGJ1eWVyQmFsYW5jZQkAAgECOkJ1eWVyIGRvZXMgbm90IGhhdmUgZW5vdWdoIGZ1bmRzIHRvIGNvbXBsZXRlIHRoZSBwdXJjaGFzZS4DCQAAAggJAJEDAggFAWkIcGF5bWVudHMAAAdhc3NldElkBQV0ZWFtcwkAzAgCCQELU3RyaW5nRW50cnkCCQClCAEIBQFpBmNhbGxlcgkApAMBBQZhbW91bnQJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwUFYnV5ZXIAAQkA2QQBCQCRAwIFBG5mdHMAAAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQVidXllcgABCQDZBAEJAJEDAgUEbmZ0cwABCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFBWJ1eWVyAAEJANkEAQkAkQMCBQRuZnRzAAIJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwkBB0FkZHJlc3MBCQDZBAEJAJEDAgUGc2VsbGVyAAAFCHByaWNlT25lBQV0ZWFtcwkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCQEHQWRkcmVzcwEJANkEAQkAkQMCBQZzZWxsZXIAAQUIcHJpY2VUd28FBXRlYW1zCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMJAQdBZGRyZXNzAQkA2QQBCQCRAwIFBnNlbGxlcgABBQpwcmljZVRocmVlBQV0ZWFtcwUDbmlsBQNuaWwAlqPJSA==", "height": 2504070, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: AmnHBbcw2wyEavGEydMgJ7sh7fBDsS7ErL43TNcBBtPT Next: EucoipR4ifJfHGygWnKvd2ZwraPAb4PDsBfrajXnkTdS Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-
4+let teams = base58'9yhJDfWjPpv6tFjWRD1AJyBQwausJf2ZdxzLn86Uknnq'
55
66 @Callable(i)
7-func buyNft (nfts) = {
7+func buyNft (seller,nfts,price,totalamount) = {
88 let buyer = i.caller
99 let nft = size(nfts)
1010 let buyerBalance = assetBalance(buyer, base58'9yhJDfWjPpv6tFjWRD1AJyBQwausJf2ZdxzLn86Uknnq')
1111 let amount = value(i.payments[0].amount)
12- let length = size("nftId")
13- let onePro = fromBase58String(nfts[0])
14- let twoPro = fromBase58String(nfts[1])
15-[ScriptTransfer(buyer, 1, onePro), ScriptTransfer(buyer, 1, twoPro)]
12+ let priceOne = ((price[0] / 1000) * 975)
13+ let priceTwo = ((price[1] / 1000) * 975)
14+ let priceThree = ((price[2] / 1000) * 975)
15+ func sum (accum,next) = (accum + next)
16+
17+ let arr = price
18+ let totalCost = {
19+ let $l = arr
20+ let $s = size($l)
21+ let $acc0 = 0
22+ func $f0_1 ($a,$i) = if (($i >= $s))
23+ then $a
24+ else sum($a, $l[$i])
25+
26+ func $f0_2 ($a,$i) = if (($i >= $s))
27+ then $a
28+ else throw("List size exceeds 5")
29+
30+ $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5)
31+ }
32+ if (if ((totalCost > amount))
33+ then true
34+ else (totalamount > amount))
35+ then throw("your paying ammount is wrong ")
36+ else if (if ((size(nfts) != size(seller)))
37+ then true
38+ else (size(seller) != size(price)))
39+ then throw("Invalid input: Number of NFTs, seller addresses, and costs must be the same.")
40+ else if ((amount > buyerBalance))
41+ then throw("Buyer does not have enough funds to complete the purchase.")
42+ else if ((i.payments[0].assetId == teams))
43+ then [StringEntry(toString(i.caller), toString(amount)), ScriptTransfer(buyer, 1, fromBase58String(nfts[0])), ScriptTransfer(buyer, 1, fromBase58String(nfts[1])), ScriptTransfer(buyer, 1, fromBase58String(nfts[2])), ScriptTransfer(Address(fromBase58String(seller[0])), priceOne, teams), ScriptTransfer(Address(fromBase58String(seller[1])), priceTwo, teams), ScriptTransfer(Address(fromBase58String(seller[1])), priceThree, teams)]
44+ else nil
1645 }
1746
1847

github/deemru/w8io/169f3d6 
45.32 ms