override protected void HandleMessage(CreateLobby message) { GameNet.Player player = _server.Server.GetPlayerBySecret(message.Secret); if (player == null) { return; } try { ServerLobby lobby = _server.CreateLobby(message.Name, message.Password); } catch (Exception e) { Console.WriteLine(e.Message); } }
protected override void OnInstanceCreated() { base.OnInstanceCreated(); AlwaysExist = true; NetworkManager = Mirror.NetworkManager.singleton as EventNetworkManager; ServerLobby = ServerLobby.Instance; NetworkManager.OnServerSceneChangedEvent += StartSession; ServerLobby.OnUserLoadedToScene += ProcessLoadedUser; CreateObservers(Observers); CreateActors(Actors); LoadPrefabs(); }
public void UpdateCountdown(byte num) { ServerLobby lobby = GeneralVariables.lobbyManager; lobby.countdown = (int)num; lobby.countdownParent.SetActive(true); lobby.startGameButton.isEnabled = false; lobby.backButton.isEnabled = false; NGUITools.PlaySound(lobby.countdownSound, 0.15f); lobby.countdownText.text = "GAME STARTING IN: " + lobby.countdown.ToString(); if (lobby.countdown <= 0 && !Topan.Network.isServer) { StartCoroutine(FinishedCountdown()); } }
private void InitializeServer(Scene scene, LoadSceneMode loadSceneMode) { ServerLobby.CreateInstance(); var lobby = ServerLobby.Instance; var networkManager = NetworkManager.singleton as EventNetworkManager; if (networkManager == null) { throw new InvalidCastException(); } lobby.NetworkManager = networkManager; lobby.Initialize(); SceneManager.sceneLoaded -= InitializeServer; DestroyIfExist(true); }
/// <summary> /// Create a new lobby. /// </summary> /// <param name="name">The lobby name</param> /// <param name="password">The lobby password.</param> /// <returns>The created lobby.</returns> public ServerLobby CreateLobby(string name, string password = null) { foreach (Lobby existing in _lobbies) { if (existing.Name == name) { throw new ArgumentException("Lobby name has already been taken.", "name"); } } var lobby = new ServerLobby(name, password); _lobbies.Add(lobby); Output.WriteLine($"Name: {lobby.Name}"); Output.WriteLine($"Password: {lobby.Password}"); return(lobby); }
public LobbyTesting() { ServerLobby lobby = new ServerLobby(); ServerUser host = new ServerUser("host", false,null); Room room; Console.WriteLine("---------create room------------"); lobby.CreateRoom(host, "testRoom", true, "asdqwe", out room); PrintLobby(lobby); Console.WriteLine("---------create room--------------"); lobby.CreateRoom(host, "testRoom2", false, "", out room); lobby.CreateRoom(host, "testRoom3", false, "", out room); PrintLobby(lobby); string lobbyDataString = JsonConvert.SerializeObject(lobby.Serialize(), new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Auto }); Lobby resultLobby = JsonConvert.DeserializeObject<Lobby>(lobbyDataString, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.Auto }); PrintLobby(resultLobby); Console.WriteLine("Lobby test end"); Console.Read(); }