From: nikthechampiongr <32041239+nikthechampiongr@users.noreply.github.com> Date: Tue, 9 Jan 2024 22:05:02 +0000 (+0200) Subject: Doors will no longer be pried open once the doafter finishes if they shouldn't. ... X-Git-Url: https://git.smokeofanarchy.ru/gitweb.cgi?a=commitdiff_plain;h=88045afcf01eedd282d98fba3e3430e66745d3a0;p=space-station-14.git Doors will no longer be pried open once the doafter finishes if they shouldn't. (#23818) * Fix bug where prying would succeed even a door could no longer be pried. * Remove redundant call to Resolve * Remove redundant comment --- diff --git a/Content.Shared/Prying/Systems/PryingSystem.cs b/Content.Shared/Prying/Systems/PryingSystem.cs index bc37ab035a..36e42723df 100644 --- a/Content.Shared/Prying/Systems/PryingSystem.cs +++ b/Content.Shared/Prying/Systems/PryingSystem.cs @@ -158,10 +158,19 @@ public sealed class PryingSystem : EntitySystem if (args.Target is null) return; - PryingComponent? comp = null; + TryComp(args.Used, out var comp); + + if (!CanPry(uid, args.User, out var message, comp)) + { + if (message != null) + Popup.PopupEntity(Loc.GetString(message), uid, args.User); + return; + } - if (args.Used != null && Resolve(args.Used.Value, ref comp)) - _audioSystem.PlayPredicted(comp.UseSound, args.Used.Value, args.User); + // TODO: When we get airlock prediction make this predicted. + // When that happens also fix the checking function in the Client AirlockSystem. + if (args.Used != null && comp != null) + _audioSystem.PlayPvs(comp.UseSound, args.Used.Value); var ev = new PriedEvent(args.User); RaiseLocalEvent(uid, ref ev);