using Robust.Shared.Containers;
using Robust.Shared.GameStates;
namespace Content.Shared.Body;
///
/// Component on the entity that "has" a body, and that oversees entities with the inside it.
///
///
///
[RegisterComponent, NetworkedComponent]
[Access(typeof(BodySystem))]
public sealed partial class BodyComponent : Component
{
public const string ContainerID = "body_organs";
///
/// The actual container with entities with in it
///
[ViewVariables]
public Container? Organs;
}
///
/// Raised on organ entity, when it is inserted into a body
///
[ByRefEvent]
public readonly record struct OrganGotInsertedEvent(EntityUid Target);
///
/// Raised on organ entity, when it is removed from a body
///
[ByRefEvent]
public readonly record struct OrganGotRemovedEvent(EntityUid Target);
///
/// Raised on body entity, when an organ is inserted into it
///
[ByRefEvent]
public readonly record struct OrganInsertedIntoEvent(EntityUid Organ);
///
/// Raised on body entity, when an organ is removed from it
///
[ByRefEvent]
public readonly record struct OrganRemovedFromEvent(EntityUid Organ);