Files
tbd-station-14/Content.Shared/EntityTable/EntityTableSystem.cs
Nemanja 437c861622 Entity Tables (EntitySpawnEntry replacement) (#30579)
* Entity table code

* entity table examples

* fix dat shit

* access

* tests tests tests

* sloth review
2024-08-09 22:12:40 -04:00

21 lines
652 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(EntityTableSelector? table, System.Random? rand = null)
{
if (table == null)
return new List<EntProtoId>();
rand ??= _random.GetRandom();
return table.GetSpawns(rand, EntityManager, _prototypeManager);
}
}