using CombatLibrary.CombatLibrary.CombatCore.CustomizeTimeLogic.FxLogic; using Excel2Json; using Fort23.Core; using GameLogic.Combat.Hero; using Utility; namespace GameLogic.Combat.CombatTool { public class CombatCalculateTool : Singleton { public HarmReturnInfo Harm(CombatHeroEntity source, CombatHeroEntity target, long att, AttType attType, TriggerData triggerData, HarmType harmType = HarmType.Null) { return Harm(source, target.GetMainHotPoin(), att, attType, triggerData, harmType); } /// /// 造成伤害 /// n /// 攻击方 /// 被攻击方 /// 伤害值 public HarmReturnInfo Harm(CombatHeroEntity source, CombatHeroHitPoint target, long att, AttType attType, TriggerData triggerData, HarmType harmType = HarmType.Default) { HarmReturnInfo harmReturnInfo = new HarmReturnInfo(); harmReturnInfo.source = source; harmReturnInfo.target = target; harmReturnInfo.att = att; harmReturnInfo.attType = attType; harmReturnInfo.harmType = harmType; harmReturnInfo.triggerData = triggerData; if (target.combatHeroEntity.isDie) { return harmReturnInfo; } target.combatHeroEntity.HeroHurt(harmReturnInfo); return harmReturnInfo; } } }