using Content.Shared.DoAfter;
using Robust.Shared.Prototypes;
using Robust.Shared.Serialization;
namespace Content.Shared._Offbrand.StatusEffects;
[RegisterComponent]
[Access(typeof(RemovableStatusEffectSystem))]
public sealed partial class RemovableStatusEffectComponent : Component
{
///
/// Verb message to display when removing this status effect
///
[DataField(required: true)]
public LocId Verb;
///
/// How long the status effect removal takes
///
[DataField]
public TimeSpan RemovalTime = TimeSpan.FromSeconds(1);
///
/// Entity to spawn when removed
///
[DataField]
public EntProtoId? SpawnOnRemove;
[DataField]
public LocId? SelfUserCompleted;
[DataField]
public LocId? SelfOtherCompleted;
[DataField]
public LocId? UserCompleted;
[DataField]
public LocId? OtherCompleted;
[DataField]
public LocId? SelfUserStarted;
[DataField]
public LocId? SelfOtherStarted;
[DataField]
public LocId? UserStarted;
[DataField]
public LocId? OtherStarted;
}
[Serializable, NetSerializable]
public sealed partial class RemoveStatusEffectEvent : SimpleDoAfterEvent;