namespace BaseGames.Dialogue { /// /// 对话服务接口。通过 ServiceLocator 注册,供 NPC 和测试使用。 /// public interface IDialogueService { /// 当前是否有对话正在播放。 bool IsDialogueActive { get; } /// /// 启动对话序列。若已有对话在播放则忽略新请求。 /// /// 要播放的对话序列 SO。 /// NPC 标识符,对话结束时随 EVT_NpcDialogueCompleted 广播。 void StartDialogue(DialogueSequenceSO sequence, string npcId = ""); } }