using ET.EventType; using System; using System.Collections.Generic; namespace ET { public class TreatEventEvent : AEvent { public override async ETTask Run(TreatEvent args) { try { Unit attacker = args.attacker; if (attacker.teamState == TeamState.Fight) { CopyBattle battleBase = BattleMgrCompnent.Instance.GetBattle(attacker); if (battleBase == null) { Log.Error($"battleBase is null"); return; } if (battleBase.battleType == BattleType.FamilyBoss) { ChangeTreatData (battleBase,attacker, args.treat); } } } catch (Exception e) { Log.Error(e); } await ETTask.CompletedTask; } public static void ChangeTreatData(CopyBattle battleBase, Unit unit, int treat) { BossDamageMap map = battleBase.bossDamageMap; for (int i = map.DamageList.Count - 1; i >= 0; i--) { BossDamagePerMemberMap info = map.DamageList[i]; if (info.Id == unit.Id) { info.Treat += treat; return; } } } } }