예제 #1
0
 void OpenFire()
 {
     if (Physics.Raycast(camTransform.TransformPoint(startPosition), camTransform.forward, out hit, range))
     {
         if (hit.transform.GetComponent <NPCTakeDamage>() != null)
         {
             gunMaster.CallEventShotEnemy(hit, hit.transform);
         }
         else
         {
             gunMaster.CallEventShotDefault(hit, hit.transform);
         }
     }
 }
예제 #2
0
        void NPCFireGun(float randomness)
        {
            Vector3 startPosition = new Vector3(Random.Range(-randomness, randomness), Random.Range(-randomness, randomness), 0.5f);

            if (Physics.Raycast(myTransform.TransformPoint(startPosition), myTransform.forward, out hit, GetComponent <GunShoot>().range, layersToDamage))
            {
                if (hit.transform.GetComponent <NPCTakeDamage>() != null || hit.transform == GameManagerReferences._player.transform)
                {
                    gunMaster.CallEventShotEnemy(hit, hit.transform);
                }
                else
                {
                    gunMaster.CallEventShotDefault(hit, hit.transform);
                }
            }
        }