tx · 2YBSEHGp3bbumVgnFHn6jW4cAg2wB76CZdiqQwephjfo 3N4XDqsd3iMrXb6kS7R7Wwd4azMsqUXMvfe: -0.02700000 Waves 2022.09.20 09:03 [2237070] smart account 3N4XDqsd3iMrXb6kS7R7Wwd4azMsqUXMvfe > SELF 0.00000000 Waves
{ "type": 13, "id": "2YBSEHGp3bbumVgnFHn6jW4cAg2wB76CZdiqQwephjfo", "fee": 2700000, "feeAssetId": null, "timestamp": 1663653809344, "version": 2, "chainId": 84, "sender": "3N4XDqsd3iMrXb6kS7R7Wwd4azMsqUXMvfe", "senderPublicKey": "C2mzHuEYRUgN9aEFza8tUYr6jfSWEgS6WvPmA54fejJk", "proofs": [ "2dLEZaTfoT6Wb8RZysmGTwFeDaQzdhj59zvYHmjKVFvq3HbZ1DSbMH6H9662ua8e7Po68JdGoocyib38RW38or1C" ], "script": "base64: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", "height": 2237070, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: 5gTXAN5D6yz9K2MDuva43qqccfU2eKUVWPTBVzLQA6BG Full:
Old | New | Differences | |
---|---|---|---|
1 | - | # no script | |
1 | + | {-# STDLIB_VERSION 5 #-} | |
2 | + | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | + | {-# CONTENT_TYPE DAPP #-} | |
4 | + | func to_key (n) = toBase58String(toBytes(n)) | |
5 | + | ||
6 | + | ||
7 | + | func unique_bytes (i) = ((((i.transactionId + i.callerPublicKey) + lastBlock.generationSignature) + toBytes(lastBlock.timestamp)) + toBytes(lastBlock.height)) | |
8 | + | ||
9 | + | ||
10 | + | func random_uint (bytes,nonce) = { | |
11 | + | let n = toInt(sha256_16Kb((bytes + toBytes(nonce)))) | |
12 | + | if ((0 > n)) | |
13 | + | then -(n) | |
14 | + | else n | |
15 | + | } | |
16 | + | ||
17 | + | ||
18 | + | func pick_one (key_0,key_1,rand_int,bit_power) = if ((((rand_int / bit_power) % 2) == 0)) | |
19 | + | then key_0 | |
20 | + | else key_1 | |
21 | + | ||
22 | + | ||
23 | + | func check_hybrid_payment (i) = if ((size(i.payments) != 1)) | |
24 | + | then false | |
25 | + | else { | |
26 | + | let p = i.payments[0] | |
27 | + | let p_token = match p.assetId { | |
28 | + | case id: ByteVector => | |
29 | + | toBase58String(id) | |
30 | + | case _ => | |
31 | + | "" | |
32 | + | } | |
33 | + | let token = getStringValue("price_hybrid_token") | |
34 | + | let amount = getIntegerValue("price_hybrid_amount") | |
35 | + | if ((p_token != token)) | |
36 | + | then false | |
37 | + | else if ((amount != p.amount)) | |
38 | + | then false | |
39 | + | else true | |
40 | + | } | |
41 | + | ||
42 | + | ||
43 | + | func make_hybrid_tx (i,song_0,song_1) = { | |
44 | + | let n = match getInteger("count") { | |
45 | + | case j: Int => | |
46 | + | j | |
47 | + | case _ => | |
48 | + | 0 | |
49 | + | } | |
50 | + | let issue = Issue(("Clef " + toString(n)), "Clef song.", 1, 0, false) | |
51 | + | let id_b = calculateAssetId(issue) | |
52 | + | let id = toBase58String(id_b) | |
53 | + | let key = to_key(n) | |
54 | + | let bytes = unique_bytes(i) | |
55 | + | let rand_0 = random_uint(bytes, 0) | |
56 | + | let rand_1 = random_uint(bytes, 1) | |
57 | + | [issue, IntegerEntry("count", (n + 1)), StringEntry(id, key), StringEntry(key, id), IntegerEntry((key + "_G"), (max([getIntegerValue((song_0 + "_G")), getIntegerValue((song_1 + "_G"))]) + 1)), StringEntry((key + "_SL"), ""), IntegerEntry((key + "_SN"), rand_0), StringEntry((key + "_SP0"), song_0), StringEntry((key + "_SP1"), song_1), IntegerEntry((key + "_SB0"), getIntegerValue((pick_one(song_0, song_1, rand_0, 1) + "_SB0"))), IntegerEntry((key + "_SB1"), getIntegerValue((pick_one(song_0, song_1, rand_0, 2) + "_SB1"))), IntegerEntry((key + "_SB2"), getIntegerValue((pick_one(song_0, song_1, rand_0, 4) + "_SB2"))), IntegerEntry((key + "_ST"), getIntegerValue((pick_one(song_0, song_1, rand_0, 8) + "_ST"))), StringEntry((key + "_SC0"), getStringValue((pick_one(song_0, song_1, rand_0, 16) + "_SC0"))), StringEntry((key + "_SC1"), getStringValue((pick_one(song_0, song_1, rand_0, 32) + "_SC1"))), StringEntry((key + "_SC2"), getStringValue((pick_one(song_0, song_1, rand_0, 64) + "_SC2"))), StringEntry((key + "_SC3"), getStringValue((pick_one(song_0, song_1, rand_0, 128) + "_SC3"))), StringEntry((key + "_SC4"), getStringValue((pick_one(song_0, song_1, rand_0, 512) + "_SC4"))), StringEntry((key + "_SC5"), getStringValue((pick_one(song_0, song_1, rand_0, 1024) + "_SC5"))), StringEntry((key + "_SC6"), getStringValue((pick_one(song_0, song_1, rand_0, 2048) + "_SC6"))), StringEntry((key + "_SC7"), getStringValue((pick_one(song_0, song_1, rand_0, 4096) + "_SC7"))), StringEntry((key + "_SM"), getStringValue((pick_one(song_0, song_1, rand_0, 8192) + "_SM"))), StringEntry((key + "_SI0"), getStringValue((pick_one(song_0, song_1, rand_0, 16384) + "_SI0"))), StringEntry((key + "_SI1"), getStringValue((pick_one(song_0, song_1, rand_0, 32768) + "_SI1"))), StringEntry((key + "_SI2"), getStringValue((pick_one(song_0, song_1, rand_0, 65536) + "_SI2"))), StringEntry((key + "_SI3"), getStringValue((pick_one(song_0, song_1, rand_0, 131072) + "_SI3"))), StringEntry((key + "_SI4"), getStringValue((pick_one(song_0, song_1, rand_0, 262144) + "_SI4"))), StringEntry((key + "_SI5"), getStringValue((pick_one(song_0, song_1, rand_0, 524288) + "_SI5"))), StringEntry((key + "_SI50"), getStringValue((pick_one(song_0, song_1, rand_0, 1048576) + "_SI50"))), StringEntry((key + "_SI51"), getStringValue((pick_one(song_0, song_1, rand_0, 2097152) + "_SI51"))), StringEntry((key + "_SI52"), getStringValue((pick_one(song_0, song_1, rand_0, 4194304) + "_SI52"))), StringEntry((key + "_SI53"), getStringValue((pick_one(song_0, song_1, rand_0, 8388608) + "_SI53"))), StringEntry((key + "_SI54"), getStringValue((pick_one(song_0, song_1, rand_0, 16777216) + "_SI54"))), StringEntry((key + "_SI55"), getStringValue((pick_one(song_0, song_1, rand_0, 33554432) + "_SI55"))), StringEntry((key + "_SI56"), getStringValue((pick_one(song_0, song_1, rand_0, 67108864) + "_SI56"))), StringEntry((key + "_SI57"), getStringValue((pick_one(song_0, song_1, rand_0, 134217728) + "_SI57"))), StringEntry((key + "_SI00"), getStringValue((pick_one(song_0, song_1, rand_0, 268435456) + "_SI00"))), StringEntry((key + "_SI01"), getStringValue((pick_one(song_0, song_1, rand_0, 536870912) + "_SI01"))), StringEntry((key + "_SI02"), getStringValue((pick_one(song_0, song_1, rand_0, 1073741824) + "_SI02"))), StringEntry((key + "_SI03"), getStringValue((pick_one(song_0, song_1, rand_0, 2147483648) + "_SI03"))), StringEntry((key + "_SI04"), getStringValue((pick_one(song_0, song_1, rand_0, 4294967296) + "_SI04"))), StringEntry((key + "_SI05"), getStringValue((pick_one(song_0, song_1, rand_0, 8589934592) + "_SI05"))), StringEntry((key + "_SI06"), getStringValue((pick_one(song_0, song_1, rand_1, 1) + "_SI06"))), StringEntry((key + "_SI07"), getStringValue((pick_one(song_0, song_1, rand_1, 2) + "_SI07"))), StringEntry((key + "_SI10"), getStringValue((pick_one(song_0, song_1, rand_1, 4) + "_SI10"))), StringEntry((key + "_SI11"), getStringValue((pick_one(song_0, song_1, rand_1, 8) + "_SI11"))), StringEntry((key + "_SI12"), getStringValue((pick_one(song_0, song_1, rand_1, 16) + "_SI12"))), StringEntry((key + "_SI13"), getStringValue((pick_one(song_0, song_1, rand_1, 32) + "_SI13"))), StringEntry((key + "_SI14"), getStringValue((pick_one(song_0, song_1, rand_1, 64) + "_SI14"))), StringEntry((key + "_SI15"), getStringValue((pick_one(song_0, song_1, rand_1, 128) + "_SI15"))), StringEntry((key + "_SI16"), getStringValue((pick_one(song_0, song_1, rand_1, 256) + "_SI16"))), StringEntry((key + "_SI17"), getStringValue((pick_one(song_0, song_1, rand_1, 512) + "_SI17"))), StringEntry((key + "_SI20"), getStringValue((pick_one(song_0, song_1, rand_1, 1024) + "_SI20"))), StringEntry((key + "_SI21"), getStringValue((pick_one(song_0, song_1, rand_1, 2048) + "_SI21"))), StringEntry((key + "_SI22"), getStringValue((pick_one(song_0, song_1, rand_1, 4096) + "_SI22"))), StringEntry((key + "_SI23"), getStringValue((pick_one(song_0, song_1, rand_1, 8192) + "_SI23"))), StringEntry((key + "_SI24"), getStringValue((pick_one(song_0, song_1, rand_1, 16384) + "_SI24"))), StringEntry((key + "_SI25"), getStringValue((pick_one(song_0, song_1, rand_1, 32768) + "_SI25"))), StringEntry((key + "_SI26"), getStringValue((pick_one(song_0, song_1, rand_1, 65536) + "_SI26"))), StringEntry((key + "_SI27"), getStringValue((pick_one(song_0, song_1, rand_1, 131072) + "_SI27"))), StringEntry((key + "_SI30"), getStringValue((pick_one(song_0, song_1, rand_1, 262144) + "_SI30"))), StringEntry((key + "_SI31"), getStringValue((pick_one(song_0, song_1, rand_1, 524288) + "_SI31"))), StringEntry((key + "_SI32"), getStringValue((pick_one(song_0, song_1, rand_1, 1048576) + "_SI32"))), StringEntry((key + "_SI33"), getStringValue((pick_one(song_0, song_1, rand_1, 2097152) + "_SI33"))), StringEntry((key + "_SI34"), getStringValue((pick_one(song_0, song_1, rand_1, 4194304) + "_SI34"))), StringEntry((key + "_SI35"), getStringValue((pick_one(song_0, song_1, rand_1, 8388608) + "_SI35"))), StringEntry((key + "_SI36"), getStringValue((pick_one(song_0, song_1, rand_1, 16777216) + "_SI36"))), StringEntry((key + "_SI37"), getStringValue((pick_one(song_0, song_1, rand_1, 33554432) + "_SI37"))), StringEntry((key + "_SI40"), getStringValue((pick_one(song_0, song_1, rand_1, 67108864) + "_SI40"))), StringEntry((key + "_SI41"), getStringValue((pick_one(song_0, song_1, rand_1, 134217728) + "_SI41"))), StringEntry((key + "_SI42"), getStringValue((pick_one(song_0, song_1, rand_1, 268435456) + "_SI42"))), StringEntry((key + "_SI43"), getStringValue((pick_one(song_0, song_1, rand_1, 536870912) + "_SI43"))), StringEntry((key + "_SI44"), getStringValue((pick_one(song_0, song_1, rand_1, 1073741824) + "_SI44"))), StringEntry((key + "_SI45"), getStringValue((pick_one(song_0, song_1, rand_1, 2147483648) + "_SI45"))), StringEntry((key + "_SI46"), getStringValue((pick_one(song_0, song_1, rand_1, 4294967296) + "_SI46"))), StringEntry((key + "_SI47"), getStringValue((pick_one(song_0, song_1, rand_1, 8589934592) + "_SI47"))), ScriptTransfer(Address(i.caller.bytes), 1, id_b)] | |
58 | + | } | |
59 | + | ||
60 | + | ||
61 | + | @Callable(i) | |
62 | + | func set_price_hybrid (token,amount) = if ((this != i.caller)) | |
63 | + | then throw("Caller is not dApp owner") | |
64 | + | else $Tuple2([StringEntry("price_hybrid_token", token), IntegerEntry("price_hybrid_amount", amount)], unit) | |
65 | + | ||
66 | + | ||
67 | + | ||
68 | + | @Callable(i) | |
69 | + | func mint_chord (name,notes) = if ((this != i.caller)) | |
70 | + | then throw("Caller is not dApp owner") | |
71 | + | else if ((size(notes) != 5)) | |
72 | + | then throw("Wrong notes size") | |
73 | + | else { | |
74 | + | let n = match getInteger("count") { | |
75 | + | case j: Int => | |
76 | + | j | |
77 | + | case _ => | |
78 | + | 0 | |
79 | + | } | |
80 | + | let key = to_key(n) | |
81 | + | $Tuple2([IntegerEntry("count", (n + 1)), StringEntry((key + "_CL"), name), IntegerEntry((key + "_C0"), notes[0]), IntegerEntry((key + "_C1"), notes[1]), IntegerEntry((key + "_C2"), notes[2]), IntegerEntry((key + "_C3"), notes[3]), IntegerEntry((key + "_C4"), notes[4])], unit) | |
82 | + | } | |
83 | + | ||
84 | + | ||
85 | + | ||
86 | + | @Callable(i) | |
87 | + | func mint_melody (name,notes) = if ((this != i.caller)) | |
88 | + | then throw("Caller is not dApp owner") | |
89 | + | else if ((size(notes) != 16)) | |
90 | + | then throw("Wrong notes size") | |
91 | + | else { | |
92 | + | let n = match getInteger("count") { | |
93 | + | case j: Int => | |
94 | + | j | |
95 | + | case _ => | |
96 | + | 0 | |
97 | + | } | |
98 | + | let key = to_key(n) | |
99 | + | $Tuple2([IntegerEntry("count", (n + 1)), StringEntry((key + "_ML"), name), IntegerEntry((key + "_M00"), notes[0]), IntegerEntry((key + "_M01"), notes[1]), IntegerEntry((key + "_M02"), notes[2]), IntegerEntry((key + "_M03"), notes[3]), IntegerEntry((key + "_M04"), notes[4]), IntegerEntry((key + "_M05"), notes[5]), IntegerEntry((key + "_M06"), notes[6]), IntegerEntry((key + "_M07"), notes[7]), IntegerEntry((key + "_M08"), notes[8]), IntegerEntry((key + "_M09"), notes[9]), IntegerEntry((key + "_M10"), notes[10]), IntegerEntry((key + "_M11"), notes[11]), IntegerEntry((key + "_M12"), notes[12]), IntegerEntry((key + "_M13"), notes[13]), IntegerEntry((key + "_M14"), notes[14]), IntegerEntry((key + "_M15"), notes[15])], unit) | |
100 | + | } | |
101 | + | ||
102 | + | ||
103 | + | ||
104 | + | @Callable(i) | |
105 | + | func mint_rhythm (name,scale,notes) = if ((this != i.caller)) | |
106 | + | then throw("Caller is not dApp owner") | |
107 | + | else if ((size(notes) != 16)) | |
108 | + | then throw("Wrong notes size") | |
109 | + | else { | |
110 | + | let n = match getInteger("count") { | |
111 | + | case j: Int => | |
112 | + | j | |
113 | + | case _ => | |
114 | + | 0 | |
115 | + | } | |
116 | + | let key = to_key(n) | |
117 | + | $Tuple2([IntegerEntry("count", (n + 1)), StringEntry((key + "_RL"), name), IntegerEntry((key + "_RS"), scale), IntegerEntry((key + "_R00"), notes[0]), IntegerEntry((key + "_R01"), notes[1]), IntegerEntry((key + "_R02"), notes[2]), IntegerEntry((key + "_R03"), notes[3]), IntegerEntry((key + "_R04"), notes[4]), IntegerEntry((key + "_R05"), notes[5]), IntegerEntry((key + "_R06"), notes[6]), IntegerEntry((key + "_R07"), notes[7]), IntegerEntry((key + "_R08"), notes[8]), IntegerEntry((key + "_R09"), notes[9]), IntegerEntry((key + "_R10"), notes[10]), IntegerEntry((key + "_R11"), notes[11]), IntegerEntry((key + "_R12"), notes[12]), IntegerEntry((key + "_R13"), notes[13]), IntegerEntry((key + "_R14"), notes[14]), IntegerEntry((key + "_R15"), notes[15])], unit) | |
118 | + | } | |
119 | + | ||
120 | + | ||
121 | + | ||
122 | + | @Callable(i) | |
123 | + | func mint_song (name,parent_0,parent_1,bpm,bar_size,beat_size,tonality,chords,melody,kick_instrument,snare_instrument,hihat_instrument,bass_instrument,back_instrument,lead_instrument,kick_rhythms,snare_rhythms,hihat_rhythms,bass_rhythms,back_rhythms,lead_rhythms) = if ((this != i.caller)) | |
124 | + | then throw("Caller is not dApp owner") | |
125 | + | else if ((size(chords) != 8)) | |
126 | + | then throw("Wrong chords size") | |
127 | + | else if ((size(kick_rhythms) != 8)) | |
128 | + | then throw("Wrong kick rhythms size") | |
129 | + | else if ((size(snare_rhythms) != 8)) | |
130 | + | then throw("Wrong snare rhythms size") | |
131 | + | else if ((size(hihat_rhythms) != 8)) | |
132 | + | then throw("Wrong hihat rhythms size") | |
133 | + | else if ((size(bass_rhythms) != 8)) | |
134 | + | then throw("Wrong bass rhythms size") | |
135 | + | else if ((size(back_rhythms) != 8)) | |
136 | + | then throw("Wrong back rhythms size") | |
137 | + | else if ((size(lead_rhythms) != 8)) | |
138 | + | then throw("Wrong lead rhythms size") | |
139 | + | else { | |
140 | + | let n = match getInteger("count") { | |
141 | + | case j: Int => | |
142 | + | j | |
143 | + | case _ => | |
144 | + | 0 | |
145 | + | } | |
146 | + | let issue = Issue(take(name, 16), "Clef song.", 1, 0, false) | |
147 | + | let id = toBase58String(calculateAssetId(issue)) | |
148 | + | let key = to_key(n) | |
149 | + | $Tuple2([issue, IntegerEntry("count", (n + 1)), StringEntry(id, key), StringEntry(key, id), IntegerEntry((key + "_G"), 1), StringEntry((key + "_SL"), name), IntegerEntry((key + "_SN"), 0), StringEntry((key + "_SP0"), parent_0), StringEntry((key + "_SP1"), parent_1), IntegerEntry((key + "_SB0"), bpm), IntegerEntry((key + "_SB1"), bar_size), IntegerEntry((key + "_SB2"), beat_size), IntegerEntry((key + "_ST"), tonality), StringEntry((key + "_SC0"), chords[0]), StringEntry((key + "_SC1"), chords[1]), StringEntry((key + "_SC2"), chords[2]), StringEntry((key + "_SC3"), chords[3]), StringEntry((key + "_SC4"), chords[4]), StringEntry((key + "_SC5"), chords[5]), StringEntry((key + "_SC6"), chords[6]), StringEntry((key + "_SC7"), chords[7]), StringEntry((key + "_SM"), melody), StringEntry((key + "_SI0"), kick_instrument), StringEntry((key + "_SI1"), snare_instrument), StringEntry((key + "_SI2"), hihat_instrument), StringEntry((key + "_SI3"), bass_instrument), StringEntry((key + "_SI4"), back_instrument), StringEntry((key + "_SI5"), lead_instrument), StringEntry((key + "_SI00"), kick_rhythms[0]), StringEntry((key + "_SI01"), kick_rhythms[1]), StringEntry((key + "_SI02"), kick_rhythms[2]), StringEntry((key + "_SI03"), kick_rhythms[3]), StringEntry((key + "_SI04"), kick_rhythms[4]), StringEntry((key + "_SI05"), kick_rhythms[5]), StringEntry((key + "_SI06"), kick_rhythms[6]), StringEntry((key + "_SI07"), kick_rhythms[7]), StringEntry((key + "_SI10"), snare_rhythms[0]), StringEntry((key + "_SI11"), snare_rhythms[1]), StringEntry((key + "_SI12"), snare_rhythms[2]), StringEntry((key + "_SI13"), snare_rhythms[3]), StringEntry((key + "_SI14"), snare_rhythms[4]), StringEntry((key + "_SI15"), snare_rhythms[5]), StringEntry((key + "_SI16"), snare_rhythms[6]), StringEntry((key + "_SI17"), snare_rhythms[7]), StringEntry((key + "_SI20"), hihat_rhythms[0]), StringEntry((key + "_SI21"), hihat_rhythms[1]), StringEntry((key + "_SI22"), hihat_rhythms[2]), StringEntry((key + "_SI23"), hihat_rhythms[3]), StringEntry((key + "_SI24"), hihat_rhythms[4]), StringEntry((key + "_SI25"), hihat_rhythms[5]), StringEntry((key + "_SI26"), hihat_rhythms[6]), StringEntry((key + "_SI27"), hihat_rhythms[7]), StringEntry((key + "_SI30"), bass_rhythms[0]), StringEntry((key + "_SI31"), bass_rhythms[1]), StringEntry((key + "_SI32"), bass_rhythms[2]), StringEntry((key + "_SI33"), bass_rhythms[3]), StringEntry((key + "_SI34"), bass_rhythms[4]), StringEntry((key + "_SI35"), bass_rhythms[5]), StringEntry((key + "_SI36"), bass_rhythms[6]), StringEntry((key + "_SI37"), bass_rhythms[7]), StringEntry((key + "_SI40"), back_rhythms[0]), StringEntry((key + "_SI41"), back_rhythms[1]), StringEntry((key + "_SI42"), back_rhythms[2]), StringEntry((key + "_SI43"), back_rhythms[3]), StringEntry((key + "_SI44"), back_rhythms[4]), StringEntry((key + "_SI45"), back_rhythms[5]), StringEntry((key + "_SI46"), back_rhythms[6]), StringEntry((key + "_SI47"), back_rhythms[7]), StringEntry((key + "_SI50"), lead_rhythms[0]), StringEntry((key + "_SI51"), lead_rhythms[1]), StringEntry((key + "_SI52"), lead_rhythms[2]), StringEntry((key + "_SI53"), lead_rhythms[3]), StringEntry((key + "_SI54"), lead_rhythms[4]), StringEntry((key + "_SI55"), lead_rhythms[5]), StringEntry((key + "_SI56"), lead_rhythms[6]), StringEntry((key + "_SI57"), lead_rhythms[7])], unit) | |
150 | + | } | |
151 | + | ||
152 | + | ||
153 | + | ||
154 | + | @Callable(i) | |
155 | + | func mint_hybrid (song_0,song_1) = { | |
156 | + | let caller_addr = Address(i.caller.bytes) | |
157 | + | let song_0_id = fromBase58String(getStringValue(song_0)) | |
158 | + | let song_1_id = fromBase58String(getStringValue(song_1)) | |
159 | + | if (!(check_hybrid_payment(i))) | |
160 | + | then throw("Wrong payment") | |
161 | + | else if ((song_0_id == song_1_id)) | |
162 | + | then throw("Songs should be different") | |
163 | + | else if ((1 > assetBalance(caller_addr, song_0_id))) | |
164 | + | then throw("Caller do not own first song") | |
165 | + | else if ((1 > assetBalance(caller_addr, song_1_id))) | |
166 | + | then throw("Caller do not own second song") | |
167 | + | else $Tuple2(make_hybrid_tx(i, song_0, song_1), unit) | |
168 | + | } | |
169 | + | ||
170 | + | ||
171 | + | ||
172 | + | @Callable(i) | |
173 | + | func mint_hybrid_and_burn () = if (if (if ((size(i.payments) != 2)) | |
174 | + | then true | |
175 | + | else (i.payments[0].amount != 1)) | |
176 | + | then true | |
177 | + | else (i.payments[1].amount != 1)) | |
178 | + | then throw("Wrong payment") | |
179 | + | else { | |
180 | + | let song_0_id = match i.payments[0].assetId { | |
181 | + | case b: ByteVector => | |
182 | + | b | |
183 | + | case _ => | |
184 | + | throw("Wrong payment") | |
185 | + | } | |
186 | + | let song_1_id = match i.payments[1].assetId { | |
187 | + | case b: ByteVector => | |
188 | + | b | |
189 | + | case _ => | |
190 | + | throw("Wrong payment") | |
191 | + | } | |
192 | + | if ((song_0_id == song_1_id)) | |
193 | + | then throw("Songs should be different") | |
194 | + | else { | |
195 | + | let song_0 = getStringValue(toBase58String(song_0_id)) | |
196 | + | let song_1 = getStringValue(toBase58String(song_1_id)) | |
197 | + | $Tuple2((make_hybrid_tx(i, song_0, song_1) ++ [Burn(song_0_id, 1), Burn(song_1_id, 1)]), unit) | |
198 | + | } | |
199 | + | } | |
200 | + | ||
201 | + |
github/deemru/w8io/026f985 35.56 ms ◑