From a92b67b10dc6a8274a9af055d0ff4e12521488d7 Mon Sep 17 00:00:00 2001 From: keronshb <54602815+keronshb@users.noreply.github.com> Date: Sat, 25 Mar 2023 22:26:39 -0400 Subject: [PATCH] Cardboard Boxes will play effect & sound again (#14859) --- Content.Server/CardboardBox/CardboardBoxSystem.cs | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/Content.Server/CardboardBox/CardboardBoxSystem.cs b/Content.Server/CardboardBox/CardboardBoxSystem.cs index 890ff0f4e2..0e0c171f02 100644 --- a/Content.Server/CardboardBox/CardboardBoxSystem.cs +++ b/Content.Server/CardboardBox/CardboardBoxSystem.cs @@ -29,6 +29,7 @@ public sealed class CardboardBoxSystem : SharedCardboardBoxSystem { base.Initialize(); SubscribeLocalEvent(AfterStorageOpen); + SubscribeLocalEvent(BeforeStorageOpen); SubscribeLocalEvent(AfterStorageClosed); SubscribeLocalEvent(OnNoHandInteracted); SubscribeLocalEvent(OnEntInserted); @@ -46,19 +47,22 @@ public sealed class CardboardBoxSystem : SharedCardboardBoxSystem _storage.OpenStorage(uid); } - private void AfterStorageOpen(EntityUid uid, CardboardBoxComponent component, ref StorageAfterOpenEvent args) + private void BeforeStorageOpen(EntityUid uid, CardboardBoxComponent component, ref StorageBeforeOpenEvent args) { - //Remove the mover after the box is opened and play the effect if it hasn't been played yet. + //Play effect & sound if (component.Mover != null) { if (_timing.CurTime > component.EffectCooldown) { - RaiseNetworkEvent(new PlayBoxEffectMessage(component.Owner, component.Mover.Value), Filter.PvsExcept(component.Owner)); - _audio.PlayPvs(component.EffectSound, component.Owner); + RaiseNetworkEvent(new PlayBoxEffectMessage(uid, component.Mover.Value)); + _audio.PlayPvs(component.EffectSound, uid); component.EffectCooldown = _timing.CurTime + CardboardBoxComponent.MaxEffectCooldown; } } + } + private void AfterStorageOpen(EntityUid uid, CardboardBoxComponent component, ref StorageAfterOpenEvent args) + { // If this box has a stealth/chameleon effect, disable the stealth effect while the box is open. _stealth.SetEnabled(uid, false); }