60 lines
2.6 KiB
C#
60 lines
2.6 KiB
C#
using System;
|
|
using TMPro;
|
|
using UnityEngine;
|
|
using UnityEngine.InputSystem;
|
|
using UnityEngine.SceneManagement;
|
|
|
|
public class StatsMenu : MonoBehaviour
|
|
{
|
|
[SerializeField] private GameObject panel;
|
|
|
|
[SerializeField] private TMP_Text normalBerryStat;
|
|
[SerializeField] private TMP_Text poisonBerryStat;
|
|
[SerializeField] private TMP_Text slowBerryStat;
|
|
[SerializeField] private TMP_Text ultraBerryStat;
|
|
[SerializeField] private TMP_Text speedyBerryStat;
|
|
[SerializeField] private TMP_Text coinBerryStat;
|
|
[SerializeField] private TMP_Text randomBerryStat;
|
|
[SerializeField] private TMP_Text antiBerryStat;
|
|
[SerializeField] private TMP_Text coinStat;
|
|
|
|
[SerializeField] private TMP_Text xpUsernameText;
|
|
[SerializeField] private TMP_Text xpText;
|
|
[SerializeField] private TMP_Text xpLevelText;
|
|
|
|
[SerializeField] private RectTransform progressFilledRect;
|
|
|
|
void Start()
|
|
{
|
|
normalBerryStat.text = BazookaManager.Instance.GetGameStoreTotalNormalBerries().ToString();
|
|
poisonBerryStat.text = BazookaManager.Instance.GetGameStoreTotalPoisonBerries().ToString();
|
|
slowBerryStat.text = BazookaManager.Instance.GetGameStoreTotalSlowBerries().ToString();
|
|
ultraBerryStat.text = BazookaManager.Instance.GetGameStoreTotalUltraBerries().ToString();
|
|
speedyBerryStat.text = BazookaManager.Instance.GetGameStoreTotalSpeedyBerries().ToString();
|
|
coinBerryStat.text = BazookaManager.Instance.GetGameStoreTotalCoinBerries().ToString();
|
|
randomBerryStat.text = BazookaManager.Instance.GetGameStoreTotalRandomBerries().ToString();
|
|
antiBerryStat.text = BazookaManager.Instance.GetGameStoreTotalAntiBerries().ToString();
|
|
coinStat.text = BazookaManager.Instance.GetCustomBirdIconData().Balance.ToString();
|
|
|
|
var (_, level, currentXpInLevel, totalXpForLevel, percentDone) = Tools.GetLevelInfo();
|
|
xpUsernameText.text = BazookaManager.Instance.GetAccountName() ?? "";
|
|
xpText.text = currentXpInLevel.ToString() + "/" + totalXpForLevel.ToString() + " xp";
|
|
xpLevelText.text = "Level " + level.ToString();
|
|
SetXPProgressFilled((int)percentDone);
|
|
|
|
Tools.RefreshHierarchy(panel);
|
|
}
|
|
|
|
async void Update()
|
|
{
|
|
if (Keyboard.current.escapeKey.wasPressedThisFrame) await SceneManager.LoadSceneAsync("MainMenu");
|
|
}
|
|
|
|
void SetXPProgressFilled(int progress)
|
|
{
|
|
int newProgress = Math.Clamp(progress, 0, 100);
|
|
progressFilledRect.sizeDelta = new Vector2(newProgress * 3, progressFilledRect.sizeDelta.y);
|
|
progressFilledRect.anchoredPosition = new Vector2((newProgress * 3 - 300f) * 0.5f, progressFilledRect.anchoredPosition.y);
|
|
}
|
|
}
|