| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- using UnityEngine;
- using System.Collections.Generic;
- public class UIUpdater : MonoBehaviour
- {
- public static UIUpdater Instance;
- public bool IsReady { get; private set; } = false;
- private void Awake()
- {
- if (Instance != null && Instance != this)
- Destroy(gameObject);
- else
- Instance = this;
- }
- private Dictionary<string, CharacterUIController> characterToUI = new();
- public void Register(CharacterInGroup character, CharacterUIController ui)
- {
- if (!characterToUI.ContainsKey(character.characterName))
- characterToUI.Add(character.characterName, ui);
- }
- public void Unregister(string characterName)
- {
- if (characterToUI.ContainsKey(characterName))
- {
- characterToUI.Remove(characterName);
- }
- }
- public void MarkReady()
- {
- IsReady = true;
- }
- public CharacterUIController GetUIForCharacterByName(string name)
- {
- if (characterToUI.TryGetValue(name, out var ui))
- return ui;
- return null;
- }
- public void UpdateCharacterHP(CharacterInGroup character)
- {
- if (characterToUI.TryGetValue(character.characterName, out var ui))
- {
- ui.UpdateHPBar();
- }
- }
- public void UpdateCharacterFatigue(CharacterInGroup character)
- {
- if (characterToUI.TryGetValue(character.characterName, out var ui))
- {
- ui.UpdateFatigueBar();
- }
- }
- public void UpdateCharacterExperience(CharacterInGroup character)
- {
- if (characterToUI.TryGetValue(character.characterName, out var ui))
- {
- ui.UpdateExpBar();
- }
- }
- public CharacterUIController GetUIForCharacter(CharacterInGroup character)
- {
- if (characterToUI.TryGetValue(character.characterName, out var ui))
- {
- return ui;
- }
-
- return null;
- }
- }
|