MedievalParty/Assets/Scripts/Lobby/UI_LobbySection.cs
2025-10-02 14:42:16 -04:00

41 lines
1.3 KiB
C#

using System;
using UnityEngine;
using UnityEngine.UI;
namespace MedievalParty.Lobby
{
public class UI_LobbySection: MonoBehaviour
{
public static UI_LobbySection Instance { get; private set; }
public event EventHandler onSoloTrigger;
public event EventHandler onLocalTrigger;
public event EventHandler onOnlineTrigger;
public event EventHandler onStartTrigger;
[SerializeField] private Button soloButton;
[SerializeField] private Button localButton;
[SerializeField] private Button onlineButton;
[SerializeField] private Button startButton;
private void Awake()
{
if (Instance)
{
Debug.LogWarning($"{typeof(UI_LobbySection)} already exist! {transform}");
Destroy(gameObject);
return;
}
Instance = this;
}
private void Start()
{
soloButton.onClick.AddListener(() => onSoloTrigger?.Invoke(this, EventArgs.Empty));
localButton.onClick.AddListener(() => onLocalTrigger?.Invoke(this, EventArgs.Empty));
onlineButton.onClick.AddListener(() => onOnlineTrigger?.Invoke(this, EventArgs.Empty));
startButton.onClick.AddListener(() => onStartTrigger?.Invoke(this, EventArgs.Empty));
}
}
}