Ejemplo n.º 1
0
        public void DoTurn(Player player, PacketC2SDoTurn doTurnPacket)
        {
            if (_currentTurn != player)
            {
                return;                         // Ignore
            }
            if (_board[doTurnPacket.Field] != PlayerType.None)
            {
                return;                                                // TODO Handle Illegal Move
            }
            _board[doTurnPacket.Field] = _currentTurn.PlayerType;
            BroadcastBoard();

            if (CheckWinner(player))
            {
                Win(player);
            }
            else
            {
                AssignTurn(GetPlayerByType(GetReverseType(player.PlayerType)));
            }
        }
Ejemplo n.º 2
0
 private void HandleDoTurnPacket(PacketC2SDoTurn doTurnPacket)
 {
     _game.DoTurn(_player, doTurnPacket);
 }