using Content.Shared.Body.Components; using Robust.Shared.Serialization; namespace Content.Shared.Body.Part { /// /// This interface gives components behavior when a body part /// is removed from their owning entity. /// public interface IBodyPartRemoved { /// /// Called when a is removed from the /// entity owning this component. /// /// Information about the part that was removed. void BodyPartRemoved(BodyPartRemovedEventArgs args); } [Serializable, NetSerializable] public sealed class BodyPartRemovedEventArgs : EventArgs { public BodyPartRemovedEventArgs(string slot, SharedBodyPartComponent part) { Slot = slot; Part = part; } /// /// The slot that was removed from. /// public string Slot { get; } /// /// The part that was removed. /// public SharedBodyPartComponent Part { get; } } }