/// <summary> /// 対象に指定された数値の計算をする処理 /// </summary> /// <returns>発生した効果の値</returns> public static int Action(ResourceType resource, int attack, BattleChar target, bool iscure) { switch (resource) { case ResourceType.HP: if (iscure) { target.SetCure(attack); return(attack); } else { var damage = target.CalcDamage(attack); target.SetDamage(damage); return(damage); } case ResourceType.SP: if (target is PlayerChar) { var targetPl = (PlayerChar)target; if (iscure) { targetPl.CureSP(attack); return(attack); } else { targetPl.UseSP(attack); return(attack); } } else { return(0); } default: return(0); } }