public void action(IBattleable actioner, BattleTask task) { if (ActiveSkillSupporter.canUseAffectSkill(actioner, task.getTargets(), this)) { return; } observer.used(); setBounsToCharacter(task.getTargets()); actioner.minusMp(cost); }
public void action(IBattleable actioner, BattleTask task) { if (!ActiveSkillSupporter.canUseAffectSkill(actioner, task.getTargets(), this)) { return; } attack(actioner, task.getTargets()); actioner.minusMp(this.cost); observer.used(); }
/// <summary> /// 最大射程を算出します /// </summary> /// <returns> 最大射程 </returns> /// <param name="user"> スキルを使用するIBattleableオブジェクト </param> private int calculateMaxRange(IBattleable user) { int maxRange = 0; var keys = skillSet.Keys; foreach (ActiveSkillCategory category in keys) { if (ActiveSkillSupporter.isAffectSkill(skillSet [category])) { int skillRange = ActiveSkillSupporter.searchRange(skillSet[category], user); if (skillRange > maxRange) { maxRange = skillRange; } } } return(maxRange); }