63 lines
1.8 KiB
C#
63 lines
1.8 KiB
C#
|
|
using TMPro;
|
||
|
|
using UnityEngine;
|
||
|
|
using UnityEngine.UI;
|
||
|
|
|
||
|
|
public class PvAIModePopup : PopupBase
|
||
|
|
{
|
||
|
|
[Header("Buttons")]
|
||
|
|
[SerializeField] private Button twoPlayerBtn;
|
||
|
|
[SerializeField] private Button threePlayerBtn;
|
||
|
|
[SerializeField] private Button fourPlayerBtn;
|
||
|
|
[SerializeField] private Button playBtn;
|
||
|
|
[SerializeField] private Button closeBtn;
|
||
|
|
|
||
|
|
[Header("Input Field")]
|
||
|
|
[SerializeField] private TMP_InputField playerNameInput;
|
||
|
|
|
||
|
|
|
||
|
|
[Header("Player Names")]
|
||
|
|
private string playerName;
|
||
|
|
|
||
|
|
private ScreenManager screenManager;
|
||
|
|
private int selectedPlayerCount;
|
||
|
|
public int SelectedPlayerCount => selectedPlayerCount;
|
||
|
|
|
||
|
|
private void OnEnable()
|
||
|
|
{
|
||
|
|
twoPlayerBtn.onClick.AddListener(() => OnPlayerCountSelected(2));
|
||
|
|
threePlayerBtn.onClick.AddListener(() => OnPlayerCountSelected(3));
|
||
|
|
fourPlayerBtn.onClick.AddListener(() => OnPlayerCountSelected(4));
|
||
|
|
playBtn.onClick.AddListener(OnClick_playBtn);
|
||
|
|
closeBtn.onClick.AddListener(OnClick_closeBtn);
|
||
|
|
}
|
||
|
|
|
||
|
|
private void OnDisable()
|
||
|
|
{
|
||
|
|
twoPlayerBtn.onClick.RemoveAllListeners();
|
||
|
|
threePlayerBtn.onClick.RemoveAllListeners();
|
||
|
|
fourPlayerBtn.onClick.RemoveAllListeners();
|
||
|
|
playBtn.onClick.RemoveAllListeners();
|
||
|
|
closeBtn.onClick.RemoveAllListeners();
|
||
|
|
}
|
||
|
|
private void OnPlayerCountSelected(int count)
|
||
|
|
{
|
||
|
|
selectedPlayerCount = count;
|
||
|
|
}
|
||
|
|
|
||
|
|
private void OnClick_playBtn()
|
||
|
|
{
|
||
|
|
playerName = playerNameInput.text;
|
||
|
|
|
||
|
|
Debug.Log($"Starting PVP Mode with {selectedPlayerCount} players:");
|
||
|
|
Debug.Log($"Player 1: {playerName}");
|
||
|
|
|
||
|
|
}
|
||
|
|
private void OnClick_closeBtn()
|
||
|
|
{
|
||
|
|
screenManager = screenManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<ScreenManager>() : screenManager;
|
||
|
|
screenManager.ShowScreen(ScreenType.MenuHUDScreen);
|
||
|
|
|
||
|
|
Hide();
|
||
|
|
}
|
||
|
|
}
|