protected void IterateQuery(IQueryIterator iterator, EntityQuery query, bool onlyDirty = true) { if (onlyDirty) { EntityIterator.PerformIteration(World, iterator, query, LastVersionWorked); } else { EntityIterator.PerformIteration(World, iterator, query); } }
private static void Perform(EntityWorld world, IQueryIterator iterator, EntityQuery query, bool checkVersion, uint version) { switch (iterator) { default: DevConsole.Log(LogType.Error, "Iterator not found."); return; case IQueryChunkIterator chunkIterator: PerformChunkIteration(world, chunkIterator, query, checkVersion, version); return; case IQueryEntityIterator entityIterator: PerformEntityIteration(world, entityIterator, query, checkVersion, version); return; } }
public static void PerformIteration(EntityWorld world, IQueryIterator iterator, EntityQuery query, uint version) => Perform(world, iterator, query, true, version);
public static void PerformIteration(EntityWorld world, IQueryIterator iterator, EntityQuery query) => Perform(world, iterator, query, false, 0);