using UnityEngine; using System.Collections; using System.Collections.Generic; using System; namespace YLBattle { /// /// LogicFighter管理接口 /// public interface ILogicFighterOper { /// /// 寻求朋友帮助 /// /// 占位 void SetFriendHelp(int seat, bool isShowTip = false); /// /// 查找指定战斗对象 /// /// 对象唯一编号 /// 目标 LogicFighter FindFighter(string id); /// /// 获取目前存活人员 /// List FindAliveFighter(); /// /// 获取所有人员 /// List FindFighter(); /// /// 获取指定队伍目前存活人员 /// /// 队伍描述 /// 人员列表 List FindTeamAliveFighter(EBattleTeam team); /// /// 获取指定角色的敌人队伍存活列表 /// /// 参照对象编号 /// 敌方存活角色列表 List FindEnemyTeam(string id); /// /// 获取指定角色的友方队伍存活列表 /// /// 参照对象编号 /// 友方存活角色列表,包含自己 List FindFriendTeam(string id); /// /// 根据站位查找fighter /// /// 指定占位 /// 所属队列 /// LogicFighter FindFighterBySeat(int _seat, EBattleTeam team); /// /// 查找与目标指定关系的对象列表 /// /// 参照对象编号 /// 关系过滤 /// 对象列表 List FindRelationAliveFighters(string id, EBattleRelation relation); /// /// 获得当前存活的按攻击速度排序的所有人员 /// /// List FindAliveSortFighter(EBattleTeam _team); /// /// 获取指定队伍人员 /// /// 目标队伍 /// 对象列表 List FindTeamAllFighter(EBattleTeam team); /// /// 选择地图中间的人 /// /// LogicFighter FindCenterEnemy(string who, EBattleTeam _team); /// /// 刷新当前地图中间位置的橘色 /// /// /// LogicFighter OnUpdateMapCenterFighter(EBattleTeam _team); /// /// 禁用指定战斗对象 /// /// 角色编号 void MarkDeathFighter(string id); /// /// 从死亡列表中移除指定对象 /// /// 对象id void RemoveFighterFromDeath(string id); /// /// 英雄受到治疗效果 /// /// 目标对象id /// 治疗值 void OnCureLogicFighter(string who, float cure, float tipdelayTime = 0); /// /// 英雄能量恢复 /// /// 目标对象id /// 能量值 /// 是否需要提示信息 void OnCurePower(string who, float power, bool isTip = false); /// /// 英雄受到魔法伤害 /// /// 施法者ID /// 目标对象ID /// 伤害数值 /// 是否暴击 /// 是否必杀 /// tip延迟时间 void OnMagicDamageToBattleFighter(string casterID, string targetID, float damage, bool isCritical = false, float tipdelayTime = 0); /// /// 角色受伤恢复Power /// /// 事件内容 //void OnFighterDamageHandle(string who, float damage); } }