/// <summary> /// Pick and use an attack /// </summary> void UseAttack() { //TODO: Need simple AI to pick attacks. //Skill ability = abilties[2]; Skill ability = abilties [rnd.Next(0, 3)]; while (ability.IsOnCD()) { ability = abilties [rnd.Next(0, 3)]; } Debug.Log("Enemy used " + ability.name + "!"); ability.ActivateCD(); foreach (Effect eff in ability.effects) { eff.ActivateEffect(Player._instance, this, PCNPC.NPC); } if (ability.selfTar) // Healing { if (ability.selfDam) //Damage { CombatController._instance.EnemySelfDamage(ability.CalDmg(AP, critChance)); } else { CombatController._instance.HealEnemy(ability.CalDmg(AP, critChance)); } } else // Damage { CombatController._instance.AttackPlayer(ability.CalDmg(AP, critChance)); } }
/// <summary> /// Uses ability. /// </summary> /// <param name="ability">Ability.</param> public void UseAbility(Skill ability) { if (myTurn) { if (ability.IsOnCD()) { Debug.Log(ability.name + " is on Cooldown"); } else { myTurn = false; Debug.Log("Player used " + ability.name + "!"); ability.ActivateCD(); foreach (Effect eff in ability.effects) { eff.ActivateEffect(this, CC.currentEnemy, PCNPC.PC); } if (ability.selfTar) // Healing { if (ability.selfDam) //Damage { CombatController._instance.PlayerSelfDamage(ability.CalDmg(AP, critChance)); } else { CombatController._instance.HealPlayer(ability.CalDmg(AP, critChance)); } } else // Damage { CombatController._instance.AttackEnemy(ability.CalDmg(AP, critChance)); } } //Updates the visual CD effect. ABU.UpdateButtons(); } }