UseDelay + ItemCooldown merge (#22502)

This commit is contained in:
AJCM-git
2024-01-03 21:33:09 -04:00
committed by GitHub
parent 42ec9b2967
commit 9c522c8b19
80 changed files with 324 additions and 589 deletions

View File

@@ -1,6 +1,5 @@
using Content.Server.Explosion.EntitySystems;
using Content.Shared.Timing;
using Robust.Shared.Audio;
using Robust.Shared.Audio.Systems;
using Robust.Shared.Timing;
@@ -43,14 +42,13 @@ public sealed class IgniteOnTriggerSystem : EntitySystem
private void OnTrigger(Entity<IgniteOnTriggerComponent> ent, ref TriggerEvent args)
{
// prevent spamming sound and ignition
TryComp<UseDelayComponent>(ent, out var delay);
if (_useDelay.ActiveDelay(ent, delay))
if (!TryComp(ent.Owner, out UseDelayComponent? useDelay) || _useDelay.IsDelayed((ent.Owner, useDelay)))
return;
_source.SetIgnited(ent.Owner);
_audio.PlayPvs(ent.Comp.IgniteSound, ent);
_useDelay.BeginDelay(ent, delay);
_useDelay.TryResetDelay((ent.Owner, useDelay));
ent.Comp.IgnitedUntil = _timing.CurTime + ent.Comp.IgnitedTime;
}
}