// private GameObject prefabObject; private void Awake() { stateMachine = new ImtStateMachine <CharacterControll>(this); stateMachine.AddTransition <IdleState, ActiveState>((int)StateEventID.Active); stateMachine.AddTransition <ActiveState, IdleState>((int)StateEventID.Idle); stateMachine.SetStartState <ActiveState>(); }
private void Awake() { stateMachine = new ImtStateMachine <EnemyController>(this); stateMachine.AddTransition <IdleState, AttackState>((int)StateEventID.Attack); stateMachine.AddTransition <AttackState, IdleState>((int)StateEventID.Idle); stateMachine.SetStartState <IdleState>(); // agent = GameObject.FindGameObjectWithTag("Enemy").GetComponent<MoverAgent>(); }
private void Awake() { stateMachine = new ImtStateMachine <Block>(this); stateMachine.AddTransition <AliveState, DeadState>((int)StateEventId.Dead); stateMachine.AddTransition <DeadState, AliveState>((int)StateEventId.Revive); stateMachine.SetStartState <AliveState>(); }
private void Start( ) { State = new ImtStateMachine <DragBar>(this); State.AddTransition <IdleState, NoDragState>(NoDragInt); State.AddTransition <NoDragState, IdleState>(IdleInt); State.AddTransition <IdleState, DragState>(DragInt); State.AddTransition <DragState, IdleState>(IdleInt); State.SetStartState <IdleState>( ); }
/// <summary> /// ステートマシーンの遷移テーブルの作成 /// </summary> void CreateStateTable() { // ステートマシンのインスタンスを生成して遷移テーブルを構築 stateMachine = new ImtStateMachine <TapToStartEvent>(this); // 自身がコンテキストになるので自身のインスタンスを渡す stateMachine.AddTransition <BeforeGameStartState, AfterGameStartState>((int)StateEventId.StartGame); stateMachine.AddTransition <AfterGameStartState, BeforeGameStartState>((int)StateEventId.Restart); // 起動ステートを設定(起動ステートは EnableState) stateMachine.SetStartState <BeforeGameStartState>(); }
// コンポーネントの初期化 private void Awake() { // リキッドボディのコンポーネントを取得 myRigidbody = GetComponent <Rigidbody>(); // ステートマシンの遷移テーブルを構築(コンテキストのインスタンスはもちろん自分自身) stateMachine = new ImtStateMachine <Player>(this); stateMachine.AddTransition <DisabledState, EnabledState>((int)StateEventId.Enable); stateMachine.AddTransition <EnabledState, DisabledState>((int)StateEventId.Disable); // 起動状態はDisabled stateMachine.SetStartState <DisabledState>(); }
// コンポーネントの初期化 private void Awake() { // ステートマシンの遷移テーブルを構築(コンテキストのインスタンスはもちろん自分自身) stateMachine = new ImtStateMachine <MainGameScene>(this); stateMachine.AddTransition <ResetState, StandbyState>((int)StateEventId.Finish); stateMachine.AddTransition <StandbyState, PlayingState>((int)StateEventId.Play); stateMachine.AddTransition <PlayingState, MissState>((int)StateEventId.Miss); stateMachine.AddTransition <PlayingState, GameClearState>((int)StateEventId.AllBlockBloken); stateMachine.AddTransition <MissState, StandbyState>((int)StateEventId.Retry); stateMachine.AddTransition <MissState, GameOverState>((int)StateEventId.Exit); stateMachine.AddTransition <GameClearState, ResetState>((int)StateEventId.Finish); stateMachine.AddTransition <GameOverState, ResetState>((int)StateEventId.Finish); // 起動状態はReset stateMachine.SetStartState <ResetState>(); }