adds interactusing to electrocution (#5693)

This commit is contained in:
Flipp Syder
2021-12-04 01:59:09 -08:00
committed by GitHub
parent 863a85cef6
commit 4a161325f5
2 changed files with 12 additions and 0 deletions

View File

@@ -26,6 +26,9 @@ namespace Content.Server.Electrocution
[DataField("onHandInteract")] [DataField("onHandInteract")]
public bool OnHandInteract { get; set; } = true; public bool OnHandInteract { get; set; } = true;
[DataField("onInteractUsing")]
public bool OnInteractUsing { get; set; } = true;
[DataField("requirePower")] [DataField("requirePower")]
public bool RequirePower { get; } = true; public bool RequirePower { get; } = true;

View File

@@ -75,6 +75,7 @@ namespace Content.Server.Electrocution
SubscribeLocalEvent<ElectrifiedComponent, StartCollideEvent>(OnElectrifiedStartCollide); SubscribeLocalEvent<ElectrifiedComponent, StartCollideEvent>(OnElectrifiedStartCollide);
SubscribeLocalEvent<ElectrifiedComponent, AttackedEvent>(OnElectrifiedAttacked); SubscribeLocalEvent<ElectrifiedComponent, AttackedEvent>(OnElectrifiedAttacked);
SubscribeLocalEvent<ElectrifiedComponent, InteractHandEvent>(OnElectrifiedHandInteract); SubscribeLocalEvent<ElectrifiedComponent, InteractHandEvent>(OnElectrifiedHandInteract);
SubscribeLocalEvent<ElectrifiedComponent, InteractUsingEvent>(OnElectrifiedInteractUsing);
SubscribeLocalEvent<RandomInsulationComponent, MapInitEvent>(OnRandomInsulationMapInit); SubscribeLocalEvent<RandomInsulationComponent, MapInitEvent>(OnRandomInsulationMapInit);
UpdatesAfter.Add(typeof(PowerNetSystem)); UpdatesAfter.Add(typeof(PowerNetSystem));
@@ -142,6 +143,14 @@ namespace Content.Server.Electrocution
TryDoElectrifiedAct(uid, args.User.Uid, electrified); TryDoElectrifiedAct(uid, args.User.Uid, electrified);
} }
private void OnElectrifiedInteractUsing(EntityUid uid, ElectrifiedComponent electrified, InteractUsingEvent args)
{
if (!electrified.OnInteractUsing)
return;
TryDoElectrifiedAct(uid, args.User.Uid, electrified);
}
public bool TryDoElectrifiedAct(EntityUid uid, EntityUid targetUid, public bool TryDoElectrifiedAct(EntityUid uid, EntityUid targetUid,
ElectrifiedComponent? electrified = null, ElectrifiedComponent? electrified = null,
NodeContainerComponent? nodeContainer = null, NodeContainerComponent? nodeContainer = null,