public virtual bool CheckTransitionToMoving(TrunkFSM trunk) { InvertDirectionIfNeeded(trunk); trunk.TransitionToState(trunk.MovingState); return(true); }
public virtual bool CheckTransitionToAttacking(TrunkFSM trunk) { if (trunk.attackCooldownTimer <= 0 && PlayerIsOnSight(trunk)) { trunk.TransitionToState(trunk.AttackingState); return(true); } return(false); }
public virtual bool CheckTransitionToDying(TrunkFSM trunk) { if (trunk.currentHealth <= 0) { trunk.TransitionToState(trunk.DyingState); return(true); } return(false); }
public override bool CheckTransitionToIdle(TrunkFSM trunk) { if (!ThereIsGroundToWalk(trunk) || ReachedObstacle(trunk)) { trunk.needToTurn = true; trunk.TransitionToState(trunk.IdleState); return(true); } return(false); }
public virtual bool CheckTransitionToIdle(TrunkFSM trunk) { trunk.TransitionToState(trunk.IdleState); return(true); }