/// <summary>
/// Whether the entity can pry open powered doors
/// </summary>
- [DataField("pryPowered")]
- public bool PryPowered = false;
+ [DataField]
+ public bool PryPowered;
/// <summary>
/// Whether the tool can bypass certain restrictions when prying.
/// For example door bolts.
/// </summary>
- [DataField("force")]
- public bool Force = false;
+ [DataField]
+ public bool Force;
/// <summary>
/// Modifier on the prying time.
/// Lower values result in more time.
/// </summary>
- [DataField("speedModifier")]
+ [DataField]
public float SpeedModifier = 1.0f;
/// <summary>
/// What sound to play when prying is finished.
/// </summary>
- [DataField("useSound")]
+ [DataField]
public SoundSpecifier UseSound = new SoundPathSpecifier("/Audio/Items/crowbar.ogg");
/// <summary>
/// Whether the entity can currently pry things.
/// </summary>
- [DataField("enabled")]
+ [DataField]
public bool Enabled = true;
}
[Dependency] private readonly ISharedAdminLogManager _adminLog = default!;
[Dependency] private readonly SharedDoAfterSystem _doAfterSystem = default!;
[Dependency] private readonly SharedAudioSystem _audioSystem = default!;
- [Dependency] private readonly SharedPopupSystem Popup = default!;
+ [Dependency] private readonly SharedPopupSystem _popup = default!;
public override void Initialize()
{
if (!args.CanInteract || !args.CanAccess)
return;
- if (!TryComp<PryingComponent>(args.User, out var tool))
+ if (!TryComp<PryingComponent>(args.User, out _))
return;
args.Verbs.Add(new AlternativeVerb()
if (!CanPry(target, user, out var message, comp))
{
if (!string.IsNullOrWhiteSpace(message))
- Popup.PopupClient(Loc.GetString(message), target, user);
+ _popup.PopupClient(Loc.GetString(message), target, user);
// If we have reached this point we want the event that caused this
// to be marked as handled.
return true;
{
BreakOnDamage = true,
BreakOnMove = true,
+ NeedHand = tool != user,
};
- if (tool != null)
+ if (tool != user && tool != null)
{
_adminLog.Add(LogType.Action, LogImpact.Low, $"{ToPrettyString(user)} is using {ToPrettyString(tool.Value)} to pry {ToPrettyString(target)}");
}
if (!CanPry(uid, args.User, out var message, comp))
{
if (!string.IsNullOrWhiteSpace(message))
- Popup.PopupClient(Loc.GetString(message), uid, args.User);
+ _popup.PopupClient(Loc.GetString(message), uid, args.User);
return;
}
}
[Serializable, NetSerializable]
-public sealed partial class DoorPryDoAfterEvent : SimpleDoAfterEvent
-{
-}
+public sealed partial class DoorPryDoAfterEvent : SimpleDoAfterEvent;
tool.Qualities = current.Behavior;
// TODO: Replace this with a better solution later
- if (TryComp<PryingComponent>(uid, out var pcomp))
+ if (TryComp<PryingComponent>(uid, out var pryComp))
{
- if (current.Behavior.Contains("Prying"))
- {
- pcomp.Enabled = true;
- }
- else
- {
- pcomp.Enabled = false;
- }
+ pryComp.Enabled = current.Behavior.Contains("Prying");
}
if (playSound && current.ChangeSound != null)