/// <summary> /// 接受事件,切换状态 /// </summary> /// <param name="e"></param> /// <returns></returns> protected override Core.FSM.FiniteStateMachine <Game> .State _DoEvent(Core.FSM.Event e) { switch ((FSMEventType)e.ID) { case FSMEventType.ReStartGameEvent: //重新开始 return(new StartState(_Content)); case FSMEventType.GameHallEvent: // 切换到游戏大厅 return(new GameHallState(_Content)); default: break; } return(this); }
/// <summary> /// 接收状态机事件 /// </summary> /// <param name="e"></param> /// <returns></returns> protected override Core.FSM.FiniteStateMachine <Room> .State _DoEvent(Core.FSM.Event e) { switch ((FSMEventType)e.ID) { case FSMEventType.RollEvent: //roll切换到掷筛子状态 // Console.Error.WriteLine ("进入掷骰子"); return(new RollState(_Content)); case FSMEventType.StayEvent: //stay切换到掷筛子状态 return(new StayState(_Content)); default: break; } return(this); }
protected override void _OnExit(Core.FSM.Event e, FSM.State nextState) { #if UNITY_EDITOR UIUpdateSelectWindow.Toggle(); #endif }
/// <summary> /// 如果在编辑器下,显示选择网络还是单机。手机上直接进入登录引导界面 /// </summary> /// <param name="e"></param> /// <param name="lastState"></param> public override void Enter(Core.FSM.Event e, FSM.State lastState) { #if UNITY_EDITOR UIUpdateSelectWindow.Toggle(); #endif }