using Content.Shared.Inventory;
using Robust.Shared.GameStates;
namespace Content.Shared.Damage.Components;
///
/// This component is added to entities to protect them from being damaged
/// when interacting with objects with the
/// If the entity has sufficient protection, interaction with the object is not cancelled.
/// This allows the user to do things like remove a lightbulb.
///
[RegisterComponent, NetworkedComponent]
public sealed partial class DamageOnInteractProtectionComponent : Component, IClothingSlots
{
///
/// How much and what kind of damage to protect the user from
/// when interacting with something with
///
[DataField(required: true)]
public DamageModifierSet DamageProtection = default!;
///
/// Only protects if the item is in the correct slot
/// i.e. having gloves in your pocket doesn't protect you, it has to be on your hands
///
[DataField]
public SlotFlags Slots { get; set; } = SlotFlags.GLOVES;
}