using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using SiegeSong; namespace SiegeSong { public class HUDManager : MonoBehaviour { public float HealthDisplayValue = 100.0f; public float MagicDisplayValue = 100.0f; public float StaminaDisplayValue = 100.0f; public string LeftHandTechniqueDisplayValue = "Unarmed Jab"; public string LeftHandEquipDisplayValue = "Left Hand"; public string AbilityTechniqueDisplayValue = "High Kick"; public string AbilityEquipDisplayValue = "No Equipment"; public string RightHandTechniqueDisplayValue = "Unarmed Jab"; public string RightHandEquipDisplayValue = "Right Hand"; public string BigNotificationTitle = ""; public string BigNotificationSubtitle = ""; public string Notification = ""; public Slider HealthBarLR; public Slider HealthBarRL; public Slider StaminaBarLR; public Slider StaminaBarRL; public Slider MagicBarLR; public Slider MagicBarRL; public CanvasGroup StatBarUIGroup; public float StatBarUIGroupTimer; public float StatBarUIGroupDisplayTime; public bool StatBarUIGroupTimerActive; public CanvasGroup EquipmentAreaUIGroup; public float EquipmentAreaUIGroupTimer; public float EquipmentAreaUIGroupDisplayTime; public bool EquipmentAreaUIGroupTimerActive; public CanvasGroup SelectorAreaUIGroup; public float SelectorAreaUIGroupTimer; public float SelectorAreaUIGroupDisplayTime; public bool SelectorAreaUIGroupTimerActive; public CanvasGroup NotificationAreaUIGroup; public float NotificationAreaUIGroupTimer; public float NotificationAreaUIGroupDisplayTime; public bool NotificationAreaUIGroupTimerActive; public CanvasGroup LeftDirectionalUIGroup; public float LeftDirectionalUIGroupTimer; public float LeftDirectionalUIGroupDisplayTime; public bool LeftDirectionalUIGroupTimerActive; public CanvasGroup RightDirectionalUIGroup; public float RightDirectionalUIGroupTimer; public float RightDirectionalUIGroupDisplayTime; public bool RightDirectionalUIGroupTimerActive; public CanvasGroup BigNotificationUIGroup; public float BigNotificationUIGroupTimer; public float BigNotificationUIGroupDisplayTime; public bool BigNotificationUIGroupTimerActive; public Text NotificationHUD; public Text BigNotificationHeaderHUD; public Text BigNotificationSubheaderHUD; public Text LeftHandTechniqueHUD; public Text LeftHandEquipHUD; public Text AbilityTechniqueHUD; public Text AbilityEquipHUD; public Text RightHandTechniqueHUD; public Text RightHandEquipHUD; public float AlphaStep = 0.05f; public float DefaultDisplayTime = 2.0f; public void DisplayUIGroup(HUDGroup uiGroup, float displayTime = 2.0f) { switch (uiGroup) { case HUDGroup.StatBarArea: StatBarUIGroup.alpha = 1.0f; StatBarUIGroupTimerActive = true; StatBarUIGroupDisplayTime = displayTime; StatBarUIGroupTimer = 0.0f; break; case HUDGroup.EquipmentArea: EquipmentAreaUIGroup.alpha = 1.0f; EquipmentAreaUIGroupTimerActive = true; EquipmentAreaUIGroupDisplayTime = displayTime; EquipmentAreaUIGroupTimer = 0.0f; break; case HUDGroup.SelectorArea: SelectorAreaUIGroup.alpha = 1.0f; SelectorAreaUIGroupTimerActive = true; SelectorAreaUIGroupDisplayTime = displayTime; SelectorAreaUIGroupTimer = 0.0f; break; case HUDGroup.NotificationArea: NotificationAreaUIGroup.alpha = 1.0f; NotificationAreaUIGroupTimerActive = true; NotificationAreaUIGroupDisplayTime = displayTime; NotificationAreaUIGroupTimer = 0.0f; break; case HUDGroup.LeftDirectionalArea: LeftDirectionalUIGroup.alpha = 1.0f; LeftDirectionalUIGroupTimerActive = true; LeftDirectionalUIGroupDisplayTime = displayTime; LeftDirectionalUIGroupTimer = 0.0f; break; case HUDGroup.RightDirectionalArea: RightDirectionalUIGroup.alpha = 1.0f; RightDirectionalUIGroupTimerActive = true; RightDirectionalUIGroupDisplayTime = displayTime; RightDirectionalUIGroupTimer = 0.0f; break; //case HUDGroup.BigNotificationArea: // BigNotificationUIGroup.alpha = 1.0f; // BigNotificationUIGroupTimerActive = true; // BigNotificationUIGroupDisplayTime = displayTime; // BigNotificationUIGroupTimer = 0.0f; // break; } } void Start() { StatBarUIGroup.alpha = 0f; EquipmentAreaUIGroup.alpha = 0f; SelectorAreaUIGroup.alpha = 0f; NotificationAreaUIGroup.alpha = 0f; LeftDirectionalUIGroup.alpha = 0f; RightDirectionalUIGroup.alpha = 0f; } void Update() { NotificationHUD.text = Notification; //BigNotificationHeaderHUD.text = BigNotificationTitle; //BigNotificationSubheaderHUD.text = BigNotificationSubtitle; HealthBarLR.value = HealthDisplayValue; HealthBarRL.value = HealthDisplayValue; StaminaBarLR.value = StaminaDisplayValue; StaminaBarRL.value = StaminaDisplayValue; MagicBarLR.value = MagicDisplayValue; MagicBarRL.value = MagicDisplayValue; LeftHandTechniqueHUD.text = LeftHandTechniqueDisplayValue; LeftHandEquipHUD.text = LeftHandEquipDisplayValue; AbilityTechniqueHUD.text = AbilityTechniqueDisplayValue; AbilityEquipHUD.text = AbilityEquipDisplayValue; RightHandTechniqueHUD.text = RightHandTechniqueDisplayValue; RightHandEquipHUD.text = RightHandEquipDisplayValue; if (StatBarUIGroupTimerActive) { StatBarUIGroupTimer += Time.deltaTime; if (StatBarUIGroupTimer > StatBarUIGroupDisplayTime) { if (StatBarUIGroup.alpha > 0.0f) { StatBarUIGroup.alpha -= AlphaStep; } else { StatBarUIGroupTimerActive = false; } } } if (EquipmentAreaUIGroupTimerActive) { EquipmentAreaUIGroupTimer += Time.deltaTime; if (EquipmentAreaUIGroupTimer > EquipmentAreaUIGroupDisplayTime) { if (EquipmentAreaUIGroup.alpha > 0.0f) { EquipmentAreaUIGroup.alpha -= AlphaStep; } else { EquipmentAreaUIGroupTimerActive = false; } } } if (SelectorAreaUIGroupTimerActive) { SelectorAreaUIGroupTimer += Time.deltaTime; if (SelectorAreaUIGroupTimer > SelectorAreaUIGroupDisplayTime) { if (SelectorAreaUIGroup.alpha > 0.0f) { SelectorAreaUIGroup.alpha -= AlphaStep; } else { SelectorAreaUIGroupTimerActive = false; } } } if (NotificationAreaUIGroupTimerActive) { NotificationAreaUIGroupTimer += Time.deltaTime; if (NotificationAreaUIGroupTimer > NotificationAreaUIGroupDisplayTime) { if (NotificationAreaUIGroup.alpha > 0.0f) { NotificationAreaUIGroup.alpha -= AlphaStep; } else { NotificationAreaUIGroupTimerActive = false; } } } if (LeftDirectionalUIGroupTimerActive) { LeftDirectionalUIGroupTimer += Time.deltaTime; if (LeftDirectionalUIGroupTimer > LeftDirectionalUIGroupDisplayTime) { if (LeftDirectionalUIGroup.alpha > 0.0f) { LeftDirectionalUIGroup.alpha -= AlphaStep; } else { LeftDirectionalUIGroupTimerActive = false; } } } if (RightDirectionalUIGroupTimerActive) { RightDirectionalUIGroupTimer += Time.deltaTime; if (RightDirectionalUIGroupTimer > RightDirectionalUIGroupDisplayTime) { if (RightDirectionalUIGroup.alpha > 0.0f) { RightDirectionalUIGroup.alpha -= AlphaStep; HealthBarLR.value = HealthDisplayValue; HealthBarRL.value = HealthDisplayValue; StaminaBarLR.value = StaminaDisplayValue; StaminaBarRL.value = StaminaDisplayValue; MagicBarLR.value = MagicDisplayValue; MagicBarRL.value = MagicDisplayValue; } else { RightDirectionalUIGroupTimerActive = false; } } } //if (BigNotificationUIGroupTimerActive) //{ // BigNotificationUIGroupTimer += Time.deltaTime; // if (BigNotificationUIGroupTimer > BigNotificationUIGroupDisplayTime) // { // if (BigNotificationUIGroup.alpha > 0.0f) // { // BigNotificationUIGroup.alpha -= AlphaStep; // } // else // { // BigNotificationUIGroupTimerActive = false; // } // } //} } } }