public void NetworkGameStateObject() { var gamestate = new ServerGameState(null); gamestate.SeatedPlayers = new Player[10]; var player1 = Player.GetPlayerServerSide("Sander"); var player2 = Player.GetPlayerServerSide("Stefan"); gamestate.SeatPlayer(player1); gamestate.SeatPlayer(player2); var obj = new NetworkGameStateObject(ServerCommands.SendGameState, gamestate); var decoder = new NetworkGameStateObject.GameStateObjectReader(); var bytes = decoder.GenerateByteStream(obj); var generatedObj = decoder.GenerateObject(bytes, false); Assert.IsInstanceOfType(generatedObj, typeof(NetworkGameStateObject)); var generatedGamestate = generatedObj as NetworkGameStateObject; Assert.IsTrue(generatedGamestate.GameState.PlayerCount == gamestate.PlayerCount); for(var i = 0; i < gamestate.SeatedPlayers.Length; i++) { if (gamestate.SeatedPlayers[i] == null) Assert.IsNull(generatedGamestate.GameState.SeatedPlayers[i]); else { Assert.IsNotNull(generatedGamestate.GameState.SeatedPlayers[i]); Assert.AreEqual(generatedGamestate.GameState.SeatedPlayers[i].Name, gamestate.SeatedPlayers[i].Name); } } CompareDefaultObject(obj, generatedGamestate); }
private Server(Game game, GamePanel panel, Client client) { this.game = game; GameState = new ServerGameState(this); for (var i = 1; i < 5; i++) GameState.SeatedPlayers[i] = Player.GetPlayerServerSide($"Temp {i}"); ServerMessageHandler = new ServerMessageHandler(this, GameState); }
public DebugConsole(Server server, ServerGameState serverGameState, Client client, ClientGameState clientGameState) :this() { this.server = server; this.serverGameState = serverGameState; this.client = client; this.clientGameState = clientGameState; for(var i = 0; i < serverGameState.SeatedPlayers.Length; i++) { if (serverGameState.SeatedPlayers[i] == null) continue; playerButtons[i].Enabled = true; playerButtons[i].Text = serverGameState.SeatedPlayers[i].Name; playerButtons[i].Tag = serverGameState.SeatedPlayers[i]; } for (var i = 0; i < policyButtons.Length; i++) { policyButtons[i].Tag = (byte)i; } }
public ServerMessageHandler(Server server, ServerGameState gameState) { this.server = server; this.gameState = gameState; }
public override NetworkObject GetPresidentObject(ServerGameState gameState) { return new NetworkObject(ServerCommands.PresidentActionChoosePresident); }
public override NetworkObject GetPresidentObject(ServerGameState gameState) { var cards = gameState.GetPolicyCards(3); gameState.ReturnPolicyCards(cards); return new NetworkCardObject(ServerCommands.PresidentActionExamine, cards); }
public abstract NetworkObject GetPresidentObject(ServerGameState gameState);