コード例 #1
0
ファイル: ActionUpdater.cs プロジェクト: IlyaYugov/Poker
 private void UpdateRoundPlayers(Round round, PlayerGameSnapshot playerGameSnapshot, PlayerAction action)
 {
     if (action.ActionType == ActionType.Fold)
     {
         round.FinishedPlayers = round.FinishedPlayers.Where(p => p != playerGameSnapshot).ToList();
     }
 }
コード例 #2
0
ファイル: BlindMoneyUpdater.cs プロジェクト: IlyaYugov/Poker
        private void UpdateGameBank(Game game, PlayerGameSnapshot playerGameSnapshot)
        {
            if (playerGameSnapshot.PositionType == PositionType.SmallBlind)
            {
                game.TotalBank += game.SmallBlind;
            }

            if (playerGameSnapshot.PositionType == PositionType.BigBlind)
            {
                game.TotalBank += game.BigBlind;
            }
        }
コード例 #3
0
ファイル: BlindMoneyUpdater.cs プロジェクト: IlyaYugov/Poker
        private void UpdatePlayerMoney(Game game, PlayerGameSnapshot playerGameSnapshot)
        {
            if (playerGameSnapshot.PositionType == PositionType.SmallBlind)
            {
                playerGameSnapshot.GaveMoneyToBank += game.SmallBlind;
            }

            if (playerGameSnapshot.PositionType == PositionType.BigBlind)
            {
                playerGameSnapshot.GaveMoneyToBank += game.BigBlind;
            }
        }
コード例 #4
0
ファイル: ActionUpdater.cs プロジェクト: IlyaYugov/Poker
 private void UpdatePlayerMoney(PlayerGameSnapshot playerGameSnapshot, PlayerAction action)
 {
     if (playerGameSnapshot == null)
     {
         return;
     }
     if (action.ActionType == ActionType.Collected)
     {
         playerGameSnapshot.CollectedMoney += action.Money;
     }
     else
     {
         playerGameSnapshot.GaveMoneyToBank += action.Money;
     }
 }
コード例 #5
0
ファイル: PlayerBaseParser.cs プロジェクト: IlyaYugov/Poker
        public PlayerGameSnapshot Parse(string line)
        {
            var startNickNameIndex  = line.IndexOf(':') + 2;
            var finishNickNameIndex = line.IndexOf('(') - 2;

            var player = new PlayerGameSnapshot
            {
                Player = new Player
                {
                    NickName = line.Substring(startNickNameIndex, finishNickNameIndex - startNickNameIndex + 1)
                },
                MoneyOnStart = _moneyBaseParser.Parse(line, '(')
            };

            return(player);
        }
コード例 #6
0
ファイル: PreflopStrategy.cs プロジェクト: IlyaYugov/Poker
 public ActionType GetActionByGameSituation(PlayerGameSnapshot player, Round round)
 {
 }
コード例 #7
0
ファイル: BlindMoneyUpdater.cs プロジェクト: IlyaYugov/Poker
 public void Update(Game game, PlayerGameSnapshot playerGameSnapshot)
 {
     UpdatePlayerMoney(game, playerGameSnapshot);
     UpdateGameBank(game, playerGameSnapshot);
 }
コード例 #8
0
        private double GetWinnedBlinds(PlayerGameSnapshot playerGameSnapshot)
        {
            var winnedBlinds = (playerGameSnapshot.CollectedMoney - playerGameSnapshot.GaveMoneyToBank) / playerGameSnapshot.Game.BigBlind;

            return(winnedBlinds);
        }