示例#1
0
 private void OnBoltForward()
 {
     GunSounds?.PlaySlideForward();
     ChamberRound();
     if (IsBulletChambered)
     {
         EnableChamberedRound();
     }
 }
示例#2
0
 private void OnPumpPulledBack()
 {
     GunSounds?.PlaySlideBack();
     EjectBullet();
     if (_casingChambered)
     {
         EjectCasing();
         _casingChambered = false;
     }
 }
示例#3
0
 private void OnChargingHandleReleased()
 {
     GunSounds?.PlaySlideForward();
     ChamberRound();
     if (Bolt)
     {
         Bolt.IsPushedBack = false;
     }
     if (IsBulletChambered)
     {
         EnableChamberedRound();
     }
 }
示例#4
0
 private void OnChamberRound()
 {
     if (IsBulletChambered)
     {
         return;
     }
     GunSounds?.PlaySlideForward();
     ChamberRound();
     if (IsBulletChambered)
     {
         EnableChamberedRound();
     }
 }
        public virtual void SetupGunSounds()
        {
            GunSounds    gun_sounds    = weapon_prefab.GetComponent <GunSounds>();
            WeaponSounds weapon_sounds = weapon_scriptable.weapon_sounds;

            if (gun_sounds == null)
            {
                gun_sounds = weapon_prefab.AddComponent <GunSounds>();
            }
            gun_sounds.Eject     = weapon_sounds.Eject;
            gun_sounds.Rechamber = weapon_sounds.Rechamber;
            gun_sounds.Pump      = weapon_sounds.Pump;
            gun_sounds.Fire      = weapon_sounds.Fire;
            gun_sounds.EmptyFire = weapon_sounds.EmptyFire;
        }