示例#1
0
    private void OnEnterState(PursuerEnemyState newState)
    {
        switch (newState)
        {
        case PursuerEnemyState.Idle:
            navMeshAgent.isStopped = true;
            navMeshAgent.velocity  = Vector3.zero;
            break;

        case PursuerEnemyState.Pursue:
            animator.SetTrigger("chase");
            speed = originalSpeed;
            navMeshAgent.speed        = speed;
            navMeshAgent.acceleration = speed;
            break;

        case PursuerEnemyState.Catch:
            //manager.character.active = false;
            //manager.cursor.line.ResetLine();
            animator.SetTrigger("dash");
            audioSource.PlayOneShot(dashAudioClip);
            StartCoroutine(CurveSpeed(speed, speedOnDash, curveDuration));
            break;
        }
    }
示例#2
0
 private void ChangeState(PursuerEnemyState newState)
 {
     OnExitState();
     OnEnterState(newState);
     state = newState;
 }