using System.Collections; using System.Collections.Generic; using UnityEngine; using Mirror; using UnityEngine.UI; using TMPro; public class NetworkManagerUI : MonoBehaviour { public NetworkManager manager; public GameObject adressInputGO; public TMP_InputField adressInput; public TMP_InputField nicknameInput; public GameObject menu; public GameObject playMenu; public GameObject settingsMenu; public GameObject loadingScreen; private bool _startButtonsState = true; private bool _settingsButtonState = true; void Awake() { nicknameInput.text = PlayerPrefs.GetString("NickName"); manager.networkAddress = PlayerPrefs.GetString("Adress"); adressInput.text = PlayerPrefs.GetString("Adress"); Cursor.lockState = CursorLockMode.None; } #region Start Buttons public void StartHost() { if (!NetworkClient.active) { manager.StartHost(); } } public void StartClient() { if (!NetworkClient.active) { manager.StartClient(); } } public void SetAdress() { manager.networkAddress = adressInput.text; PlayerPrefs.SetString("Adress", adressInput.text); } public void SetNickname() { PlayerPrefs.SetString("NickName", nicknameInput.text); } public void changeStartMenuState() { _startButtonsState = !_startButtonsState; menu.SetActive(_startButtonsState); playMenu.SetActive(!_startButtonsState); } public void changeSettingsMenuState() { _settingsButtonState = !_settingsButtonState; menu.SetActive(_settingsButtonState); settingsMenu.SetActive(!_settingsButtonState); } #endregion #region Stop Buttons public void StopClient() { manager.StopClient(); } public void StopButtons() { // stop host if host mode if (NetworkServer.active && NetworkClient.isConnected) { manager.StopHost(); } // stop client if client-only else if (NetworkClient.isConnected) { manager.StopClient(); } // stop server if server-only else if (NetworkServer.active) { manager.StopServer(); } } public void Quit() { Application.Quit(); } #endregion }