void SetupResources() { Health = Parameters.i.GetResource(Defs.ResourceTypes.Health, baseHealth); activeResources.Add("Health"); RpcAddResource(Defs.ResourceTypes.Health, Health.Max); if (baseStamina != 0) { Stamina = Parameters.i.GetResource(Defs.ResourceTypes.Stamina, baseStamina); activeResources.Add("Stamina"); RpcAddResource(Defs.ResourceTypes.Stamina, Stamina.Max); } if (baseMana != 0) { Mana = Parameters.i.GetResource(Defs.ResourceTypes.Mana, baseMana); activeResources.Add("Mana"); RpcAddResource(Defs.ResourceTypes.Mana, Mana.Max); } if (baseBloodlust != 0) { Bloodlust = Parameters.i.GetResource(Defs.ResourceTypes.Bloodlust, baseBloodlust); RpcAddResource(Defs.ResourceTypes.Bloodlust, Bloodlust.Max); } if (baseSunlight != 0) { Sunlight = Parameters.i.GetResource(Defs.ResourceTypes.Sunlight, baseSunlight); RpcAddResource(Defs.ResourceTypes.Sunlight, Sunlight.Max); } if (baseMoonlight != 0) { Moonlight = Parameters.i.GetResource(Defs.ResourceTypes.Moonlight, baseMoonlight); RpcAddResource(Defs.ResourceTypes.Moonlight, Moonlight.Max); } if (baseCurse != 0) { Curse = Parameters.i.GetResource(Defs.ResourceTypes.Curse, baseCurse); //RpcAddResource(Defs.ResourceTypes.Curse, Curse.Max); } if (baseCorruption != 0) { Corruption = Parameters.i.GetResource(Defs.ResourceTypes.Corruption, baseCorruption); //RpcAddResource(Defs.ResourceTypes.Corruption, Corruption.Max); } if (baseDarkness != 0) { Darkness = Parameters.i.GetResource(Defs.ResourceTypes.Darkness, baseDarkness); RpcAddResource(Defs.ResourceTypes.Darkness, Darkness.Max); } ready = true; }
public Transfer(Parameters.Resource target) { Val = target.Val; Max = target.Max; PCT = target.PCT(); }
public void Setup(UnitCore caller, string[] activeResources, Defs.UnitType mode, bool isHostile) { parent = caller; cam = Camera.main; canvas = GameObject.Find("UI").GetComponent <Canvas>(); canvasGroup = GetComponent <CanvasGroup>(); ownerT = caller.transform; offset = UI_Styles.i.unitHUD.offset; //Get the prefabs guideLine = UI_Styles.i.unitHUD.guideLine; //Create the Container GameObject targetContainer; switch (Parameters.i.uHContainer[(int)mode]) { case Defs.LayoutSize.Large: targetContainer = UI_Styles.i.unitHUD.containerLarge; break; case Defs.LayoutSize.Medium: targetContainer = UI_Styles.i.unitHUD.containerMedium; break; case Defs.LayoutSize.Small: targetContainer = UI_Styles.i.unitHUD.containerSmall; break; default: targetContainer = new GameObject(); Debug.LogError("Switch Break! @Container"); break; } GameObject creation = Instantiate(targetContainer, transform); if (isHostile) { creation.GetComponent <Image>().color = UI_Styles.i.resources.hostility; } //Create the Bars for (int resource = 0; resource < activeResources.Length; resource++) { Parameters.Resource definiton = Parameters.i.GetResourceDefinition((Defs.ResourceTypes)Enum.Parse(typeof(Defs.ResourceTypes), activeResources[resource])); GameObject targetGauge; switch (definiton.uHBar[(int)mode]) { case Defs.LayoutSize.Large: targetGauge = UI_Styles.i.unitHUD.barLarge; screenOffset += new Vector3(0, 20); break; case Defs.LayoutSize.Medium: targetGauge = UI_Styles.i.unitHUD.barMedium; screenOffset += new Vector3(0, 14); break; case Defs.LayoutSize.Small: targetGauge = UI_Styles.i.unitHUD.barSmall; screenOffset += new Vector3(0, 8); break; default: targetGauge = new GameObject(); Debug.LogError("Switch Break! @Gauge"); break; } GameObject newGaugeObject = Instantiate(targetGauge, transform.GetChild(0)); ContainedElements newGauge = new ContainedElements { resource = (Defs.ResourceTypes)Enum.Parse(typeof(Defs.ResourceTypes), definiton.Name), root = newGaugeObject.transform, reductionAnimation = definiton.reductionAnimation, guideLines = definiton.guideLineInterval, }; newGauge.fill = newGauge.root.GetChild(1).GetComponent <Image>(); if (newGauge.reductionAnimation) { newGauge.reductionFill = newGauge.root.GetChild(0).GetComponent <Image>(); } elements.Add(newGauge); //Set Color newGauge.fill.color = definiton.Color; } if (caller.mode == Defs.UnitType.Player) { GameObject holder = Instantiate(UI_Styles.i.unitHUD.ability, transform); ability = holder.GetComponent <Image>(); ability.color = Color.clear; abilitySheet = UI_Styles.i.unitHUD.abilitySheet; } //Create the Guide Lines //UpdateGuideLines(caller); //Now Initialise the HUD //RefreshAll(caller); visionCanvasGroup = transform.GetChild(0).GetComponent <CanvasGroup>(); FadeMode(true); }