using UnityEngine; public interface IAIControllable { bool IsIdle(); // 巡逻 bool IsPatrol(); bool IsInAttackRange(int id); int Attack(int id); int GetNearestEnemyIdInSearchingRange(); // 其他非移动目标的目标,例如攻击目标 bool HasAttentionTarget(); int GetAttentionTargetId(); void StopMove(); void MoveTo(Vector2Int position); void MoveTo(int id); bool HasMoveTarget(); int GetMoveTargetId(); Vector2Int GetMoveTargetPosition(); bool IsMoving(); }