Files
tbd-station-14/Content.Shared/Inventory/Events/EquippedEvents.cs
2022-05-13 17:59:03 +10:00

47 lines
1.2 KiB
C#

namespace Content.Shared.Inventory.Events;
public abstract class EquippedEventBase : EntityEventArgs
{
/// <summary>
/// The entity equipping.
/// </summary>
public readonly EntityUid Equipee;
/// <summary>
/// The entity which got equipped.
/// </summary>
public readonly EntityUid Equipment;
/// <summary>
/// The slot the entity got equipped to.
/// </summary>
public readonly string Slot;
/// <summary>
/// Slotflags of the slot the entity just got equipped to.
/// </summary>
public readonly SlotFlags SlotFlags;
public EquippedEventBase(EntityUid equipee, EntityUid equipment, SlotDefinition slotDefinition)
{
Equipee = equipee;
Equipment = equipment;
Slot = slotDefinition.Name;
SlotFlags = slotDefinition.SlotFlags;
}
}
public sealed class DidEquipEvent : EquippedEventBase
{
public DidEquipEvent(EntityUid equipee, EntityUid equipment, SlotDefinition slotDefinition) : base(equipee, equipment, slotDefinition)
{
}
}
public sealed class GotEquippedEvent : EquippedEventBase
{
public GotEquippedEvent(EntityUid equipee, EntityUid equipment, SlotDefinition slotDefinition) : base(equipee, equipment, slotDefinition)
{
}
}