Files
tbd-station-14/Content.Shared/EntityTable/EntityTableSystem.cs
metalgearsloth 4afccdd5db DungeonData rework (#37172)
* DungeonData rework

Back to fields, serializes better, just make new layers dumby.

* wawawewa

* Fix this

* Fixes

* review

* thanks fork

* fix
2025-05-18 03:10:30 +10:00

27 lines
849 B
C#

using Content.Shared.EntityTable.EntitySelectors;
using Robust.Shared.Prototypes;
using Robust.Shared.Random;
namespace Content.Shared.EntityTable;
public sealed class EntityTableSystem : EntitySystem
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
[Dependency] private readonly IRobustRandom _random = default!;
public IEnumerable<EntProtoId> GetSpawns(EntityTablePrototype entTableProto, System.Random? rand = null)
{
// convenient
return GetSpawns(entTableProto.Table, rand);
}
public IEnumerable<EntProtoId> GetSpawns(EntityTableSelector? table, System.Random? rand = null)
{
if (table == null)
return new List<EntProtoId>();
rand ??= _random.GetRandom();
return table.GetSpawns(rand, EntityManager, _prototypeManager);
}
}