tx · 7didCQbCL9i9yKggAwfEV1qWRJZWYahunAZCBnr7b6gm

3N1A95vbYuuE2ZFFUu6S1UubcE3eSpJNDE7:  -0.01000000 Waves

2022.11.07 10:36 [2306430] smart account 3N1A95vbYuuE2ZFFUu6S1UubcE3eSpJNDE7 > SELF 0.00000000 Waves

{ "type": 13, "id": "7didCQbCL9i9yKggAwfEV1qWRJZWYahunAZCBnr7b6gm", "fee": 1000000, "feeAssetId": null, "timestamp": 1667806590723, "version": 2, "chainId": 84, "sender": "3N1A95vbYuuE2ZFFUu6S1UubcE3eSpJNDE7", "senderPublicKey": "DTmTTp6Rb9XUrniBAnWwdNc39UfdmzmtFCBgey4hsnE", "proofs": [ "a51ikmKkjNyc7QpsMWRG3HRyqUPFGCytTPLZakcdNRgyK7Be47MocPnLmiVewfEpBv44yBY547XssnqrQL8dEvA" ], "script": "base64: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", "height": 2306430, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: EseyxLJCcSp9nLbkQbFLgWH4xqD8FBuBT83y5XH1rJh Next: Br4fhLmwPcsF1VLZ1W7Vf6oJpW5dn6efxJLkXvYtwPm Diff:
OldNewDifferences
33 {-# CONTENT_TYPE DAPP #-}
44 let PAYMENT_ASSET = base58'CgidgEMbCKXXErgJXVyZCFRaK8SBNA73Jg8mNXALtVKh'
55
6-let REWARD_ASSET = base58'43W4FcqA1rEpSmUGHoGiXvpSLfhadws9LS5j3SJsKxxS'
6+let REWARD_ASSET = base58'3Eh6z6z6ouFpWxGKrPaPnZwmDnDjgYHV6tqCmZf2G7tk'
77
88 let admPub = base58'AEm8wmKt8D73TvQifRvCfnZcCWy66TgmGtF2mX1xxKuq'
99
1818 let yMAX = 601
1919
2020 let REWARD_AMOUNT = 1000000
21+
22+let REISSUE_AMOUNT = 1500000
2123
2224 let START_HEIGHT = 2297717
2325
100102 then (maxPixel >= veri_count)
101103 else false)
102104 then if (isPaymentOk(i))
103- then [StringEntry(wallet, veri), IntegerEntry(("stats_" + toString(session)), (veri_count + 1))]
105+ then [StringEntry(wallet, veri), IntegerEntry(("stats_" + toString(session)), (veri_count + 1)), Reissue(REWARD_ASSET, REISSUE_AMOUNT, true), ScriptTransfer(i.caller, REWARD_AMOUNT, REWARD_ASSET)]
104106 else throw("Wrong payment amount or asset")
105107 else throw("out of context")
106108 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let PAYMENT_ASSET = base58'CgidgEMbCKXXErgJXVyZCFRaK8SBNA73Jg8mNXALtVKh'
55
6-let REWARD_ASSET = base58'43W4FcqA1rEpSmUGHoGiXvpSLfhadws9LS5j3SJsKxxS'
6+let REWARD_ASSET = base58'3Eh6z6z6ouFpWxGKrPaPnZwmDnDjgYHV6tqCmZf2G7tk'
77
88 let admPub = base58'AEm8wmKt8D73TvQifRvCfnZcCWy66TgmGtF2mX1xxKuq'
99
1010 let pixels = REWARD_ASSET
1111
1212 let xMIN = 0
1313
1414 let xMAX = 1201
1515
1616 let yMIN = 0
1717
1818 let yMAX = 601
1919
2020 let REWARD_AMOUNT = 1000000
21+
22+let REISSUE_AMOUNT = 1500000
2123
2224 let START_HEIGHT = 2297717
2325
2426 let END_HEIGHT = (START_HEIGHT + (1440 * 7))
2527
2628 let paymentFee = 100000
2729
2830 let activeSessionKey = "active_session"
2931
3032 let maxPixel = 22500
3133
3234 let colors = ["7076E9", "5FD8F1", "D30831", "183937", "FFD345", "B04249", "FFB087", "360A90", "000000", "969696", "FF0200", "800080", "020080", "183937", "09FEFF", "7076E9", "C0C0C0", "C3103B", "9F7E69", "FFEEE2", "983C95"]
3335
3436 func isPaymentOk (i) = {
3537 let acceptableAssetId = PAYMENT_ASSET
3638 if ((size(i.payments) == 0))
3739 then throw("Payment not attached")
3840 else {
3941 let p = i.payments[0]
4042 match p.assetId {
4143 case assetId: ByteVector =>
4244 if ((assetId == acceptableAssetId))
4345 then (p.amount == paymentFee)
4446 else false
4547 case _ =>
4648 throw("Wrong payment asset")
4749 }
4850 }
4951 }
5052
5153
5254 @Callable(i)
5355 func activeSession (session) = if ((i.callerPublicKey == admPub))
5456 then [IntegerEntry(activeSessionKey, session)]
5557 else throw("you are not allowed")
5658
5759
5860
5961 @Callable(i)
6062 func settings (session,startHeight,duration) = if ((i.callerPublicKey == admPub))
6163 then {
6264 let endHeight = (startHeight + (1440 * duration))
6365 [IntegerEntry((("settings_" + toString(session)) + "_startHeight"), startHeight), IntegerEntry((("settings_" + toString(session)) + "_endHeight"), endHeight)]
6466 }
6567 else throw("you are not allowed")
6668
6769
6870
6971 @Callable(i)
7072 func coordinates (veri,xy) = {
7173 let session = valueOrElse(getInteger(this, activeSessionKey), 0)
7274 let startHeight = valueOrElse(getInteger(this, (("settings_" + toString(session)) + "_startHeight")), START_HEIGHT)
7375 let endHeight = valueOrElse(getInteger(this, (("settings_" + toString(session)) + "_endHeight")), END_HEIGHT)
7476 if (if ((height > startHeight))
7577 then (endHeight > height)
7678 else false)
7779 then {
7880 let color = containsElement(colors, veri)
7981 if (color)
8082 then {
8183 let currentKey = toBase58String(i.caller.bytes)
8284 let splitter = split(xy, "_")
8385 let x = valueOrElse(parseInt(splitter[0]), 0)
8486 let y = valueOrElse(parseInt(splitter[1]), 0)
8587 if (if (((x % 8) != 0))
8688 then ((y % 8) != 0)
8789 else false)
8890 then throw("not cool.")
8991 else {
9092 let xy_new = ((toString(x) + "_") + toString(y))
9193 let veri_count = valueOrElse(getInteger(this, ("stats_" + toString(session))), 0)
9294 let wallet = (((((currentKey + "_") + xy_new) + "_") + toString(session)) + "_c")
9395 if (if (if (if (if ((x >= xMIN))
9496 then (xMAX > x)
9597 else false)
9698 then (y >= yMIN)
9799 else false)
98100 then (yMAX > y)
99101 else false)
100102 then (maxPixel >= veri_count)
101103 else false)
102104 then if (isPaymentOk(i))
103- then [StringEntry(wallet, veri), IntegerEntry(("stats_" + toString(session)), (veri_count + 1))]
105+ then [StringEntry(wallet, veri), IntegerEntry(("stats_" + toString(session)), (veri_count + 1)), Reissue(REWARD_ASSET, REISSUE_AMOUNT, true), ScriptTransfer(i.caller, REWARD_AMOUNT, REWARD_ASSET)]
104106 else throw("Wrong payment amount or asset")
105107 else throw("out of context")
106108 }
107109 }
108110 else throw("wrong color")
109111 }
110112 else throw("game is not active right now")
111113 }
112114
113115
114116
115117 @Callable(i)
116118 func delete (arg) = [DeleteEntry(arg)]
117119
118120

github/deemru/w8io/026f985 
54.56 ms