/// <summary> /// Initializes the button with match description and button onclick /// </summary> /// <param name="match">Match description used to populate button value.</param> /// <param name="manager">Manager referenced on the onclick event</param> public virtual void Init(MatchInfoSnapshot match, OnlineLobbyManager manager) { _matchName = match.name; // Match name is combined with the current number of players & max size string info = _matchName + " (" + match.currentSize + "/" + match.maxSize + ")"; MatchJoinButton.GetComponentInChildren <Text>().text = info; MatchJoinButton.onClick.RemoveAllListeners(); MatchJoinButton.onClick.AddListener(() => OnClick(match.networkId, manager)); }
/// <summary> /// Initializes the manager /// </summary> public virtual void Start() { Instance = this; _onlineLobbyUI = GetComponentInChildren <OnlineLobbyUI>(); // Init UI _onlineLobbyUI.ShowLobby(); OnReturnToMain(); // Register call on scene loaded to destroy this object SceneManager.sceneLoaded += SceneManager_sceneLoaded; }
/// <summary> /// Describes what happens when the button is clicked /// </summary> /// <param name="networkId">Network identifier.</param> /// <param name="manager">Manager to call back</param> public virtual void OnClick(NetworkID networkId, OnlineLobbyManager manager) { manager._onlineLobbyUI.TitleLabel.text = "GAME " + _matchName; manager.matchMaker.JoinMatch(networkId, "", "", "", 0, manager.GameId, manager.OnMatchJoined); }