1
0

EntitySpawnAnomalyComponent.cs 753 B

12345678910111213141516171819202122232425
  1. using Robust.Shared.GameStates;
  2. using Robust.Shared.Prototypes;
  3. namespace Content.Shared.Anomaly.Effects.Components;
  4. [RegisterComponent, NetworkedComponent, Access(typeof(SharedEntityAnomalySystem))]
  5. public sealed partial class EntitySpawnAnomalyComponent : Component
  6. {
  7. /// <summary>
  8. /// All types of entity spawns with their settings
  9. /// </summary>
  10. [DataField]
  11. public List<EntitySpawnSettingsEntry> Entries = new();
  12. }
  13. [DataRecord]
  14. public partial record struct EntitySpawnSettingsEntry()
  15. {
  16. /// <summary>
  17. /// A list of entities that are random picked to be spawned on each pulse
  18. /// </summary>
  19. public List<EntProtoId> Spawns { get; set; } = new();
  20. public AnomalySpawnSettings Settings { get; set; } = new();
  21. }