diff --git a/Content.Client/Anomaly/AnomalySystem.cs b/Content.Client/Anomaly/AnomalySystem.cs index b8e3e74393..4ed73e7fa3 100644 --- a/Content.Client/Anomaly/AnomalySystem.cs +++ b/Content.Client/Anomaly/AnomalySystem.cs @@ -59,7 +59,9 @@ public sealed class AnomalySystem : SharedAnomalySystem { base.Update(frameTime); - foreach (var (super, sprite) in EntityQuery()) + var query = EntityQueryEnumerator(); + + while (query.MoveNext(out var super, out var sprite)) { var completion = 1f - (float) ((super.EndTime - _timing.CurTime) / super.SupercriticalDuration); var scale = completion * (super.MaxScaleAmount - 1f) + 1f; diff --git a/Content.Client/SurveillanceCamera/SurveillanceCameraMonitorSystem.cs b/Content.Client/SurveillanceCamera/SurveillanceCameraMonitorSystem.cs index f25cf4c30e..ec79889e7a 100644 --- a/Content.Client/SurveillanceCamera/SurveillanceCameraMonitorSystem.cs +++ b/Content.Client/SurveillanceCamera/SurveillanceCameraMonitorSystem.cs @@ -6,23 +6,17 @@ public sealed class SurveillanceCameraMonitorSystem : EntitySystem { public override void Update(float frameTime) { - foreach (var comp in EntityQuery()) - { - if (Paused(comp.Owner)) - { - continue; - } + var query = EntityQueryEnumerator(); + while (query.MoveNext(out var uid, out var comp)) + { comp.TimeLeft -= frameTime; - if (comp.TimeLeft <= 0 || Deleted(comp.Owner)) + if (comp.TimeLeft <= 0) { - if (comp.OnFinish != null) - { - comp.OnFinish(); - } + comp.OnFinish?.Invoke(); - EntityManager.RemoveComponentDeferred(comp.Owner); + RemCompDeferred(uid); } } } @@ -35,6 +29,6 @@ public sealed class SurveillanceCameraMonitorSystem : EntitySystem public void RemoveTimer(EntityUid uid) { - EntityManager.RemoveComponentDeferred(uid); + RemCompDeferred(uid); } } diff --git a/Content.Server/Physics/Controllers/ConveyorController.cs b/Content.Server/Physics/Controllers/ConveyorController.cs index e3777acbde..c4a40a23e4 100644 --- a/Content.Server/Physics/Controllers/ConveyorController.cs +++ b/Content.Server/Physics/Controllers/ConveyorController.cs @@ -123,11 +123,11 @@ public sealed class ConveyorController : SharedConveyorController if (!xformQuery.TryGetComponent(uid, out var xform)) return; - var beltTileRef = xform.Coordinates.GetTileRef(EntityManager, _mapManager); + var beltTileRef = xform.Coordinates.GetTileRef(EntityManager, MapManager); if (beltTileRef != null) { - var intersecting = _lookup.GetEntitiesIntersecting(beltTileRef.Value); + var intersecting = Lookup.GetEntitiesIntersecting(beltTileRef.Value); foreach (var entity in intersecting) { @@ -135,7 +135,7 @@ public sealed class ConveyorController : SharedConveyorController continue; if (physics.BodyType != BodyType.Static) - _physics.WakeBody(entity, body: physics); + Physics.WakeBody(entity, body: physics); } } } diff --git a/Content.Shared/Damage/Systems/DamageContactsSystem.cs b/Content.Shared/Damage/Systems/DamageContactsSystem.cs index 32757a563c..aec3d0766a 100644 --- a/Content.Shared/Damage/Systems/DamageContactsSystem.cs +++ b/Content.Shared/Damage/Systems/DamageContactsSystem.cs @@ -23,9 +23,10 @@ public sealed class DamageContactsSystem : EntitySystem { base.Update(frameTime); - foreach (var damaged in EntityQuery()) + var query = EntityQueryEnumerator(); + + while (query.MoveNext(out var ent, out var damaged)) { - var ent = damaged.Owner; if (_timing.CurTime < damaged.NextSecond) continue; damaged.NextSecond = _timing.CurTime + TimeSpan.FromSeconds(1); diff --git a/Content.Shared/Gravity/SharedGravitySystem.Shake.cs b/Content.Shared/Gravity/SharedGravitySystem.Shake.cs index f264698cd9..f265dedc15 100644 --- a/Content.Shared/Gravity/SharedGravitySystem.Shake.cs +++ b/Content.Shared/Gravity/SharedGravitySystem.Shake.cs @@ -24,18 +24,19 @@ public abstract partial class SharedGravitySystem { var curTime = Timing.CurTime; var gravityQuery = GetEntityQuery(); + var query = EntityQueryEnumerator(); - foreach (var comp in EntityQuery()) + while (query.MoveNext(out var uid, out var comp)) { if (comp.NextShake <= curTime) { - if (comp.ShakeTimes == 0 || !gravityQuery.TryGetComponent(comp.Owner, out var gravity)) + if (comp.ShakeTimes == 0 || !gravityQuery.TryGetComponent(uid, out var gravity)) { - RemCompDeferred(comp.Owner); + RemCompDeferred(uid); continue; } - ShakeGrid(comp.Owner, gravity); + ShakeGrid(uid, gravity); comp.ShakeTimes--; comp.NextShake += TimeSpan.FromSeconds(ShakeCooldown); Dirty(comp); diff --git a/Content.Shared/Physics/Controllers/SharedConveyorController.cs b/Content.Shared/Physics/Controllers/SharedConveyorController.cs index 9762c0d807..29643e4bb5 100644 --- a/Content.Shared/Physics/Controllers/SharedConveyorController.cs +++ b/Content.Shared/Physics/Controllers/SharedConveyorController.cs @@ -13,9 +13,9 @@ namespace Content.Shared.Physics.Controllers; public abstract class SharedConveyorController : VirtualController { - [Dependency] protected readonly IMapManager _mapManager = default!; - [Dependency] protected readonly EntityLookupSystem _lookup = default!; - [Dependency] protected readonly SharedPhysicsSystem _physics = default!; + [Dependency] protected readonly IMapManager MapManager = default!; + [Dependency] protected readonly EntityLookupSystem Lookup = default!; + [Dependency] protected readonly SharedPhysicsSystem Physics = default!; [Dependency] private readonly SharedGravitySystem _gravity = default!; protected const string ConveyorFixture = "conveyor"; @@ -74,10 +74,10 @@ public abstract class SharedConveyorController : VirtualController // Don't use it directly in EntityQuery because we may be able to save getcomponents. var xformQuery = GetEntityQuery(); var bodyQuery = GetEntityQuery(); + var query = EntityQueryEnumerator(); - foreach (var (_, comp) in EntityQuery()) + while (query.MoveNext(out var uid, out var _, out var comp)) { - var uid = comp.Owner; Convey(uid, comp, xformQuery, bodyQuery, conveyed, frameTime, prediction); } } @@ -115,8 +115,8 @@ public abstract class SharedConveyorController : VirtualController transform.LocalPosition = localPos; // Force it awake for collisionwake reasons. - _physics.SetAwake(entity, body, true); - _physics.SetSleepTime(body, 0f); + Physics.SetAwake(entity, body, true); + Physics.SetSleepTime(body, 0f); } Dirty(comp); } @@ -161,9 +161,9 @@ public abstract class SharedConveyorController : VirtualController EntityQuery bodyQuery) { // Check if the thing's centre overlaps the grid tile. - var grid = _mapManager.GetGrid(xform.GridUid!.Value); + var grid = MapManager.GetGrid(xform.GridUid!.Value); var tile = grid.GetTileRef(xform.Coordinates); - var conveyorBounds = _lookup.GetLocalBounds(tile, grid.TileSize); + var conveyorBounds = Lookup.GetLocalBounds(tile, grid.TileSize); foreach (var entity in comp.Intersecting) {