void HandleJoinGameMsg(InsightNetworkMessage netMsg) { JoinGamMsg message = netMsg.ReadMessage <JoinGamMsg>(); if (server.logNetworkMessages) { UnityEngine.Debug.Log("[MatchMaking] - Player joining Match."); } GameContainer game = GetGameByUniqueID(message.UniqueID); if (game == null) { //Something went wrong //netMsg.Reply((short)MsgId.ChangeServers, new ChangeServerMsg()); } else { netMsg.Reply((short)MsgId.ChangeServers, new ChangeServerMsg() { NetworkAddress = game.NetworkAddress, NetworkPort = game.NetworkPort, SceneName = game.SceneName }); } }
public void Update() { if (!InitMatch) { //Check to see if the server is up if (matchModule.gameManager.GetGameByUniqueID(matchProperties.UniqueID) == null) { //Server spawn timeout check if (matchStartTime.AddSeconds(MatchTimeoutInSeconds) < DateTime.UtcNow) { CancelMatch(); } UnityEngine.Debug.Log("Server not active at this time"); return; } //Server is registered and active else { InitMatch = true; MatchServer = matchModule.gameManager.GetGameByUniqueID(matchProperties.UniqueID); //Move players to server foreach (UserContainer user in matchUsers) { matchModule.server.SendToClient(user.connectionId, (short)MsgId.ChangeServers, new ChangeServers() { NetworkAddress = MatchServer.NetworkAddress, NetworkPort = MatchServer.NetworkPort, SceneName = MatchServer.SceneName }); } } } }
public void Update() { if (!InitMatch) { if (IsSpawnServerActive()) { InitMatch = true; MatchServer = matchModule.gameManager.GetGameByUniqueID(matchProperties.UniqueID); MovePlayersToServer(); } } }
private void HandleRegisterGameMsg(InsightMessage _insightMsg) { if (_insightMsg is InsightNetworkMessage netMsg) { var message = (RegisterGameMsg)_insightMsg.message; Debug.Log("[GameMasterManager] - Received game registration"); var game = new GameContainer { connectionId = netMsg.connectionId, uniqueId = message.uniqueId, networkAddress = message.networkAddress, networkPort = message.networkPort, gameName = message.gameName, minPlayers = message.minPlayers, maxPlayers = message.maxPlayers, currentPlayers = message.currentPlayers, }; registeredGameServers.Add(game); foreach (var playerTemp in registeredPlayers) { server.NetworkSend(playerTemp.connectionId, new GameListStatusMsg { operation = GameListStatusMsg.Operation.Add, game = game }); } LaunchGame(game.uniqueId); } else { Debug.LogError("[GameMasterManager] - Rejected (Internal) game registration"); } }
public void Update(GameContainer _game) { currentPlayers = _game.currentPlayers; isInMatch = _game.isInMatch; }