public void DoPhysicsActions(PluggableStateController controller) { for (int i = 0; i < _actions.Length; i++) { _actions[i].FixedLogicUpdate(controller); } }
public override bool Condition(PluggableStateController controller) { bool canSeePlayer = Physics2D.Raycast(controller.WalkingController.WallCheck.position, controller.WalkingController.vectorDirection, controller.WalkingController.VisionDistance, controller.WalkingController.PlayerLayer); return(canSeePlayer); }
public void DoBasicActions(PluggableStateController controller) { CheckTransitions(controller); for (int i = 0; i < _actions.Length; i++) { _actions[i].LogicUpdate(controller); } }
public void CheckTransitions(PluggableStateController controller) { foreach (var transition in _transitions) { if (transition.Decision.Condition(controller)) { controller.StateMachine.ChangeState(transition.TransitionToState); } } }
public PluggableStateMachine(PluggableStateController controller) { _pluggableStateController = controller; }
public abstract void FixedLogicUpdate(PluggableStateController controller);
public override void LogicUpdate(PluggableStateController controller) { controller.WalkingController.CheckDirection(); }
public override void FixedLogicUpdate(PluggableStateController controller) { controller.WalkingController.Walk(); }
public virtual void OnEnter(PluggableStateController controller) { controller.Animator.SetBool(_animBoolName, true); controller.SetStartTime(Time.time); controller.Enemy.AllowDamage(true); }
public virtual void OnExit(PluggableStateController controller) { controller.Animator.SetBool(_animBoolName, false); }
public override void OnEnter(PluggableStateController controller) { base.OnEnter(controller); // do special stuff onentering patrol state }
public override void OnExit(PluggableStateController controller) { base.OnExit(controller); //do special stuff onexiting patrol state }
public abstract bool Condition(PluggableStateController controller);