static string ConvertEffect(CommandData data) { bool iscure = CommandEnumAction.IsCure(data._target); switch (data._targetResourceType) { case ResourceType.HP: if (iscure) { return("対象を回復"); } else { return("対象にダメージ"); } case ResourceType.SP: if (iscure) { return("対象のSPを回復"); } else { return("対象のSPにダメージ"); } default: return(""); } }
public static string Format(ICommandData idata, string beforeText) { var data = idata.GetCommandData(); string result = ""; result = $"{beforeText}\n" + $"対象:{CommandEnumAction.Target2String(data._target)}\n" + $"消費:{CommandEnumAction.Resource2String(data._useResourceType)} {ConverUseNum(data._useNum)}\n" + $"効果:{ConvertEffect(data)}"; return(result); }
//引数多すぎてよくわからなくなる public void TurnAction(BattleChar user, BattleChar inputTarget, ICommandData icommand , Action <bool, bool, BattleChar, int> damageAction = null , List <BattleChar> friends = null, List <BattleChar> enemys = null) { var command = icommand.GetCommandData(); UseResource(user, icommand); var effectNum = CalcEffectNum(user, command); var targetPool = Battle_targetDicide.GetTargetPool(command._target, user, friends, enemys); var targetList = Battle_targetDicide.SelectTarget(command._target, targetPool, inputTarget); TrrigerEffect(effectNum, command, targetList, CommandEnumAction.IsCure(command._target) , damageAction); }