//Called when a UI ability button is selected public void selectAbility() { //temporary variable holding the ability name string nameOfAbility = GameObject.Find("AbilityName").GetComponentInChildren <Text>().text; //foreach statement to find the ability of the button pressed foreach (var Ability in referenceBattleEngine.HeroData.Abilities) { if (nameOfAbility == Ability.name) { referenceBattleEngine.ChosenAbility = Ability; Debug.Log("targetAbility is now: " + referenceBattleEngine.ChosenAbility.name); referenceBattleEngine.usingAbility = true; } } //enable enemy targeting canvas referenceUImanager.targetEnemyCanvasParent.SetActive(true); //disable ability selection canvas GameObject.Find("AbilitiesPanel").SetActive(false); //delete instantiated ability buttons referenceUImanager.DeleteItemsPrefab(); //instantiate target enemy buttons referenceUImanager.InstantiateTargetEnemyPrefab(); }
void Delay() { Debug.Log("Delay Working"); //activate hero action panel referenceUImanager.ActionPanel.SetActive(true); //delete button prefabs referenceUImanager.DeleteItemsPrefab(); }
public void onClick() { //assign item to chosen item referencer in battlemanager script foreach (var item in GameObject.Find("BattleManager").GetComponentInChildren <BattleEngine>().HeroData.Inventory) { if (gameObject.GetComponentsInChildren <Text>()[0].text == item.itemName) { GameObject.Find("BattleManager").GetComponentInChildren <BattleEngine>().ChosenItem = item; } } //activate target enemy panel referenceUImanager.targetEnemyCanvasParent.SetActive(true); //disable inventory panel GameObject.Find("InventoryPanel").SetActive(false); //delete item prefabs referenceUImanager.DeleteItemsPrefab(); //instantiate targethero prefabs referenceUImanager.InstantiateTargetHeroPrefab(); }
public void setHeroTarget() { i = 0; BattleEngine referenceBattleEngine = GameObject.Find("BattleManager").GetComponentInChildren <BattleEngine>(); UImanager referenceUImanager = GameObject.Find("BattleManager").GetComponentInChildren <UImanager>(); DamageManager referenceDamageManager = GameObject.Find("BattleManager").GetComponentInChildren <DamageManager>(); var item = referenceBattleEngine.ChosenItem; foreach (var hero in referenceBattleEngine.baseHeros) { if (hero.name == gameObject.GetComponentsInChildren <Text>()[0].text) { targetHero = hero; } } switch (item.StatusEffect.ToString()) { case "REVIVE": if (targetHero.curHP <= 0) { targetHero.curHP += item.restoreValue; Debug.Log(targetHero.name + "has been revived!"); } else { Debug.Log(item.itemName + " had no effect!"); } break; case "HEALTH": if (targetHero.curHP > 0 && targetHero.curHP > targetHero.baseHP) { targetHero.curHP += item.restoreValue; Debug.Log(targetHero.name + "has been healed!"); } else { Debug.Log(item.itemName + " had no effect!"); } break; case "MANA": if (targetHero.curHP > 0 && targetHero.curMP > targetHero.baseMP) { targetHero.curMP += item.restoreValue; Debug.Log(targetHero.name + "has been given MP!"); } else { Debug.Log(item.itemName + " had no effect!"); } break; case "MULTIRESTORE": if (targetHero.curHP > 0) { targetHero.curHP += item.restoreValue; targetHero.curMP += item.restoreValue; Debug.Log(targetHero.name + "has been healed and given MP!"); if (targetHero.curHP > targetHero.baseHP) { targetHero.curHP = targetHero.baseHP; } if (targetHero.curMP > targetHero.baseMP) { targetHero.curMP = targetHero.baseMP; } } else { Debug.Log(item.itemName + " had no effect!"); } break; } foreach (var inventoryItem in referenceBattleEngine.HeroData.Inventory) { if (inventoryItem.itemName == item.itemName) { referenceBattleEngine.HeroData.Inventory.RemoveAt(i); break; } i++; } if (referenceBattleEngine.HeroData != referenceBattleEngine.Hero4Data) { Invoke("Delay", 1); referenceUImanager.ActionPanel.SetActive(true); } referenceUImanager.DeleteItemsPrefab(); GameObject.Find("TargetEnemyPanel").SetActive(false); referenceBattleEngine.StateControl(); }