using UnityEngine;
namespace BaseGames.AI
{
/// 移动执行器的行为模式。
public enum LocomotionMode { Idle, Patrol, Face, Approach }
/// 巡逻策略(Patrol 模式下的具体走法)。
public enum PatrolStrategy { Wander, Pace, Waypoints }
///
/// 敌人移动执行器的声明式接口。AI/能力只"声明意图",执行在实现内部完成
/// (AI 不 actuate)。实现见 BaseGames.Enemies.EnemyLocomotion。
///
public interface IEnemyLocomotion
{
void SetMode(LocomotionMode mode); // Idle(停) / Patrol(按配置策略游走)
void Approach(Transform target); // 持续跟随,派生 RunSpeed
void MoveTo(Vector2 point); // 一次性目标点
void Face(Vector2 lookAt); // 停 + 朝向
void Stop();
LocomotionMode CurrentMode { get; }
bool IsMoving { get; }
}
}