Ejemplo n.º 1
0
        protected override void MyWorker_DoWork(object sender, DoWorkEventArgs e)
        {
            MultipleBetData bet = (MultipleBetData)e.Argument;

            if (bet == null)
            {
                return;
            }

            int myBetCount = 0;

            while (bet.MaxBet > myBetCount)
            {
                var rezult = multyBetting.StartBetting(bet);
                ProcessResult(rezult, bet);

                OnSendResult?.Invoke(this, rezult);

                if (myWorker.CancellationPending)
                {
                    e.Cancel = true;

                    return;
                }
                myBetCount++;
            }
            e.Result = bet;
        }
Ejemplo n.º 2
0
 public BackMultyController(IBetting <MultipleBetData> multyBetting, PlayerSettingsModel settings) : base()
 {
     this.multyBetting = multyBetting;
     this.multyBetting.OnFinishMoney += MultyBetting_OnFinishMoney;
     this.settings = settings;
     betData       = new MultipleBetData();
     betData.SetData(settings);
 }
Ejemplo n.º 3
0
        private void ProcessResult(BetResultData data, MultipleBetData bet)
        {
            if (data.Balance > bet.ProfitEdge)
            {
                decimal minProfitToWitdraw = 0;
                switch (bet.Currency)
                {
                case Currencies.BTC:
                {
                    minProfitToWitdraw = Math.Max(data.Balance - bet.ProfitEdge, 0.0005m);
                }
                break;

                case Currencies.Doge:
                {
                    minProfitToWitdraw = Math.Max(data.Balance - bet.ProfitEdge, 2m);
                }
                break;

                case Currencies.LTC:
                {
                    minProfitToWitdraw = Math.Max(data.Balance - bet.ProfitEdge, 0.002m);
                }
                break;

                case Currencies.ETH:
                {
                    minProfitToWitdraw = Math.Max(data.Balance - bet.ProfitEdge, 0.002m);
                }
                break;
                }

                DiceWebAPI.Withdraw(bet.Session, minProfitToWitdraw, bet.AccountToSendProfit, bet.Currency);
            }
            settings.UserBalance += data.Profit;
            bet.BaseBet           = bet.SetBaseBet(settings);
        }
Ejemplo n.º 4
0
 private void MultyBetting_OnFinishMoney(object sender, MultipleBetData e)
 {
     OnFinishMoney?.Invoke(this, e.Session.Username);
 }