Fix mobs not being able to pry doors by just left clicking on them (#27349)

This commit is contained in:
DrSmugleaf
2024-04-26 05:17:25 -07:00
committed by GitHub
parent 13c6537842
commit adce579370

View File

@@ -1,15 +1,14 @@
using Content.Shared.Prying.Components; using System.Diagnostics.CodeAnalysis;
using Content.Shared.Verbs;
using Content.Shared.DoAfter;
using Robust.Shared.Serialization;
using Content.Shared.Administration.Logs; using Content.Shared.Administration.Logs;
using Content.Shared.Database; using Content.Shared.Database;
using Content.Shared.DoAfter;
using Content.Shared.Doors.Components; using Content.Shared.Doors.Components;
using System.Diagnostics.CodeAnalysis;
using Content.Shared.Interaction; using Content.Shared.Interaction;
using Content.Shared.Popups; using Content.Shared.Popups;
using Robust.Shared.Audio; using Content.Shared.Prying.Components;
using Content.Shared.Verbs;
using Robust.Shared.Audio.Systems; using Robust.Shared.Audio.Systems;
using Robust.Shared.Serialization;
using PryUnpoweredComponent = Content.Shared.Prying.Components.PryUnpoweredComponent; using PryUnpoweredComponent = Content.Shared.Prying.Components.PryUnpoweredComponent;
namespace Content.Shared.Prying.Systems; namespace Content.Shared.Prying.Systems;
@@ -99,14 +98,16 @@ public sealed class PryingSystem : EntitySystem
// to be marked as handled. // to be marked as handled.
return true; return true;
return StartPry(target, user, null, 0.1f, out id); // hand-prying is much slower // hand-prying is much slower
var modifier = CompOrNull<PryingComponent>(user)?.SpeedModifier ?? 0.1f;
return StartPry(target, user, null, modifier, out id);
} }
private bool CanPry(EntityUid target, EntityUid user, out string? message, PryingComponent? comp = null) private bool CanPry(EntityUid target, EntityUid user, out string? message, PryingComponent? comp = null)
{ {
BeforePryEvent canev; BeforePryEvent canev;
if (comp != null) if (comp != null || Resolve(user, ref comp))
{ {
canev = new BeforePryEvent(user, comp.PryPowered, comp.Force); canev = new BeforePryEvent(user, comp.PryPowered, comp.Force);
} }