Ejemplo n.º 1
0
        public override void beginExecution(Board b, EvtOwnr evt)
        {
            theBoard        = b;
            owner           = evt;
            playerTurnOrder = new List <int>();
            int num = -1;

            for (int i = 0; i < theBoard.playerOrder.Count() * 2; i++)
            {
                if (i < theBoard.playerOrder.Count())
                {
                    playerTurnOrder.Add(i);
                }
                else
                {
                    num += 2;
                    playerTurnOrder.Add(i - num);
                }
            }
            theBoard.addEventText("Player " + theBoard.playerOrder[0].getName() + " please place your first settlement and road.");
            theBoard.currentPlayer = theBoard.playerOrder[0];

            if (!theBoard.currentPlayer.isAI)
            {
                enableEventObjects();
            }
            else
            {
                Settlement settlement = theBoard.currentPlayer.agent.placeFreeSettlement(theBoard.getBoardState());
                executeUpdate(settlement, null);
            }
        }
 public override void beginExecution(Board b, EvtOwnr evt)
 {
     theBoard = b;
     owner    = evt;
     //Locks down all but the needed controls.
     //Adds the onExecuteUpdate to the controls that need it.
     playersToRoll = new List <Player>();
     playerRolls   = new List <int>();
     foreach (Player p in b.playerPanels)
     {
         playersToRoll.Add(p);
     }
     theBoard.addEventText(UserMessages.PlayerDiceRollPrompt(playersToRoll[0]));
     theBoard.currentPlayer = playersToRoll[0];
     //enableEventObjects();
     if (!theBoard.currentPlayer.isAI)
     {
         enableEventObjects();
     }
     else
     {
         theBoard.dice.roll();
         executeUpdate(theBoard.dice, null);
     }
 }
Ejemplo n.º 3
0
 public override void beginExecution(Board b, EvtOwnr evt)
 {
     theBoard = b;
     owner    = evt;
     enableEventObjects();
     theBoard.addEventText(UserMessages.PlayerMoveThief(theBoard.currentPlayer));
 }
 public override void beginExecution(Board b, EvtOwnr evt)
 {
     //Since this event does not depend on user input we can safely turn
     // off all controls.
     theBoard = b;
     owner    = evt;
     executeUpdate(this, new EventArgs());
 }
 public override void beginExecution(Board board, EvtOwnr evt)
 {
     theBoard = board;
     owner    = evt;
     theBoard.addEventText(UserMessages.PlayerUsedRoadBuilding(board.currentPlayer));
     theBoard.addEventText(UserMessages.ROAD_BUILDING_INSTRUCTIONS);
     enableEventObjects();
 }
Ejemplo n.º 6
0
 public void asyncBeginExecution(Board b, EvtOwnr evtO)
 {
     new Thread(() =>
     {
         Thread.CurrentThread.IsBackground = true;
         Thread.Sleep(100);
         beginExecution(b, evtO);
     }).Start();
 }
Ejemplo n.º 7
0
 public override void beginExecution(Board b, EvtOwnr evt)
 {
     theBoard = b;
     owner    = evt;
     if (!theBoard.currentPlayer.isAI)
     {
         enableEventObjects();
     }
     else
     {
         theBoard.dice.roll();
         executeUpdate(theBoard.dice, null);
     }
 }
Ejemplo n.º 8
0
 public override void beginExecution(Board board, EvtOwnr evt)
 {
     activePlayer = board.currentPlayer;
     enableEventObjects();
     theBoard = board;
     owner    = evt;
     enableEventObjects();
     playersToGiveUpCards = new List <Player>();
     //Figure out the players that need to give up resources.
     foreach (Player pl in theBoard.playerOrder)
     {
         if (pl.getTotalResourceCount() > 7)
         {
             playersToGiveUpCards.Add(pl);
         }
     }
     executeUpdate(this, new EventArgs());
 }
        public override void beginExecution(Board board, EvtOwnr evt)
        {
            theBoard = board;

            foreach (DevelopmentCard devC in board.currentPlayer.getDevelopmentCards())
            {
                devC.setPlayable(true);
            }

            if (!theBoard.currentPlayer.isAI)
            {
                enableEventObjects();
            }
            else
            {
                while (PlayerSemaphore.isLocked)
                {
                    var move = theBoard.currentPlayer.agent.makeMove(theBoard.getBoardState());
                    executeUpdate(move, null);
                    System.Threading.Thread.Sleep(Board.AITurnDelayMilliseconds);
                }
            }
        }
Ejemplo n.º 10
0
 public override void beginExecution(Board board, EvtOwnr evt)
 {
 }
 public override void beginExecution(Board board, EvtOwnr evt)
 {
     theBoard = board;
     enableEventObjects();
     owner = evt;
 }
Ejemplo n.º 12
0
 public abstract void beginExecution(Board b, EvtOwnr evtO);
Ejemplo n.º 13
0
 public override void beginExecution(Board b, EvtOwnr evtO)
 {
     throw new NotImplementedException();
 }