using Content.Server.Traits.Assorted;
using Content.Shared.Chemistry.Reagent;
using Content.Shared.EntityEffects;
using JetBrains.Annotations;
using Robust.Shared.Prototypes;
namespace Content.Server.EntityEffects.Effects;
///
/// Reset narcolepsy timer
///
[UsedImplicitly]
public sealed partial class ResetNarcolepsy : EntityEffect
{
///
/// The # of seconds the effect resets the narcolepsy timer to
///
[DataField("TimerReset")]
public int TimerReset = 600;
protected override string? ReagentEffectGuidebookText(IPrototypeManager prototype, IEntitySystemManager entSys)
=> Loc.GetString("reagent-effect-guidebook-reset-narcolepsy", ("chance", Probability));
public override void Effect(EntityEffectBaseArgs args)
{
if (args is EntityEffectReagentArgs reagentArgs)
if (reagentArgs.Scale != 1f)
return;
args.EntityManager.EntitySysManager.GetEntitySystem().AdjustNarcolepsyTimer(args.TargetEntity, TimerReset);
}
}