コード例 #1
0
ファイル: Program.cs プロジェクト: YouJinTou/BNQ
        static GameState GetStartState(bool isDeterministic)
        {
            if (!isDeterministic)
            {
                return(StateGenerator.GenerateState());
            }

            var heroHand    = isDeterministic ? Card.d6 | Card.d5 : BoardGenerator.GenerateHand();
            var villainHand = Card.None;
            var flop        = isDeterministic ?
                              Card.c3 | Card.d4 | Card.c9 : BoardGenerator.GenerateFlop(heroHand | villainHand);
            var hero    = new Player(heroHand, Position.SB, 99.5, true, true);
            var villain = new Player(villainHand, Position.BB, 98.25, false);
            var state   = StateFactory.CreateStartState(
                flop, Street.Flop, hero, villain, 2.25, 0.75d, Action.Bet50);

            return(state);
        }
コード例 #2
0
ファイル: StateGenerator.cs プロジェクト: YouJinTou/BNQ
        public static GameState GenerateState()
        {
            var street  = GenerateStreet();
            var hero    = GeneratePlayer(isHero: true, isToPlay: true);
            var villain = GeneratePlayer(
                deadCards: hero.HoleCards,
                deadPosition: hero.Position,
                isToPlay: false,
                isHero: false);
            var board = BoardGenerator.GenerateFlop(hero.HoleCards | villain.HoleCards);

            board |= BoardGenerator.FillFromTo(board, Street.Flop, street);
            var action      = GenerateAction();
            var pot         = action.IsPassive() ? 1.5d : 2.25d;
            var wagerToCall = action.IsPassive() ? 0.0d : 0.75d;

            return(StateFactory.CreateStartState(
                       board, street, hero, villain, pot, wagerToCall, action));
        }