public void GroupAttack(TurnBehaviour.TurnInfo info, List <Character> targets, List <Character> storeTargets) { foreach (Character chara in targets) { info.ability.Apply(info.player, chara); string name = info.ability.anim.ToString(); info.player.GetComponent <Animator>().Play(name); chara.GetComponent <Animator>().Play("Hit"); //storeTargets.Add(chara); } //if player character, will allow them to go back to isle anim if (info.player.tag != "Enemy") { info.player.GetComponent <Animator>().SetBool("IdleTransition", true); } }
//if the player has no valid target, selects one for it public void RandomTargetSelect(TurnBehaviour.TurnInfo info) { if (info.player.target == null) { int rand = Random.Range(0, enemies.Count); info.player.target = enemies[rand].gameObject; } if (info.player.target.GetComponent <Character>().Hp <= 0) { //add check if target is dead, if so randomly selects enemy to fight for (int i = 0; i < enemies.Count; i++) { if (enemies[i].GetComponent <Character>().Hp > 0) { info.player.target = enemies[i].gameObject; break; } else { info.player.target = null; } } } }
public void Display(TurnBehaviour.TurnInfo info) { descriptionText.text = info.player.characterName + " used " + info.ability.powName; }