41 lines
1.5 KiB
C#
41 lines
1.5 KiB
C#
using UnityEngine;
|
|
using UnityEngine.UIElements;
|
|
|
|
namespace UI
|
|
{
|
|
public class LobbyController : MonoBehaviour
|
|
{
|
|
private VisualElement _joinView;
|
|
private VisualElement _createView;
|
|
|
|
private void OnEnable()
|
|
{
|
|
var root = GetComponent<UIDocument>().rootVisualElement;
|
|
|
|
_joinView = root.Q<VisualElement>("join-view");
|
|
_createView = root.Q<VisualElement>("create-view");
|
|
|
|
// Back button
|
|
root.Q<Button>("btn-back")?.RegisterCallback<ClickEvent>(evt => UIManager.Instance.GoBack());
|
|
root.Q<Button>("btn-settings")?.RegisterCallback<ClickEvent>(evt => UIManager.Instance.ToggleSettings());
|
|
|
|
// Create confirm -> Lounge
|
|
root.Q<Button>("btn-create-confirm")?.RegisterCallback<ClickEvent>(evt => UIManager.Instance.ShowScreen("Lounge"));
|
|
|
|
// Toggle password field in Create View
|
|
var passToggle = root.Q<Toggle>("toggle-password");
|
|
var passField = root.Q<TextField>("field-password");
|
|
passToggle?.RegisterValueChangedCallback(evt => {
|
|
if(passField != null) passField.style.display = evt.newValue ? DisplayStyle.Flex : DisplayStyle.None;
|
|
});
|
|
}
|
|
|
|
public void SetMode(bool isCreate)
|
|
{
|
|
if (_joinView == null) return;
|
|
_joinView.style.display = isCreate ? DisplayStyle.None : DisplayStyle.Flex;
|
|
_createView.style.display = isCreate ? DisplayStyle.Flex : DisplayStyle.None;
|
|
}
|
|
}
|
|
}
|