Content struct enumerators (#11894)

This commit is contained in:
metalgearsloth
2022-11-07 03:33:44 +11:00
committed by GitHub
parent 59349c37a0
commit bae7b8d0d8
4 changed files with 12 additions and 5 deletions

View File

@@ -18,7 +18,9 @@ public sealed class RevenantOverloadedLightsSystem : SharedRevenantOverloadedLig
{
base.Update(frameTime);
foreach (var (comp, light) in EntityQuery<RevenantOverloadedLightsComponent, PointLightComponent>())
var enumerator = EntityQueryEnumerator<RevenantOverloadedLightsComponent, PointLightComponent>();
while (enumerator.MoveNext(out var comp, out var light))
{
//this looks cool :HECK:
light.Energy = 2f * Math.Abs((float) Math.Sin(0.25 * Math.PI * comp.Accumulator));

View File

@@ -11,11 +11,12 @@ public abstract class SharedRevenantOverloadedLightsSystem : EntitySystem
{
base.Update(frameTime);
foreach (var comp in EntityQuery<RevenantOverloadedLightsComponent>())
var enumerator = EntityQueryEnumerator<RevenantOverloadedLightsComponent>();
while (enumerator.MoveNext(out var comp))
{
comp.Accumulator += frameTime;
if (comp.Accumulator < comp.ZapDelay)
continue;

View File

@@ -31,7 +31,9 @@ namespace Content.Shared.StatusEffect
base.Update(frameTime);
var curTime = _gameTiming.CurTime;
foreach (var (_, status) in EntityManager.EntityQuery<ActiveStatusEffectsComponent, StatusEffectsComponent>())
var enumerator = EntityQueryEnumerator<ActiveStatusEffectsComponent, StatusEffectsComponent>();
while (enumerator.MoveNext(out _, out var status))
{
foreach (var state in status.ActiveEffects.ToArray())
{

View File

@@ -21,7 +21,9 @@ public sealed class StepTriggerSystem : EntitySystem
public override void Update(float frameTime)
{
var query = GetEntityQuery<PhysicsComponent>();
foreach (var (active, trigger, transform) in EntityQuery<StepTriggerActiveComponent, StepTriggerComponent, TransformComponent>())
var enumerator = EntityQueryEnumerator<StepTriggerActiveComponent, StepTriggerComponent, TransformComponent>();
while (enumerator.MoveNext(out var active, out var trigger, out var transform))
{
if (!Update(trigger, transform, query))
continue;