示例#1
0
 void Awake()
 {
     player       = GameObject.FindGameObjectWithTag("Player");
     tran         = GameObject.FindGameObjectWithTag("Player").transform;
     playerHealth = player.GetComponent <playerHP> ();
     enemyHealth  = GetComponent <skeletHP> ();
     nav          = GetComponent <NavMeshAgent> ();
     anim         = GetComponent <Animator> ();
     skeletAttack = GetComponent <skeletAttack> ();
 }
示例#2
0
    void Awake()
    {
        hitCol = GetComponentInChildren <hitCol> ();

        agent        = GetComponent <NavMeshAgent> ();
        tran         = GetComponent <Transform> ();
        player       = GameObject.FindGameObjectWithTag("Player");
        playerHealth = player.GetComponent <playerHP> ();
        enemyHealth  = GetComponent <skeletHP>();
        anim         = GetComponent <Animator> ();
        dontRot      = false;
    }
示例#3
0
    void Shoot()
    {
        timer = 0f;

        gunAudio.Play();

        gunLight.enabled = true;

        gunParticles.Stop();
        gunParticles.Play();

        gunParticles.startLifetime = gunParticles.startLifetime;

        gunLine.enabled = true;
        gunLine.SetPosition(0, transform.position);

        shootRay.origin    = transform.position;
        shootRay.direction = transform.forward;

        if (Physics.Raycast(shootRay, out shootHit, range, shootableMask))
        {
            skeletHP       enemyHealth = shootHit.collider.GetComponent <skeletHP> ();
            skeletHP_Mage_ mageHealth  = shootHit.collider.GetComponent <skeletHP_Mage_> ();

            if ((enemyHealth != null) && (mageHealth == null))
            {
                enemyHealth.TakeDamage(damagePerShot /*, shootHit.point*/);
            }
            else
            {
                if ((enemyHealth == null) && (mageHealth != null))
                {
                    mageHealth.TakeDamage(damagePerShot /*, shootHit.point*/);
                }
            }
            gunLine.SetPosition(1, shootHit.point);
        }
        else
        {
            gunLine.SetPosition(1, shootRay.origin + shootRay.direction * range);
        }
    }