Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function bet(uint stake, uint spinUnder)external notOwner returns (uint spinUnderInput, uint stakeInput, uint prize, uint payout, uint previousBalance){
- require(stake >= minBet && maxBet >= stake , 'stake is outside allowed limits');
- require(spinUnder >= MIN_ROLL_UNDER && spinUnder <= MAX_ROLL_UNDER, 'spinUnder must be between or equal to 11 and 91');
- require(balances[msg.sender] >= stake, 'insufficient balance to cover stake');
- (payout, prize) = getPrizeAndPayout(stake, spinUnder);
- require(balances[owner] >= (prize.sub(stake)), 'insufficient contract balance to cover the prize');
- previousBalance = balances[msg.sender];
- subtractAmountFromUser(stake);
- uint QUERY_EXECUTION_DELAY = 0;
- uint GAS_FOR_CALLBACK = 200000;
- bytes32 queryId = provable_newRandomDSQuery(
- QUERY_EXECUTION_DELAY,
- NUM_RANDOM_BYTES_REQUESTED,
- GAS_FOR_CALLBACK
- );
- ongoingBets[queryId] = Bet(spinUnder, stake, prize, payout, msg.sender);
- emit logBetStarted(msg.sender, spinUnder, stake, prize, payout, previousBalance);
- return (spinUnder, stake, prize, payout, previousBalance);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement