private void MakeFSM() { IdleState idle = new IdleState(); idle.AddTransition(Transition.Walk, StateID.Walk); idle.AddTransition(Transition.Jump, StateID.Jump); idle.AddTransition(Transition.Die, StateID.Die); WalkState walk = new WalkState(path); walk.AddTransition(Transition.Idle, StateID.Idle); walk.AddTransition(Transition.Jump, StateID.Jump); walk.AddTransition(Transition.Die, StateID.Die); JumpState jump = new JumpState(); jump.AddTransition(Transition.Idle, StateID.Idle); jump.AddTransition(Transition.Die, StateID.Die); DeadState die = new DeadState(); fsm = new FSMSystem(); fsm.AddState(idle); fsm.AddState(walk); fsm.AddState(jump); fsm.AddState(die); }
private void MakeFSM() { IdleState idleState = new IdleState(this, StateID.IdleState); WalkState walkState = new WalkState(this, StateID.PatrolState, walkSpeed); //IdleState idleState.AddTransition(new TimeTransition(walkState, idleTime)); //WalkState walkState.AddTransition(new TimeTransition(idleState, walkTime)); _fsm.AddState(idleState); _fsm.AddState(walkState); }
public void InitStateSystem() //初始化管理员 { IdleState idle = new IdleState(this.gameObject, this); idle.AddTransition(Transition.eTransiton_Object_Walk, StateID.eStateID_Object_Walk); WalkState walk = new WalkState(this.gameObject, this); walk.AddTransition(Transition.eTransiton_Object_Idle, StateID.eStateID_Object_Idle); m_StateSystem = new StateSystem(); m_StateSystem.AddState(idle); m_StateSystem.AddState(walk); }