private void MakeFSM() { mFSMSystem = new EnemyFSMSystem(); EnemyChaseState chaseState = new EnemyChaseState(mFSMSystem, this); chaseState.AddTransition(EnemyTransition.CanAttack, EnemyStateID.Attack); EnemyAttackState attackState = new EnemyAttackState(mFSMSystem, this); attackState.AddTransition(EnemyTransition.LostSoldier, EnemyStateID.Chase); mFSMSystem.AddState(chaseState, attackState); }
private void MakeFsm() { Fsm = new EnemyFSMSystem(); EnemyChaseState chase = new EnemyChaseState(Fsm, this); chase.AddTransition(EnemyTransition.CanAttack, EnemyStateID.Attack); EnemyAttackState attack = new EnemyAttackState(Fsm, this); attack.AddTransition(EnemyTransition.LostSoldier, EnemyStateID.Chase); Fsm.AddState(chase, attack); }
private void MakeFSM() { mFSMSystem = new EnemyFSMSystem(); EnemyFSMState chaseState = new StateEnemyChase(mFSMSystem, player); chaseState.AddTransition(EnemyTransition.SoldierInTheAttackRange, EnemyStateID.AttackState); EnemyFSMState attackState = new StateEnemyAttack(mFSMSystem, player); attackState.AddTransition(EnemyTransition.SoldierOutOfTheAttackRange, EnemyStateID.ChaseState); mFSMSystem.AddState(chaseState); mFSMSystem.AddState(attackState); }
public SmallEnemyIdleState(EnemyFSMSystem fsm) : base(fsm) { _stateID = StateID.SmallIdle; }
public StateEnemyChase(EnemyFSMSystem mFSM, ICharacter mCharacter) : base(mFSM, mCharacter) { }
protected EnemyFSMState(EnemyFSMSystem fsm) { _Fsm = fsm; }
public SmallEnemyDeadState(EnemyFSMSystem fsm) : base(fsm) { _stateID = StateID.SmallDead; }
public EnemyAttackState(EnemyFSMSystem fsm, ICharacter c) : base(fsm, c) { mEnemyStateID = EnemyStateID.Attack; mAttackTimer = mAttackTime; }
public EnemyAttackState(EnemyFSMSystem fsm, ICharacter character) : base(fsm, character) { mStateID = EnemyStateID.Attack; }
public EnemyState(EnemyFSMSystem system, EnemyStateID stateID, Character character) { System = system; StateID = stateID; Character = character; }
public EnemyAttackState(EnemyFSMSystem system, Character character) : base(system, EnemyStateID.Attack, character) { }
protected EnemyFSMState(EnemyFSMSystem mFSM, ICharacter mCharacter) { this.mFSM = mFSM; this.mCharacter = mCharacter; }
public SmallEnemyTakeDamageState(EnemyFSMSystem fsm) : base(fsm) { _stateID = StateID.SmallTakeDamadge; }
public IEnemyState(EnemyFSMSystem fsm, ICharacter character) { mFSM = fsm; mCharacter = character; mTargetPosition = GameFacade.Instance.GetEnemyTargetPosition(); }
public SmallEnemyAttackState(EnemyFSMSystem fsm) : base(fsm) { _stateID = StateID.SmallAttack; }
private float mAtkTimer;//攻击计时器 public EnemyAttackState(EnemyFSMSystem fsm, ICharacter character) : base(fsm, character) { mEnemyStateID = EnemyStateID.Attack; mAtkTimer = mCharacter.AtkColdTime; }
public EnemyChaseState(EnemyFSMSystem system, Character character) : base(system, EnemyStateID.Chase, character) { }
public SmallEnemyChaseState(EnemyFSMSystem fsm) : base(fsm) { _stateID = StateID.SmallChase; }
public SmallEnemyRelaxState(EnemyFSMSystem fsm) : base(fsm) { _stateID = StateID.SmallRelax; }
public IEnemyState(EnemyFSMSystem fsm, ICharacter character) { mFSM = fsm; mCharacter = character; }
public EnemyAttackState(EnemyFSMSystem fsm, ICharacter charater) : base(fsm, charater) { m_StateID = EnemyStateID.Attack; m_AttackTimer = m_AttackTime; }
public EnemyChaseState(EnemyFSMSystem fsm, ICharacter character) : base(fsm, character) { mStateID = EnemyStateID.Chase; }
public virtual void MakeFSM() { _fsm = new EnemyFSMSystem(this); SmallEnemyIdleState smallEnemyIdle = new SmallEnemyIdleState (_fsm); smallEnemyIdle.AddTransition(Transition.IdleToChase, StateID.SmallChase); smallEnemyIdle.AddTransition(Transition.IdleToTakeDamadge, StateID.SmallTakeDamadge); smallEnemyIdle.AddTransition(Transition.IdleToRelax, StateID.SmallRelax); smallEnemyIdle.AddTransition(Transition.IdleToDead, StateID.SmallDead); SmallEnemyChaseState smallEnemyChase = new SmallEnemyChaseState (_fsm); smallEnemyChase.AddTransition(Transition.ChaseToIdle, StateID.SmallIdle); smallEnemyChase.AddTransition(Transition.ChaseToAttack, StateID.SmallAttack); smallEnemyChase.AddTransition(Transition.ChaseToTakeDamadge, StateID.SmallTakeDamadge); smallEnemyChase.AddTransition(Transition.ChaseToDead, StateID .SmallDead); SmallEnemyRelaxState smallEnemyRelax = new SmallEnemyRelaxState (_fsm); smallEnemyRelax.AddTransition(Transition.RelaxToIdle, StateID.SmallIdle); smallEnemyRelax.AddTransition(Transition.RelaxToTakeDamadge, StateID.SmallTakeDamadge); smallEnemyRelax.AddTransition(Transition.RelaxToDead, StateID.SmallDead); SmallEnemyAttackState smallEnemyAttack = new SmallEnemyAttackState(_fsm); smallEnemyAttack.AddTransition(Transition.AttackToIdle, StateID.SmallIdle); smallEnemyAttack.AddTransition(Transition.AttackToDead, StateID.SmallDead); smallEnemyAttack.AddTransition(Transition .AttackToTakeDamadge, StateID.SmallTakeDamadge); SmallEnemyTakeDamageState smallEnemyTakeDamage = new SmallEnemyTakeDamageState(_fsm); smallEnemyTakeDamage.AddTransition( Transition.TakeDamadgeToIdle, StateID.SmallIdle); SmallEnemyDeadState smallEnemyDead = new SmallEnemyDeadState(_fsm); smallEnemyDead.AddTransition(Transition.DeadToIdle, StateID.SmallIdle); if (_animator == null) { _animator = GetComponent <Animator>(); } if (isBoomMonster) { _fsm.AddStates(smallEnemyIdle, smallEnemyChase, smallEnemyAttack, smallEnemyTakeDamage, smallEnemyDead); } else { _fsm.AddStates(smallEnemyRelax, smallEnemyIdle, smallEnemyChase, smallEnemyAttack, smallEnemyTakeDamage, smallEnemyDead); } _fsm.AddStates(smallEnemyRelax); }