using Content.Server.Cuffs; using Content.Shared.Cuffs.Components; namespace Content.Server.NPC.HTN.Preconditions; public sealed partial class HandcuffedPrecondition : HTNPrecondition { [Dependency] private readonly IEntityManager _entManager = default!; [DataField] public bool ReactOnlyWhenFullyCuffed = true; public override bool IsMet(NPCBlackboard blackboard) { var cuffable = _entManager.System(); var owner = blackboard.GetValue(NPCBlackboard.Owner); if (!_entManager.TryGetComponent(owner, out var cuffComp)) return false; var target = (owner, cuffComp); return cuffable.IsCuffed(target, ReactOnlyWhenFullyCuffed); } }