public void StartGame() { //first player StartGameMessage startGameMessage = new StartGameMessage() { playerData = NetworkUtilities.GetNetPlayerData(players[0]), opponentData = NetworkUtilities.GetNetPlayerData(players[1]) }; SendNetMessage(ref m_Driver, players[0].m_connenction, startGameMessage); //second player startGameMessage = new StartGameMessage() { playerData = NetworkUtilities.GetNetPlayerData(players[1]), opponentData = NetworkUtilities.GetNetPlayerData(players[0]) }; SendNetMessage(ref m_Driver, players[1].m_connenction, startGameMessage); currentPlayer = players.IndexOf(players.Find(x => x.guid == 0)); gameStarted = true; }
internal void EndCurrentTurn() { //send end turn message to the current player SendNetMessage(ref m_Driver, players[currentPlayer].m_connenction, new EndTurnMessage() { recepientGUID = players[currentPlayer].guid, playerData = NetworkUtilities.GetNetPlayerData(players[currentPlayer]), opponentData = NetworkUtilities.GetNetPlayerData(players[inactivePlayer]) }); //send start turn to the other player SendNetMessage(ref m_Driver, players[inactivePlayer].m_connenction, new StartTurnMessage() { recepientGUID = players[inactivePlayer].guid, playerData = NetworkUtilities.GetNetPlayerData(players[inactivePlayer]), opponentData = NetworkUtilities.GetNetPlayerData(players[currentPlayer]) }); madeMoves = 0; currentPlayer = inactivePlayer; }