public static void Create() { try { // Hide original healthBar Hud.instance.transform.Find("hudroot").Find("healthpanel").gameObject.SetActive(false); healthBarRoot = UnityEngine.Object.Instantiate(Hud.instance.m_healthBarRoot, Hud.instance.transform.Find("hudroot")); healthBarRoot.gameObject.name = objectName; // Rotate this to 90 int rot = 90 - (Main.healthBarRotation.Value / 90 % 4 * 90); healthBarRoot.localEulerAngles = new Vector3(0, 0, rot); healthBarFast = healthBarRoot.Find("fast").GetComponent <GuiBar>(); healthBarSlow = healthBarRoot.Find("slow").GetComponent <GuiBar>(); healthBarRoot.Find("fast").Find("bar").Find("HealthText").gameObject.SetActive(false); healthText = UnityEngine.Object.Instantiate(healthBarRoot.Find("fast").Find("bar").Find("HealthText").GetComponent <Text>(), healthBarRoot); healthText.GetComponent <RectTransform>().localEulerAngles = new Vector3(0, 0, -rot); healthText.GetComponent <RectTransform>().localScale = new Vector3(0.65f, 0.65f, 1f); healthText.gameObject.SetActive(true); // Resize to a more "slim" rectangle - authors preference healthBarRoot.Find("border").GetComponent <RectTransform>().localScale = new Vector3(1f, 0.65f, 1f); healthBarRoot.Find("bkg").GetComponent <RectTransform>().localScale = new Vector3(1f, 0.65f, 1f); healthBarFast.GetComponent <RectTransform>().localScale = new Vector3(1f, 0.65f, 1f); healthBarSlow.GetComponent <RectTransform>().localScale = new Vector3(1f, 0.65f, 1f); } catch (Exception e) { Debug.LogError($"HealthBar.Create() {e.Message}"); } }
public static void Create() { try { // Hide original staminaBar Hud.instance.transform.Find("hudroot").Find("staminapanel").gameObject.SetActive(false); staminaBarRoot = UnityEngine.Object.Instantiate(Hud.instance.m_healthBarRoot, Hud.instance.transform.Find("hudroot")); staminaBarRoot.gameObject.name = objectName; int rot = 90 - (Main.staminaBarRotation.Value / 90 % 4 * 90); staminaBarRoot.localEulerAngles = new Vector3(0, 0, rot); staminaBarFast = staminaBarRoot.Find("fast").GetComponent <GuiBar>(); staminaBarSlow = staminaBarRoot.Find("slow").GetComponent <GuiBar>(); staminaBarRoot.Find("fast").Find("bar").Find("HealthText").gameObject.SetActive(false); staminaText = UnityEngine.Object.Instantiate(staminaBarRoot.Find("fast").Find("bar").Find("HealthText").GetComponent <Text>(), staminaBarRoot); staminaText.GetComponent <RectTransform>().localEulerAngles = new Vector3(0, 0, -rot); staminaText.GetComponent <RectTransform>().localScale = new Vector3(0.65f, 0.65f, 1f); staminaText.gameObject.SetActive(true); staminaBarRoot.Find("border").GetComponent <RectTransform>().localScale = new Vector3(1f, 0.65f, 1f); staminaBarRoot.Find("bkg").GetComponent <RectTransform>().localScale = new Vector3(1f, 0.65f, 1f); staminaBarFast.GetComponent <RectTransform>().localScale = new Vector3(1f, 0.65f, 1f); staminaBarSlow.GetComponent <RectTransform>().localScale = new Vector3(1f, 0.65f, 1f); staminaBarFast.m_originalColor = Hud.instance.m_staminaBar2Fast.m_bar.GetComponent <Image>().color; staminaBarFast.ResetColor(); staminaBarSlow.m_originalColor = Hud.instance.m_staminaBar2Slow.m_bar.GetComponent <Image>().color; staminaBarSlow.ResetColor(); staminaBarFast.m_smoothDrain = Hud.instance.m_staminaBar2Fast.m_smoothDrain; staminaBarFast.m_changeDelay = Hud.instance.m_staminaBar2Fast.m_changeDelay; staminaBarFast.m_smoothSpeed = Hud.instance.m_staminaBar2Fast.m_smoothSpeed; } catch (Exception e) { Debug.LogError($"StaminaBar.Create() {e.Message}"); } }