using Content.Shared.DoAfter; using Robust.Shared.GameStates; using Robust.Shared.Prototypes; using Robust.Shared.Serialization; namespace Content.Shared.Engineering.Components; /// /// Add a verb to entities that will disassemble them after an optional doafter to a specified prototype. /// [RegisterComponent, NetworkedComponent, AutoGenerateComponentState] public sealed partial class DisassembleOnAltVerbComponent : Component { /// /// The prototype that is spawned after disassembly. If null, nothing will spawn. /// [DataField, AutoNetworkedField] public EntProtoId? PrototypeToSpawn; /// /// The time it takes to disassemble the entity. /// [DataField, AutoNetworkedField] public TimeSpan DisassembleTime = TimeSpan.FromSeconds(0); } [Serializable, NetSerializable] public sealed partial class DisassembleDoAfterEvent : SimpleDoAfterEvent;