using System;
using Content.Server.BodySystem;
namespace Content.Server.Interfaces.GameObjects.Components.Interaction
{
///
/// This interface gives components behavior when a body part
/// is added to their owning entity.
///
public interface IBodyPartAdded
{
void BodyPartAdded(BodyPartAddedEventArgs eventArgs);
}
public class BodyPartAddedEventArgs : EventArgs
{
public BodyPartAddedEventArgs(BodyPart part, string slotName)
{
Part = part;
SlotName = slotName;
}
public BodyPart Part { get; }
public string SlotName { get; }
}
///
/// This interface gives components behavior when a body part
/// is removed from their owning entity.
///
public interface IBodyPartRemoved
{
void BodyPartRemoved(BodyPartRemovedEventArgs eventArgs);
}
public class BodyPartRemovedEventArgs : EventArgs
{
public BodyPartRemovedEventArgs(BodyPart part, string slotName)
{
Part = part;
SlotName = slotName;
}
public BodyPart Part { get; }
public string SlotName { get; }
}
}