Fix bang, ded (#10768)

This commit is contained in:
metalgearsloth
2022-08-23 12:28:31 +10:00
committed by GitHub
parent ae7ba491f5
commit d2f1981172
3 changed files with 33 additions and 14 deletions

View File

@@ -225,6 +225,9 @@ public sealed partial class GunSystem : SharedGunSystem
public void PlayImpactSound(EntityUid otherEntity, DamageSpecifier? modifiedDamage, SoundSpecifier? weaponSound, bool forceWeaponSound)
{
if (Deleted(otherEntity))
return;
// Like projectiles and melee,
// 1. Entity specific sound
// 2. Ammo's sound
@@ -237,24 +240,20 @@ public sealed partial class GunSystem : SharedGunSystem
if (type != null && rangedSound.SoundTypes?.TryGetValue(type, out var damageSoundType) == true)
{
SoundSystem.Play(damageSoundType!.GetSound(),
Filter.Pvs(otherEntity, entityManager: EntityManager),
otherEntity, AudioHelpers.WithVariation(DamagePitchVariation));
Audio.PlayPvs(damageSoundType, otherEntity, AudioParams.Default.WithVariation(DamagePitchVariation));
playedSound = true;
}
else if (type != null && rangedSound.SoundGroups?.TryGetValue(type, out var damageSoundGroup) == true)
{
SoundSystem.Play(damageSoundGroup!.GetSound(),
Filter.Pvs(otherEntity, entityManager: EntityManager),
otherEntity, AudioHelpers.WithVariation(DamagePitchVariation));
Audio.PlayPvs(damageSoundGroup, otherEntity, AudioParams.Default.WithVariation(DamagePitchVariation));
playedSound = true;
}
}
if (!playedSound && weaponSound != null)
SoundSystem.Play(weaponSound.GetSound(), Filter.Pvs(otherEntity, entityManager: EntityManager), otherEntity);
{
Audio.PlayPvs(weaponSound, otherEntity);
}
}
// TODO: Pseudo RNG so the client can predict these.

View File

@@ -45,6 +45,7 @@ public abstract partial class SharedGunSystem : EntitySystem
[Dependency] protected readonly SharedPopupSystem PopupSystem = default!;
[Dependency] protected readonly ThrowingSystem ThrowingSystem = default!;
[Dependency] protected readonly TagSystem TagSystem = default!;
[Dependency] protected readonly SharedAudioSystem Audio = default!;
[Dependency] protected readonly SharedProjectileSystem Projectiles = default!;
protected ISawmill Sawmill = default!;

View File

@@ -15,11 +15,30 @@
sprite: Objects/Weapons/Guns/Pistols/debug.rsi
- type: Gun
fireRate: 100
- type: BallisticAmmoProvider
selectedMode: FullAuto
availableModes:
- SemiAuto
- FullAuto
- type: AmmoCounter
- type: ChamberMagazineAmmoProvider
- type: ItemSlots
slots:
gun_magazine:
name: Magazine
startingItem: MagazinePistolDebug
insertSound: /Audio/Weapons/Guns/MagIn/smg_magin.ogg
ejectSound: /Audio/Weapons/Guns/MagOut/smg_magout.ogg
priority: 2
whitelist:
tags:
- Debug
proto: MagazinePistolDebug
gun_chamber:
name: Chamber
startingItem: CartridgeDebug
priority: 1
whitelist:
tags:
- CartridgePistol
- type: entity
id: MagazinePistolDebug