Files
tbd-station-14/Content.Server/NPC/HTN/Preconditions/HandcuffedPrecondition.cs
IProduceWidgets 36038a1707 Allow ai to understand if its handcuffed. (#30402)
* allow ai to understand if its handcuffed.

* rerun tests they worky on local

* Contained here in, a string of expletives about flaky tests.

* on retrospect, default true is probably smorter.

* do reviews

* I forgor xml

* more xml
2024-08-02 17:07:46 +10:00

27 lines
757 B
C#

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<CuffableSystem>();
var owner = blackboard.GetValue<EntityUid>(NPCBlackboard.Owner);
if (!_entManager.TryGetComponent<CuffableComponent>(owner, out var cuffComp))
return false;
var target = (owner, cuffComp);
return cuffable.IsCuffed(target, ReactOnlyWhenFullyCuffed);
}
}