Files
tbd-station-14/Content.Shared/Construction/ConstructionGraphEdge.cs
2022-05-13 17:59:03 +10:00

32 lines
964 B
C#

using Content.Shared.Construction.Steps;
namespace Content.Shared.Construction
{
[Serializable]
[DataDefinition]
public sealed class ConstructionGraphEdge
{
[DataField("steps")]
private ConstructionGraphStep[] _steps = Array.Empty<ConstructionGraphStep>();
[DataField("conditions", serverOnly: true)]
private IGraphCondition[] _conditions = Array.Empty<IGraphCondition>();
[DataField("completed", serverOnly: true)]
private IGraphAction[] _completed = Array.Empty<IGraphAction>();
[ViewVariables]
[DataField("to", required:true)]
public string Target { get; } = string.Empty;
[ViewVariables]
public IReadOnlyList<IGraphCondition> Conditions => _conditions;
[ViewVariables]
public IReadOnlyList<IGraphAction> Completed => _completed;
[ViewVariables]
public IReadOnlyList<ConstructionGraphStep> Steps => _steps;
}
}