public void OnClientMessage_MessageGetGameRoomPlayersRequest(int clientID, MessageGetGameRoomPlayersRequest message, GameRoomManager gameRoomManager, GameClientManager gameClientManager) { var roomID = message.RoomID; var roomHostClientID = gameRoomManager.GetGameRoomHostClientIDFromGameRoomID(message.RoomID); var players = new List <ANetworkPlayer>(); var playerManager = new PlayerManager(); players.Add(playerManager.GeneratePlayerFromClientID(roomHostClientID, message.RoomID, gameClientManager, gameRoomManager)); //the first clientID will be the host var clientIDs = gameRoomManager.GetGameClientsInRoom(roomID); for (int i = 0; i < clientIDs.Count; i++) { if (clientIDs[i] != roomHostClientID) { players.Add(playerManager.GeneratePlayerFromClientID(clientIDs[i], message.RoomID, gameClientManager, gameRoomManager)); } } var messageResponse = new MessageGetGameRoomPlayersResponse(players); var gameClient = gameClientManager.GetGameClientFromClientID(clientID); SendDataToClient(gameClient, messageResponse); }
public void SendDataToClientsInRoom(int roomID, GameRoomManager gameRoomManager, GameClientManager gameClientManager, byte[] data) { var clientIDs = gameRoomManager.GetGameClientsInRoom(roomID); var theGameClients = gameClientManager.GetGameClientsFromClientIDs(clientIDs.ToList()); SendDataToClients(theGameClients, data); }
public void OnClientMessage_MessageJoinGameRoomRequest(int clientID, MessageJoinGameRoomRequest message, GameRoomManager gameRoomManager, GameClientManager gameClientManager) { gameRoomManager.AddPlayerToGameRoom(clientID, message.RoomID, 1); var clientIDs = gameRoomManager.GetGameClientsInRoom(message.RoomID); var playerThatJoined = new PlayerManager().GeneratePlayerFromClientID(clientID, message.RoomID, gameClientManager, gameRoomManager); var theGameClients = gameClientManager.GetGameClientsFromClientIDs(clientIDs.ToList()); SendDataToClients(theGameClients, new MessageJoinGameRoomResponse(playerThatJoined)); }