Exemplo n.º 1
0
    IEnumerator Aim(Animator animator)
    {
        RangerEnemyBehaviour rangerEnemy = animator.GetComponent <RangerEnemyBehaviour>();

        yield return(new WaitForSeconds(3));

        bool aiming = true;

        while (aiming)
        {
            Ray ray = new Ray(rangerEnemy.arco.transform.position, Vector3.forward);
            Debug.DrawRay(rangerEnemy.arco.transform.position, Vector3.forward);
            if (Physics.Raycast(ray, out hit))
            {
                Debug.Log(hit.collider.gameObject.name);
                if (hit.collider.CompareTag("Player"))
                {
                    aiming = false;
                    animator.SetTrigger("Shoot");
                }
            }

            yield return(new WaitForEndOfFrame());
        }
    }
Exemplo n.º 2
0
 override public void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
 {
     enemyBehaviour = animator.gameObject.GetComponent <RangerEnemyBehaviour>();
     if (!enemyBehaviour.arco.hasArrow)
     {
         enemyBehaviour.Recharge();
     }
     enemyBehaviour.Charge();
 }
Exemplo n.º 3
0
 override public void OnStateExit(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
 {
     enemyBehaviour = null;
 }