Example #1
0
        public override void InstantiateShot()
        {
            GameObject firedShot = Instantiate(Shot) as GameObject;

            firedShot.transform.parent = this.transform;

            ShotBase shotScript = firedShot.GetComponent <ShotBase>();

            shotScript.ShotSpeed    = ShotSpeed;
            shotScript.ExitPoint    = controller.ExitPointOffset + LocalOffset;
            shotScript.Emitter      = this.transform;
            shotScript.FiringScript = this;

            int physicsLayer = LayerMask.NameToLayer(rend.sortingLayerName);

            firedShot.layer = physicsLayer;

            shotScript.sortLayer = rend.sortingLayerName;
            shotScript.sortOrder = rend.sortingOrder - 9999;
            shotScript.InitialSet();

            shotRef = firedShot;

            if (audiosrc != null)
            {
                audiosrc.mute = false;
                audiosrc.loop = true;
                audiosrc.Play();

                OnStoppedFiring.AddListener(muteAudio);
            }
        }
Example #2
0
 private void muteAudio()
 {
     audiosrc.loop = false;
     audiosrc.mute = true;
     OnStoppedFiring.RemoveListener(muteAudio);
 }