diff --git a/Arch/Arch b/Arch/Arch index c4c96fbe4..c76d18feb 160000 --- a/Arch/Arch +++ b/Arch/Arch @@ -1 +1 @@ -Subproject commit c4c96fbe4e4b9e285a4079f035ff396fb3536609 +Subproject commit c76d18feb7143bfc2c6dd253ac97425b57be96d1 diff --git a/Robust.Shared/GameObjects/ArchetypeIterator.cs b/Robust.Shared/GameObjects/ArchetypeIterator.cs index e885e9226..9a4f50a07 100644 --- a/Robust.Shared/GameObjects/ArchetypeIterator.cs +++ b/Robust.Shared/GameObjects/ArchetypeIterator.cs @@ -5,30 +5,26 @@ namespace Robust.Shared.GameObjects; internal struct ArchetypeIterator { - private readonly Query _query; private readonly PooledList _archetypes; - internal ArchetypeIterator(in Query query, PooledList archetypes) + internal ArchetypeIterator(PooledList archetypes) { - _query = query; _archetypes = archetypes; } public ArchetypeEnumerator GetEnumerator() { - return new ArchetypeEnumerator(_query, _archetypes); + return new ArchetypeEnumerator(_archetypes); } } internal struct ArchetypeEnumerator { - private readonly Query _query; private readonly PooledList _archetypes; private int _index; - public ArchetypeEnumerator(in Query query, PooledList archetypes) + public ArchetypeEnumerator(PooledList archetypes) { - _query = query; _archetypes = archetypes; _index = _archetypes.Count; } @@ -38,7 +34,7 @@ internal struct ArchetypeEnumerator while (--_index >= 0) { var archetype = Current; - if (archetype.Entities > 0) + if (archetype.EntityCount > 0) { return true; } diff --git a/Robust.Shared/GameObjects/ChunkIterator.cs b/Robust.Shared/GameObjects/ChunkIterator.cs index f7044b76c..5a70e318c 100644 --- a/Robust.Shared/GameObjects/ChunkIterator.cs +++ b/Robust.Shared/GameObjects/ChunkIterator.cs @@ -29,7 +29,7 @@ internal struct ArchChunkEnumerator if (_archetypes.MoveNext()) { - _chunkIndex = _archetypes.Current.Size; + _chunkIndex = _archetypes.Current.ChunkCount; } } @@ -45,7 +45,7 @@ internal struct ArchChunkEnumerator return false; } - _chunkIndex = _archetypes.Current.Size - 1; + _chunkIndex = _archetypes.Current.ChunkCount - 1; return true; } } @@ -54,7 +54,7 @@ internal static partial class QueryExtensions { internal static ArchChunkIterator ChunkIterator(this in Query query, World world) { - var archetypeEnumerator = new ArchetypeEnumerator(in query, query.Matches); + var archetypeEnumerator = new ArchetypeEnumerator(query.Matches); return new ArchChunkIterator(in archetypeEnumerator); } }