tx · BifEZ3bvvsKdJyUcLBNy8jtysSM6qePmySBxvaPfbvrf

3N3y7DVmszkgFYMGoDtNnPjrNmLTf1rRUKJ:  -0.01990000 Waves

2020.10.20 20:30 [1229184] smart account 3N3y7DVmszkgFYMGoDtNnPjrNmLTf1rRUKJ > SELF 0.00000000 Waves

{ "type": 13, "id": "BifEZ3bvvsKdJyUcLBNy8jtysSM6qePmySBxvaPfbvrf", "fee": 1990000, "feeAssetId": null, "timestamp": 1603215042574, "version": 2, "chainId": 84, "sender": "3N3y7DVmszkgFYMGoDtNnPjrNmLTf1rRUKJ", "senderPublicKey": "EPmZCX2H4AC1hUmAFRUfWrhzXrNjf3wPaybY6jHZQphj", "proofs": [ "azsvea7kVnx4czzHF9DKYnKbLRas7Mwxie6HMRhuAWEEmffYBLEcyuaxGzTvG1bSoPNpp73y4eVohqibT9tKkXq" ], "script": "base64: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", "height": 1229184, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 6EwzWpdk9fdbRgK4FXi7qoKqQ2vqmiGjqrnQnWvBL1vD Next: 2mr2gfqBVLATsU2YkBc1vvcqPRBPZdMWqgg3Cn2eD7kE Diff:
OldNewDifferences
3232 case _ =>
3333 0
3434 }
35- throw(((((((("Winner is.....: " + Winner) + "
35+ if (((UserGovernTokenBalance * UserStakedTokenBalance) == 0))
36+ then throw("Your balance of StakedToken or GovernToken is 0")
37+ else throw(((((((("Winner is.....: " + Winner) + "
3638 Total GovernToken: ") + toString(MaxGovernTokenDeposit)) + "
3739 Your Balance of GovernToken is: ") + toString(UserGovernTokenBalance)) + "
3840 Your Balance of StakedToken is: ") + toString(UserStakedTokenBalance)))
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44
55
66 @Callable(i)
77 func ReadMaxGovernDeposit () = {
88 let GovernTokenKey = "GovernTokenMaxDeposit"
99 let MaxGovernTokenDepositerKey = "MaxGovernTokenDepositerKey"
1010 let StakedToken = base58'5hHK64aujiyn7cNrTBwhe5yJQuxs119KTPbE9nFjLoUN'
1111 let GovernToken = base58'DeyMK8USWs9ijzAXNy2azA3soajfrXjUNiJBdSJJsvMJ'
1212 let UserStakedTokenKey = ((toBase58String(i.caller.bytes) + "_") + toBase58String(StakedToken))
1313 let UserGovernTokenKey = ((toBase58String(i.caller.bytes) + "_") + toBase58String(GovernToken))
1414 let Winner = getStringValue(this, MaxGovernTokenDepositerKey)
1515 let MaxGovernTokenDeposit = match getInteger(this, GovernTokenKey) {
1616 case a: Int =>
1717 a
1818 case _ =>
1919 0
2020 }
2121 let ReadUserGovernTokenKey = getStringValue(this, UserGovernTokenKey)
2222 let UserGovernTokenBalance = match getInteger(this, ReadUserGovernTokenKey) {
2323 case a: Int =>
2424 a
2525 case _ =>
2626 0
2727 }
2828 let ReadUserStakedTokenKey = getStringValue(this, UserStakedTokenKey)
2929 let UserStakedTokenBalance = match getInteger(this, ReadUserStakedTokenKey) {
3030 case a: Int =>
3131 a
3232 case _ =>
3333 0
3434 }
35- throw(((((((("Winner is.....: " + Winner) + "
35+ if (((UserGovernTokenBalance * UserStakedTokenBalance) == 0))
36+ then throw("Your balance of StakedToken or GovernToken is 0")
37+ else throw(((((((("Winner is.....: " + Winner) + "
3638 Total GovernToken: ") + toString(MaxGovernTokenDeposit)) + "
3739 Your Balance of GovernToken is: ") + toString(UserGovernTokenBalance)) + "
3840 Your Balance of StakedToken is: ") + toString(UserStakedTokenBalance)))
3941 }
4042
4143
4244
4345 @Callable(i)
4446 func payYield () = {
4547 let GovernToken = base58'DeyMK8USWs9ijzAXNy2azA3soajfrXjUNiJBdSJJsvMJ'
4648 let currentKey = toBase58String(i.caller.bytes)
4749 let currentAmount = match getInteger(this, currentKey) {
4850 case a: Int =>
4951 a
5052 case _ =>
5153 0
5254 }
5355 if ((currentAmount > 0))
5456 then {
5557 let GovernTokenAmount = assetBalance(this, GovernToken)
5658 if ((1 > GovernTokenAmount))
5759 then throw("No enough GovernToken In Contract")
5860 else ScriptResult(WriteSet([DataEntry(currentKey, 10)]), TransferSet([ScriptTransfer(i.caller, 1, GovernToken)]))
5961 }
6062 else throw("You need to deposit Collateral Token to receive Govern Token")
6163 }
6264
6365
6466
6567 @Callable(i)
6668 func Stake () = {
6769 let StakedToken = base58'5hHK64aujiyn7cNrTBwhe5yJQuxs119KTPbE9nFjLoUN'
6870 let GovernToken = base58'DeyMK8USWs9ijzAXNy2azA3soajfrXjUNiJBdSJJsvMJ'
6971 let pmt = extract(i.payment)
7072 if (if (isDefined(pmt.assetId))
7173 then (extract(pmt.assetId) == StakedToken)
7274 else false)
7375 then {
7476 let UserStakedTokenKey = ((toBase58String(i.caller.bytes) + "_") + toBase58String(StakedToken))
7577 let UserGovernTokenKey = ((toBase58String(i.caller.bytes) + "_") + toBase58String(GovernToken))
7678 let currentAmount = match getInteger(this, UserStakedTokenKey) {
7779 case a: Int =>
7880 a
7981 case _ =>
8082 0
8183 }
8284 let newAmount = (currentAmount + pmt.amount)
8385 let GovernTokenSmartContractBalance = assetBalance(this, GovernToken)
8486 if ((1 > GovernTokenSmartContractBalance))
8587 then throw("No enough GovernToken In Contract")
8688 else ScriptResult(WriteSet([DataEntry(UserGovernTokenKey, 10), DataEntry(UserStakedTokenKey, newAmount)]), TransferSet([ScriptTransfer(i.caller, 10, GovernToken)]))
8789 }
8890 else throw("Can deposit only StakeToken")
8991 }
9092
9193
9294
9395 @Callable(i)
9496 func DepositGovernToken () = {
9597 let GovernToken = base58'DeyMK8USWs9ijzAXNy2azA3soajfrXjUNiJBdSJJsvMJ'
9698 let GovernTokenMaxDeposit = toBase58String(GovernToken)
9799 let pmt = extract(i.payment)
98100 if (if (isDefined(pmt.assetId))
99101 then (extract(pmt.assetId) == GovernToken)
100102 else false)
101103 then {
102104 let currentKey = ((toBase58String(i.caller.bytes) + "_") + toBase58String(GovernToken))
103105 let currentAmount = match getInteger(this, currentKey) {
104106 case a: Int =>
105107 a
106108 case _ =>
107109 0
108110 }
109111 let CurrrentGovernTokenDeposit = (currentAmount + pmt.amount)
110112 let GovernTokenKey = "GovernTokenMaxDeposit"
111113 let MaxGovernTokenDepositerKey = "MaxGovernTokenDepositerKey"
112114 let MaxGovernTokenDeposit = match getInteger(this, GovernTokenKey) {
113115 case a: Int =>
114116 a
115117 case _ =>
116118 0
117119 }
118120 if (if ((CurrrentGovernTokenDeposit > MaxGovernTokenDeposit))
119121 then true
120122 else (MaxGovernTokenDeposit == 0))
121123 then WriteSet([DataEntry(currentKey, CurrrentGovernTokenDeposit), DataEntry(GovernTokenKey, CurrrentGovernTokenDeposit), DataEntry(MaxGovernTokenDepositerKey, currentKey)])
122124 else WriteSet([DataEntry(currentKey, CurrrentGovernTokenDeposit)])
123125 }
124126 else throw("Can deposit only Govern Token")
125127 }
126128
127129
128130
129131 @Callable(i)
130132 func WithdrawStakedFunds (amount) = {
131133 let CollateralToken = base58'5hHK64aujiyn7cNrTBwhe5yJQuxs119KTPbE9nFjLoUN'
132134 let GovernToken = base58'DeyMK8USWs9ijzAXNy2azA3soajfrXjUNiJBdSJJsvMJ'
133135 let currentKey = toBase58String(i.caller.bytes)
134136 let currentAmount = match getInteger(this, currentKey) {
135137 case a: Int =>
136138 a
137139 case _ =>
138140 0
139141 }
140142 let newAmount = (currentAmount - amount)
141143 if ((0 > amount))
142144 then throw("Can't withdraw negative amount")
143145 else if ((0 > newAmount))
144146 then throw("User cannot withdraw more than deposited funds")
145147 else {
146148 let GovernTokenAmount = assetBalance(this, GovernToken)
147149 if ((1 > GovernTokenAmount))
148150 then throw("No enough GovernToken In Contract")
149151 else ScriptResult(WriteSet([DataEntry(currentKey, 1), DataEntry(currentKey, newAmount)]), TransferSet([ScriptTransfer(i.caller, 1, GovernToken), ScriptTransfer(i.caller, amount, CollateralToken)]))
150152 }
151153 }
152154
153155
154156
155157 @Callable(i)
156158 func ClaimPrize () = {
157159 let StakedToken = base58'5hHK64aujiyn7cNrTBwhe5yJQuxs119KTPbE9nFjLoUN'
158160 let GovernToken = base58'DeyMK8USWs9ijzAXNy2azA3soajfrXjUNiJBdSJJsvMJ'
159161 let FundBoxAddress58 = base58'3NCMrhPAVqXgtLdpi2BhFWpJkMBUAFrozbD'
160162 let UserStakedTokenKey = ((toBase58String(i.caller.bytes) + "_") + toBase58String(StakedToken))
161163 let UserGovernTokenKey = ((toBase58String(i.caller.bytes) + "_") + toBase58String(GovernToken))
162164 let FundBoxStakedToken = ((toBase58String(FundBoxAddress58) + "_") + toBase58String(StakedToken))
163165 let UserGovernTokenAmount = match getInteger(this, UserGovernTokenKey) {
164166 case a: Int =>
165167 a
166168 case _ =>
167169 0
168170 }
169171 let UserStakedTokenAmount = match getInteger(this, UserStakedTokenKey) {
170172 case a: Int =>
171173 a
172174 case _ =>
173175 0
174176 }
175177 let PrizeAmount = match getInteger(this, FundBoxStakedToken) {
176178 case a: Int =>
177179 a
178180 case _ =>
179181 0
180182 }
181183 let MaxGovernTokenDepositerKey = "MaxGovernTokenDepositerKey"
182184 let PrizeWinner = getStringValue(this, MaxGovernTokenDepositerKey)
183185 if ((PrizeAmount == 0))
184186 then throw("No prize to Claim")
185187 else if ((UserGovernTokenKey != PrizeWinner))
186188 then throw("You are not the winner hence cannot claim the reward ")
187189 else if ((1 > UserStakedTokenAmount))
188190 then throw(("You have to Stake StakedToken to claim reward
189191 Your Balance of Staked Tokens is: " + toString(UserStakedTokenAmount)))
190192 else if ((UserGovernTokenAmount > 100))
191193 then ScriptResult(WriteSet([DataEntry(PrizeWinner, PrizeAmount), DataEntry(FundBoxStakedToken, 0), DataEntry(UserGovernTokenKey, 0)]), TransferSet([ScriptTransfer(i.caller, PrizeAmount, StakedToken), ScriptTransfer(i.caller, 100, GovernToken)]))
192194 else throw(("You have to deposit 100 GovernToken to claim Reward
193195 Your Balance is: " + toString(UserGovernTokenAmount)))
194196 }
195197
196198

github/deemru/w8io/873ac7e 
34.29 ms