using Content.Shared.DeviceLinking;
using Content.Shared.Disposal.SignalRouter;
using Robust.Shared.GameStates;
using Robust.Shared.Prototypes;
namespace Content.Shared.Disposal.Tube;
///
/// Disposal tubes with this component can switched to route entities in
/// different directions by receiving signals from other devices.
///
[RegisterComponent, NetworkedComponent, AutoGenerateComponentState]
[Access(typeof(DisposalSignalRouterSystem))]
public sealed partial class DisposalSignalRouterComponent : Component
{
///
/// Whether to route items to the side or not.
///
[DataField, AutoNetworkedField]
public bool Routing;
///
/// Port that sets the router to send items to the side.
///
[DataField]
public ProtoId OnPort = "On";
///
/// Port that sets the router to send items ahead.
///
[DataField]
public ProtoId OffPort = "Off";
///
/// Port that toggles the router between sending items to the side and ahead.
///
[DataField]
public ProtoId TogglePort = "Toggle";
}