diff --git a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/Interactions/InteractWithOperator.cs b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/Interactions/InteractWithOperator.cs index cdbf8c8753..133c4f4723 100644 --- a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/Interactions/InteractWithOperator.cs +++ b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/Interactions/InteractWithOperator.cs @@ -25,9 +25,12 @@ public sealed class InteractWithOperator : HTNOperator return HTNOperatorStatus.Continuing; } - _entManager.System().SetInCombatMode(owner, false); - _entManager.System().UserInteraction(owner, targetXform.Coordinates, moveTarget); + if (_entManager.TryGetComponent(owner, out var combatMode)) + { + _entManager.System().SetInCombatMode(owner, false, combatMode); + } + _entManager.System().UserInteraction(owner, targetXform.Coordinates, moveTarget); return HTNOperatorStatus.Finished; } } diff --git a/Resources/Prototypes/NPCs/medibot.yml b/Resources/Prototypes/NPCs/medibot.yml index 4710e69443..91aae781a7 100644 --- a/Resources/Prototypes/NPCs/medibot.yml +++ b/Resources/Prototypes/NPCs/medibot.yml @@ -16,7 +16,8 @@ - !type:HTNPrimitiveTask operator: !type:PickNearbyInjectableOperator targetKey: InjectTarget - targetMoveKey: MovementTarget + targetMoveKey: TargetCoordinates + - !type:HTNPrimitiveTask operator: !type:SpeakOperator speech: medibot-start-inject