コード例 #1
0
 void openFire()
 {
     //Debug.Log("Open Fire Called");
     if (Physics.Raycast(camTransform.TransformPoint(bulletStartPosition), camTransform.forward, out hitTarget, gunRange))
     {
         if (hitTarget.transform.GetComponent <NPCManager_TakeDamage>() != null)
         {
             gunManagerMasterScript.callEnemyShotEvent(hitTarget, hitTarget.transform);
         }
         else if (hitTarget.transform.GetComponent <EnemyManager_TakeDamage>() != null)
         {
             gunManagerMasterScript.callEnemyShotEvent(hitTarget, hitTarget.transform);
         }
         else
         {
             gunManagerMasterScript.callDefaultShotEvent(hitTarget, hitTarget.transform);
         }
     }
 }
コード例 #2
0
        void npcFireGun(float spread)
        {
            Vector3 startPos = new Vector3(Random.Range(-spread, spread), Random.Range(-spread, spread), 0.5f);

            if (Physics.Raycast(myTransform.TransformPoint(startPos),
                                myTransform.forward, out hit, GetComponent <GunManager_Shoot>().gunRange, layerToDamage))
            {
                if (hit.transform.GetComponent <NPCManager_TakeDamage>() != null ||
                    hit.transform == GameManager_References._player.transform)
                {
                    gunManagerMasterScript.callEnemyShotEvent(hit, hit.transform);
                }
                else
                {
                    gunManagerMasterScript.callDefaultShotEvent(hit, hit.transform);
                }
            }
        }