using CustomComponent; using UI; using ProcedureOwner = GameFramework.Fsm.IFsm; namespace Procedure { public class ProcedureCombine : ProcedureBase { #region Property /// /// 拼装玩法组件入口。 /// private CombineComponent _combineComponent = null; /// /// 当前流程不使用原生对话框。 /// public override bool UseNativeDialog => false; #endregion #region FSM /// /// 进入流程:重置状态、订阅事件、拉取组件。 /// protected override void OnEnter(ProcedureOwner procedureOwner) { base.OnEnter(procedureOwner); AIChatEntryRuntime.EnsureOpen(); GameEntry.Dialog.Init(1); //GameEntry.Dialog.StartDialog(1001); GameEntry.Dialog.StartDialog(1002); // AIChatFormContext context = new AIChatFormContext(); // // AIChatFormController controller = new AIChatFormController(); // context.Controller = controller; // controller.OpenUI(context); } /// /// 离开流程:反订阅事件、停止关卡并清理状态。 /// protected override void OnLeave(ProcedureOwner procedureOwner, bool isShutdown) { base.OnLeave(procedureOwner, isShutdown); } /// /// 流程逐帧更新: /// 1. 未结算时推进关卡运行; /// 2. 已结算时推进重开倒计时。 /// protected override void OnUpdate(ProcedureOwner procedureOwner, float elapseSeconds, float realElapseSeconds) { base.OnUpdate(procedureOwner, elapseSeconds, realElapseSeconds); if (GameEntry.Dialog.IsInitialized) { } // if (TryUpdateRound(realElapseSeconds)) // { // return; // } // // TryRestartScene(procedureOwner, realElapseSeconds); } #endregion } }