/*
         * game constructor
         */
        public GameController(int numberOfPlayers, IMoveChoiceStrategy humanMoveChooser)
        {
            this.setRaiseAmount     = 20;
            this.startingStackValue = 500;

            PlayerFactory playerFactory = new PlayerFactory();

            this.players = new Player[numberOfPlayers];
            if (numberOfPlayers == 3)
            {
                this.players[0] = playerFactory.createAutoPlayer(PlayerPosition.Right, this.startingStackValue);
                this.players[1] = playerFactory.createHumanPlayer(humanMoveChooser, PlayerPosition.Middle, this.startingStackValue);
                this.players[2] = playerFactory.createAutoPlayer(PlayerPosition.Left, this.startingStackValue);
            }
            else
            {
                this.players[0] = playerFactory.createAutoPlayer(PlayerPosition.Right, this.startingStackValue);
                this.players[1] = playerFactory.createAutoPlayer(PlayerPosition.Left, this.startingStackValue);
            }

            this.legalMoveGenerator = new LegalMoveGenerator();

            this.deck = new Stack <Card>();
            this.initializeDeck();
        }
Beispiel #2
0
 public Player(IMoveChoiceStrategy moveChooser, PlayerPosition pos, int stack)
 {
     this.moveChooser   = moveChooser;
     this.position      = pos;
     this.startingStack = stack;
     this.currentStack  = stack;
     this.betInRound    = 0;
     this.folded        = false;
     this.cards         = new Card[2];
 }
Beispiel #3
0
 private Player createPlayer(IMoveChoiceStrategy moveChooser, PlayerPosition position, int stack)
 {
     return new Player(moveChooser, position, stack);
 }
Beispiel #4
0
 public Player createHumanPlayer(IMoveChoiceStrategy moveChooser, PlayerPosition position, int stack)
 {
     return this.createPlayer(moveChooser, position, stack);
 }
Beispiel #5
0
 public Player createHumanPlayer(IMoveChoiceStrategy moveChooser, PlayerPosition position, int stack)
 {
     return(this.createPlayer(moveChooser, position, stack));
 }
Beispiel #6
0
 private Player createPlayer(IMoveChoiceStrategy moveChooser, PlayerPosition position, int stack)
 {
     return(new Player(moveChooser, position, stack));
 }