NPCs no longer consider anchored pipes as weapons (#30061)
* Anchored pipes are no longer considered weapons * Switch to overload utilizing a TransformQuery
This commit is contained in:
11
Content.Server/NPC/Queries/Queries/RemoveAnchored.cs
Normal file
11
Content.Server/NPC/Queries/Queries/RemoveAnchored.cs
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
using Robust.Shared.Prototypes;
|
||||||
|
|
||||||
|
namespace Content.Server.NPC.Queries.Queries;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Remove anchored entities from the query
|
||||||
|
/// </summary>
|
||||||
|
public sealed partial class RemoveAnchoredFilter : UtilityQueryFilter
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
@@ -499,6 +499,26 @@ public sealed class NPCUtilitySystem : EntitySystem
|
|||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
case RemoveAnchoredFilter:
|
||||||
|
{
|
||||||
|
_entityList.Clear();
|
||||||
|
|
||||||
|
foreach (var ent in entities)
|
||||||
|
{
|
||||||
|
if (!TryComp(ent, out TransformComponent? xform))
|
||||||
|
continue;
|
||||||
|
|
||||||
|
if (xform.Anchored)
|
||||||
|
_entityList.Add(ent);
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach (var ent in _entityList)
|
||||||
|
{
|
||||||
|
entities.Remove(ent);
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
case PuddleFilter:
|
case PuddleFilter:
|
||||||
{
|
{
|
||||||
_entityList.Clear();
|
_entityList.Clear();
|
||||||
|
|||||||
@@ -131,6 +131,7 @@
|
|||||||
types:
|
types:
|
||||||
Blunt: 0
|
Blunt: 0
|
||||||
- type: Item
|
- type: Item
|
||||||
|
- !type:RemoveAnchoredFilter
|
||||||
considerations:
|
considerations:
|
||||||
- !type:TargetMeleeCon
|
- !type:TargetMeleeCon
|
||||||
curve: !type:QuadraticCurve
|
curve: !type:QuadraticCurve
|
||||||
|
|||||||
Reference in New Issue
Block a user