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))); } }
private void HandleDoTurnPacket(PacketC2SDoTurn doTurnPacket) { _game.DoTurn(_player, doTurnPacket); }