mirror of
https://github.com/space-wizards/RobustToolbox.git
synced 2026-02-14 19:29:36 +01:00
Update arch (#4605)
This commit is contained in:
Submodule Arch/Arch updated: c4c96fbe4e...c76d18feb7
@@ -5,30 +5,26 @@ namespace Robust.Shared.GameObjects;
|
||||
|
||||
internal struct ArchetypeIterator
|
||||
{
|
||||
private readonly Query _query;
|
||||
private readonly PooledList<Archetype> _archetypes;
|
||||
|
||||
internal ArchetypeIterator(in Query query, PooledList<Archetype> archetypes)
|
||||
internal ArchetypeIterator(PooledList<Archetype> 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<Archetype> _archetypes;
|
||||
private int _index;
|
||||
|
||||
public ArchetypeEnumerator(in Query query, PooledList<Archetype> archetypes)
|
||||
public ArchetypeEnumerator(PooledList<Archetype> 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;
|
||||
}
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user