public override void Exit(AIState nextState) { base.Exit(nextState); _character.Damageable.OnHit -= OnTakeDamage; }
private void OnArriveDestination(bool success) { AIState nextState = success ? _onArrivedTargetState : _onTargetLostState; FireReadyToChangeState(nextState); }
public override void Exit(AIState nextState) { base.Exit(nextState); _character.ActionController.CurrentState.OnActionStatusUpdated -= OnActionStatusUpdated; }
public override void Exit(AIState nextState) { base.Exit(nextState); _npcMoveController.OnArriveDestination -= OnArriveDestination; _npcMoveController.SetMoveMode(CharacterMoveMode.Stopped); }
protected void FireReadyToChangeState(AIState state) { OnReadyToChangeState?.Invoke(state); }
public override void Exit(AIState nextState) { base.Exit(nextState); _npcTargetManager.OnCurrentTargetSet -= OnCurrentTargetUpdated; }
public void AddStateToQueue(AIState state) { _queuedAIStates.Enqueue(state); }
public override void Exit(AIState nextState) { base.Exit(nextState); _character.AnimationController.OnAnimationStateUpdated -= OnAnimationStateUpdated; }