* Predict dumping - This got soaped really fucking hard. - Dumping is predicted, this required disposals to be predicte.d - Disposals required mailing (because it's tightly coupled), and a smidge of other content systems. - I also had to fix a compnetworkgenerator issue at the same time so it wouldn't mispredict. * Fix a bunch of stuff * nasty merge * Some reviews * Some more reviews while I stash * Fix merge * Fix merge * Half of review * Review * re(h)f * lizards * feexes * feex
55 lines
1.7 KiB
C#
55 lines
1.7 KiB
C#
using Content.Server.Atmos;
|
|
using Content.Shared.Atmos;
|
|
using Robust.Shared.Containers;
|
|
|
|
namespace Content.Server.Disposal.Unit
|
|
{
|
|
[RegisterComponent]
|
|
public sealed partial class DisposalHolderComponent : Component, IGasMixtureHolder
|
|
{
|
|
public Container Container = null!;
|
|
|
|
/// <summary>
|
|
/// The total amount of time that it will take for this entity to
|
|
/// be pushed to the next tube
|
|
/// </summary>
|
|
[ViewVariables]
|
|
public float StartingTime { get; set; }
|
|
|
|
/// <summary>
|
|
/// Time left until the entity is pushed to the next tube
|
|
/// </summary>
|
|
[ViewVariables]
|
|
public float TimeLeft { get; set; }
|
|
|
|
[ViewVariables]
|
|
public EntityUid? PreviousTube { get; set; }
|
|
|
|
[ViewVariables]
|
|
public Direction PreviousDirection { get; set; } = Direction.Invalid;
|
|
|
|
[ViewVariables]
|
|
public Direction PreviousDirectionFrom => (PreviousDirection == Direction.Invalid) ? Direction.Invalid : PreviousDirection.GetOpposite();
|
|
|
|
[ViewVariables]
|
|
public EntityUid? CurrentTube { get; set; }
|
|
|
|
// CurrentDirection is not null when CurrentTube isn't null.
|
|
[ViewVariables]
|
|
public Direction CurrentDirection { get; set; } = Direction.Invalid;
|
|
|
|
/// <summary>Mistake prevention</summary>
|
|
[ViewVariables]
|
|
public bool IsExitingDisposals { get; set; } = false;
|
|
|
|
/// <summary>
|
|
/// A list of tags attached to the content, used for sorting
|
|
/// </summary>
|
|
[ViewVariables]
|
|
public HashSet<string> Tags { get; set; } = new();
|
|
|
|
[DataField("air")]
|
|
public GasMixture Air { get; set; } = new(70);
|
|
}
|
|
}
|