Exemple #1
0
 /// <summary>
 /// Ничья
 /// </summary>
 /// <param name="user"></param>
 /// <param name="enemy"></param>
 public void Draw(UserInGameProcess user, UserInGameProcess enemy)
 {
     user.Gold  += GameManager.AllBet / 2;
     enemy.Gold += GameManager.AllBet / 2;
     user.WinCount++;
     enemy.WinCount++;
 }
Exemple #2
0
        public void AllInBet(UserInGameProcess userAllInBet, UserInGameProcess enemy)
        {
            GameManager.AllBet    += userAllInBet.Gold;
            GameManager.LastBet    = userAllInBet.Gold;
            userAllInBet.Gold      = 0;
            userAllInBet.stateGame = StateGame.allIn;

            userAllInBet.Step = false;
            enemy.Step        = true;
        }
Exemple #3
0
        public void PassBet(UserInGameProcess userPassBet, UserInGameProcess enemy)
        {
            enemy.Gold         += GameManager.AllBet;
            GameManager.LastBet = GameManager.AllBet = 0;
            enemy.WinCount++;

            userPassBet.Step      = enemy.Step = true;
            userPassBet.stateGame = enemy.stateGame = StateGame.none;
            userPassBet.RollRaund = enemy.RollRaund = 0;
        }
Exemple #4
0
        public void UpBet(int gold, UserInGameProcess userUpBet, UserInGameProcess enemy)
        {
            userUpBet.Step      = false;
            enemy.Step          = true;
            userUpBet.stateGame = StateGame.upBet;
            enemy.stateGame     = StateGame.none;                                                   //по идее в любом случае скидывается, но это не точно

            userUpBet.Gold -= gold;                                                                 //списываем бабло

            GameManager.LastBet = GameManager.LastBet < gold ? (gold - GameManager.LastBet) : gold; //если последняя ставка была меньше чем новая ставка, тогда присваевается разница, если нет, то вся сумма
            GameManager.AllBet += gold;
        }
Exemple #5
0
        public void AcceptBet(int gold, UserInGameProcess userAcceptBet, UserInGameProcess enemy)
        {
            userAcceptBet.Gold -= gold;
            if (userAcceptBet.Gold < 0)
            {
                userAcceptBet.Gold = 0;                        //если вы пошли в олл-ин то сумма должна быть максимум ноль
            }
            GameManager.AllBet += gold;
            GameManager.LastBet = 0;

            GameManager.BargainEnd = true;//торг окончен

            userAcceptBet.Step      = enemy.Step = true;
            userAcceptBet.stateGame = enemy.stateGame = StateGame.none;
        }
Exemple #6
0
        public void Winner(UserInGameProcess user, UserInGameProcess enemy, ApplicationDBContext context)
        {
            User userWinnner = context.Users.Include(i => i.UserClient).Where(w => w.Name == user.Name).FirstOrDefault();

            userWinnner.UserClient.Gold = user.Gold;
            if (user.WinCount == 2)
            {
                userWinnner.UserClient.WinCount++;
                //тут изменить систему рангов, пока что просто --
                userWinnner.UserClient.Stars++;
                Rank(userWinnner.UserClient);
            }
            else
            {
                userWinnner.UserClient.Stars--;
                Rank(userWinnner.UserClient);
            }
            //ememy
            User userLose = context.Users.Include(i => i.UserClient).Where(w => w.Name == enemy.Name).FirstOrDefault();

            userLose.UserClient.Gold = enemy.Gold;
            //в теории может быть ничья в финале, так что чекаем и этот момент
            if (enemy.WinCount == 2)
            {
                userLose.UserClient.WinCount++;
                userLose.UserClient.Stars++;
                Rank(userLose.UserClient);
            }
            else
            {
                userLose.UserClient.Stars--;
                Rank(userLose.UserClient);
            }
            //ранг не меняем
            //сохроняем в базе
            context.SaveChanges();
        }
Exemple #7
0
 public void TakeBet(UserInGameProcess winner)
 {
     winner.Gold += GameManager.AllBet;
     winner.WinCount++;
 }