Esempio n. 1
0
    public virtual void Shoot()
    {
        Transform cam = gunner.GetComponentInChildren <Camera>().transform.FindChild("GunBarrell");

        if (cam != null && MuzzleEffect != null)
        {
            MuzzleEffect.ShowMuzzleEffect(cam, true, null);
        }
        if (sounds.Length > 0)
        {
            AudioSource.PlayClipAtPoint(sounds[0], transform.position);
        }
    }
Esempio n. 2
0
    void fireCannon(Vector3 hitPos, Vector3 hitNormal, float distance)
    {
        MuzzleEffect.ShowMuzzleEffect(Cannon.transform, true, Audio);
        TracerEffect.ShowTracerEffect(Cannon.transform.position, Cannon.transform.forward, distance);

        if (hitNormal != Vector3.zero)
        {
            ImpactEffect.ShowImpactEffect(hitPos, hitNormal);
        }

        Collider[] colliders = Physics.OverlapSphere(hitPos, 2f);

        foreach (Collider c in colliders)
        {
            Rigidbody rb = c.GetComponent <Rigidbody>();

            if (rb)
            {
                rb.AddExplosionForce(600f, hitPos, 2f);
            }
        }
    }