using LightReflectiveMirror; using Mirror; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class MainmenuController : MonoBehaviour { public Text usernameTxt; [Header("Server List")] public Transform scrollParent; public GameObject serverRow; public float heightPerRow = 60; public int curSelected = 0; public LightReflectiveMirrorTransport _LRM; public Toggle isPublic; public InputField serverNameInput; public Slider maxPlayerCount; void Start() { _LRM = (LightReflectiveMirrorTransport)Transport.activeTransport; _LRM.serverListUpdated.AddListener(ServerListUpdate); _LRM.connectedToRelay.AddListener(refreshServers); usernameTxt.text = PlayerPrefs.GetString("username"); serverNameInput.text = usernameTxt.text + "'s Server"; // refreshServers(); } // Update is called once per frame void Update() { } void OnDisable() { if (_LRM != null) { _LRM.serverListUpdated.RemoveListener(ServerListUpdate); } } public void refreshServers() { StartCoroutine(requestList()); } IEnumerator requestList(){ yield return new WaitForSeconds(1); if(_LRM == null){Debug.Log("WTF!");} _LRM.RequestServerList(); } public void ServerListUpdate() { // //clear all entries Debug.Log("it works"); foreach(Transform t in scrollParent) { Destroy(t.gameObject); } for (int i =0; i < _LRM.relayServerList.Count; i++) { //int mapId = int.Parse(_LRM.relayServerList[i].serverName.Substring(0, 1)); GameObject go = Instantiate(serverRow, scrollParent); go.transform.GetChild(0).GetComponent().text = _LRM.relayServerList[i].serverName; go.transform.GetChild(1).GetComponent().text = _LRM.relayServerList[i].currentPlayers + "/" + _LRM.relayServerList[i].maxPlayers; go.GetComponentInChildren