using Content.Shared.DoAfter; using Content.Shared.Mech.Components; using Robust.Shared.Serialization; namespace Content.Shared.Mech.Equipment.Components; /// /// A piece of equipment that can be installed into /// [RegisterComponent] public sealed partial class MechEquipmentComponent : Component { /// /// How long does it take to install this piece of equipment /// [DataField("installDuration")] public float InstallDuration = 5; /// /// The mech that the equipment is inside of. /// [ViewVariables] public EntityUid? EquipmentOwner; } /// /// Raised on the equipment when the installation is finished successfully /// public sealed class MechEquipmentInstallFinished : EntityEventArgs { public EntityUid Mech; public MechEquipmentInstallFinished(EntityUid mech) { Mech = mech; } } /// /// Raised on the equipment when the installation fails. /// public sealed class MechEquipmentInstallCancelled : EntityEventArgs { } [Serializable, NetSerializable] public sealed partial class GrabberDoAfterEvent : SimpleDoAfterEvent { } [Serializable, NetSerializable] public sealed partial class InsertEquipmentEvent : SimpleDoAfterEvent { }