Files
UltimateFishing/Assets/Scripts/Assembly-CSharp/AchievementDebugPanel.cs
2026-02-21 16:45:37 +08:00

62 lines
1.5 KiB
C#

using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class AchievementDebugPanel : MonoBehaviour
{
public InputField numberInput;
public Dropdown achivementsDropdown;
public Text currentProgressText;
public Button addProgressButton;
public Button resetButton;
public int defaultAchievement;
private List<string> achievementsNames = new List<string>();
private void OnEnable()
{
}
private void Start()
{
for (int i = 0; i < AchievementManager.Instance.achievements.Count; i++)
{
achievementsNames.Add(AchievementManager.Instance.achievements[i].nameId);
}
achivementsDropdown.ClearOptions();
achivementsDropdown.AddOptions(achievementsNames);
achivementsDropdown.value = defaultAchievement;
addProgressButton.onClick.AddListener(AddAchievementProgress);
resetButton.onClick.AddListener(Reset);
}
private void Update()
{
int value = achivementsDropdown.value;
currentProgressText.text = AchievementManager.Instance.achievements[value].progressCurrent.ToString();
}
private void AddAchievementProgress()
{
int result = 0;
if (!int.TryParse(numberInput.text, out result))
{
result = 100;
}
int value = achivementsDropdown.value;
result += AchievementManager.Instance.achievements[value].progressCurrent;
AchievementManager.Instance.achievements[value].SetAchievementProgress(result);
}
private void Reset()
{
int value = achivementsDropdown.value;
AchievementManager.Instance.achievements[value].ResetAchievement();
}
}