using Content.Shared.Recycling; using Robust.Shared.Audio; namespace Content.Server.Recycling.Components { // TODO: Add sound and safe beep [RegisterComponent] [Access(typeof(RecyclerSystem))] public sealed class RecyclerComponent : Component { [Dependency] private readonly IEntityManager _entMan = default!; [DataField("enabled")] public bool Enabled; /// /// Whether or not sentient beings will be recycled /// [ViewVariables(VVAccess.ReadWrite)] [DataField("safe")] internal bool Safe = true; /// /// The percentage of material that will be recovered /// [ViewVariables(VVAccess.ReadWrite)] [DataField("efficiency")] internal float Efficiency = 0.25f; /// /// Default sound to play when recycling /// [ViewVariables(VVAccess.ReadWrite)] [DataField("sound")] public SoundSpecifier? Sound = new SoundPathSpecifier("/Audio/Effects/saw.ogg"); // Ratelimit sounds to avoid spam public TimeSpan LastSound; public int ItemsProcessed; } }