Struct enumerator for GetAllGrids (#2624)

This commit is contained in:
metalgearsloth
2022-03-26 03:17:42 +11:00
committed by GitHub
parent aae2f72d1a
commit 1518c79291
4 changed files with 53 additions and 2 deletions

View File

@@ -116,9 +116,20 @@ internal partial class MapManager
OnGridCreated?.Invoke(mapGrid.ParentMapId, mapGrid.Index);
}
public GridEnumerator GetAllGridsEnumerator()
{
var query = EntityManager.GetEntityQuery<MapGridComponent>();
return new GridEnumerator(_grids.GetEnumerator(), query);
}
public IEnumerable<IMapGrid> GetAllGrids()
{
return EntityManager.EntityQuery<IMapGridComponent>(true).Select(c => c.Grid);
var compQuery = EntityManager.GetEntityQuery<MapGridComponent>();
foreach (var (_, uid) in _grids)
{
yield return compQuery.GetComponent(uid).Grid;
}
}
public IMapGrid CreateGrid(MapId currentMapId, GridId? forcedGridId = null, ushort chunkSize = 16)