Files
Inter-Face-Off/Assets/Scripts/ScoreTracker.cs
2026-01-22 23:26:08 +00:00

54 lines
1.5 KiB
C#

using System.Collections.Generic;
using InterfaceOff.MainMenu;
using UnityEngine;
using UnityEngine.UI;
namespace InterfaceOff.WorldScene
{
[System.Serializable] public struct PlayerScore
{
private string PlayerName;
private float Score;
}
public class ScoreTracker : MonoBehaviour
{
[field: SerializeField] private bool GameAngliaVersion { get; set; }
[field: SerializeField] private Text ScoreText { get; set; }
[field: SerializeField] private Text FinalScoreText { get; set; }
[field: SerializeField] private WindowSpawner Spawner { get; set; }
private static List<PlayerScore> PlayerScores { get; } = new();
private static ScoreTracker Instance { get; set; }
private bool StoredScore = false;
private float Score = 0f;
public static float CurrentScore()
{
if (DebugUtils.IsNull(Instance))
{
return 0;
}
return Instance.Score;
}
private void Awake() => Instance = this;
private void Update()
{
if (Spawner.AutoSpawn)
{
Score = Time.timeSinceLevelLoad * DifficultyManager.DifficultyEffect;
ScoreText.text = $"Score: {Score:F1}";
}
else
{
FinalScoreText.text = $"Your final score is: {Score:F1}, Press SPACE to continue";
ScoreText.text = null;
}
}
}
}