using Robust.Shared.Prototypes;
namespace Content.Server._Horizon.BluespaceHarvester;
[RegisterComponent]
public sealed partial class BluespaceHarvesterRiftComponent : Component
{
///
/// The current danger level of the portal with which he will buy things from the Spawn list.
///
[DataField]
public int Danger;
///
/// The portal also periodically generates a random, weak mob from the PassiveSpawn list.
///
[DataField]
public float PassiveSpawnCooldown = 30f;
[DataField]
public float PassiveSpawnAccumulator;
///
/// A list of weak monsters that will encourage breaking rifts.
///
[DataField]
public List PassiveSpawn = new();
///
/// Delay between attempts to spawn more than 3 mobs.
///
[DataField]
public float SpawnCooldown = 5f;
[DataField]
public float SpawnAccumulator;
///
/// Monsters and their cost for purchase through the portal are described here; there may be expensive but very dangerous creatures, for example, kudzu or a dragon.
///
[DataField]
public List Spawn = new();
}
[Serializable, DataDefinition]
public partial struct EntitySpawn
{
[DataField]
public EntProtoId? Id = null;
[DataField]
public int Cost;
}