24 lines
862 B
C#
24 lines
862 B
C#
using Content.Server.Emp;
|
|
using Content.Server.Xenoarchaeology.XenoArtifacts.Effects.Components;
|
|
using Content.Server.Xenoarchaeology.XenoArtifacts.Events;
|
|
using Robust.Server.GameObjects;
|
|
|
|
namespace Content.Server.Xenoarchaeology.XenoArtifacts.Effects.Systems;
|
|
|
|
public sealed class EmpArtifactSystem : EntitySystem
|
|
{
|
|
[Dependency] private readonly EmpSystem _emp = default!;
|
|
[Dependency] private readonly TransformSystem _transform = default!;
|
|
|
|
/// <inheritdoc/>
|
|
public override void Initialize()
|
|
{
|
|
SubscribeLocalEvent<EmpArtifactComponent, ArtifactActivatedEvent>(OnActivate);
|
|
}
|
|
|
|
private void OnActivate(EntityUid uid, EmpArtifactComponent component, ArtifactActivatedEvent args)
|
|
{
|
|
_emp.EmpPulse(_transform.GetMapCoordinates(uid), component.Range, component.EnergyConsumption, component.DisableDuration);
|
|
}
|
|
}
|