6
2025-11-05 11:11:22 +03:00

26 lines
788 B
C#

using Content.Server.Electrocution;
using Content.Shared.Electrocution;
using Content.Shared.Construction;
namespace Content.Server.Construction.Completions;
[DataDefinition]
public sealed partial class AttemptElectrocute : IGraphAction
{
public void PerformAction(EntityUid uid, EntityUid? userUid, IEntityManager entityManager)
{
if (userUid == null)
return;
if (!entityManager.TryGetComponent<ElectrifiedComponent>(uid, out var electrified))
return;
var currentValue = electrified.Enabled;
electrified.Enabled = true;
entityManager.EntitySysManager.GetEntitySystem<ElectrocutionSystem>().TryDoElectrifiedAct(uid, userUid.Value, electrified: electrified);
electrified.Enabled = currentValue;
}
}