using UnityEngine;
namespace BaseGames.Enemies
{
///
/// BatchLOSSystem 的注册接口(架构 07_EnemyModule §12)。
/// 实现此接口的 EnemyBase 子类可以注册到 BatchLOSSystem,
/// 以批处理方式接收 LOS(Line of Sight)检测结果。
///
public interface ILOSRequester
{
/// 射线起点(通常是眼部位置)。
Vector2 LOSOrigin { get; }
/// 射线终点(通常是玩家位置)。
Vector2 LOSTarget { get; }
/// 遮挡 LOS 的物理图层。
LayerMask LOSBlockingMask { get; }
///
/// 接收 LOS 检测结果。
/// : true = 有视线,false = 被遮挡。
///
void ReceiveLOSResult(bool hasLineOfSight);
}
}