Files
tbd-station-14/Content.Server/Spawners/Components/SpawnPointComponent.cs
778b 87def406bc Added ContainerSpawnPoint check for integration test (#25446)
* Added logic for ContainerSpawnPoint checks

* Improved with template function

* fixed nullable

* hehe

* hehe T?

* added type check before cast

* another nullable fix

* and another one

* return to old code (found typo)

* Code cleanup

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-02-26 00:54:44 +11:00

36 lines
884 B
C#

using Content.Shared.Roles;
using Robust.Shared.Prototypes;
namespace Content.Server.Spawners.Components;
[RegisterComponent]
public sealed partial class SpawnPointComponent : Component, ISpawnPoint
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
[ViewVariables(VVAccess.ReadWrite)]
[DataField("job_id")]
private string? _jobId;
/// <summary>
/// The type of spawn point
/// </summary>
[DataField("spawn_type"), ViewVariables(VVAccess.ReadWrite)]
public SpawnPointType SpawnType { get; set; } = SpawnPointType.Unset;
public JobPrototype? Job => string.IsNullOrEmpty(_jobId) ? null : _prototypeManager.Index<JobPrototype>(_jobId);
public override string ToString()
{
return $"{_jobId} {SpawnType}";
}
}
public enum SpawnPointType
{
Unset = 0,
LateJoin,
Job,
Observer,
}