Small adjustment for elookup api (#22447)

* Small adjustment for elookup api

* fix
This commit is contained in:
metalgearsloth
2024-01-04 15:13:19 +11:00
committed by GitHub
parent 3ee6b8d2bc
commit a3516e60e7
3 changed files with 9 additions and 2 deletions

View File

@@ -140,7 +140,10 @@ namespace Content.Server.Atmos.EntitySystems
tile.PressureSpecificTarget = curTile; tile.PressureSpecificTarget = curTile;
} }
foreach (var entity in _lookup.GetEntitiesIntersecting(tile.GridIndex, tile.GridIndices, 0f)) _entSet.Clear();
_lookup.GetLocalEntitiesIntersecting(tile.GridIndex, tile.GridIndices, _entSet, 0f);
foreach (var entity in _entSet)
{ {
// Ideally containers would have their own EntityQuery internally or something given recursively it may need to slam GetComp<T> anyway. // Ideally containers would have their own EntityQuery internally or something given recursively it may need to slam GetComp<T> anyway.
// Also, don't care about static bodies (but also due to collisionwakestate can't query dynamic directly atm). // Also, don't care about static bodies (but also due to collisionwakestate can't query dynamic directly atm).

View File

@@ -165,8 +165,10 @@ namespace Content.Server.Atmos.EntitySystems
} }
var fireEvent = new TileFireEvent(tile.Hotspot.Temperature, tile.Hotspot.Volume); var fireEvent = new TileFireEvent(tile.Hotspot.Temperature, tile.Hotspot.Volume);
_entSet.Clear();
_lookup.GetLocalEntitiesIntersecting(tile.GridIndex, tile.GridIndices, _entSet, 0f);
foreach (var entity in _lookup.GetEntitiesIntersecting(tile.GridIndex, tile.GridIndices, 0f)) foreach (var entity in _entSet)
{ {
RaiseLocalEvent(entity, ref fireEvent); RaiseLocalEvent(entity, ref fireEvent);
} }

View File

@@ -38,6 +38,8 @@ public sealed partial class AtmosphereSystem : SharedAtmosphereSystem
private const float ExposedUpdateDelay = 1f; private const float ExposedUpdateDelay = 1f;
private float _exposedTimer = 0f; private float _exposedTimer = 0f;
private HashSet<EntityUid> _entSet = new();
public override void Initialize() public override void Initialize()
{ {
base.Initialize(); base.Initialize();