[MIRROR] EMP & Wires refactor (#12658)

Co-authored-by: Guti <32563288+TheCaramelion@users.noreply.github.com>
Co-authored-by: Cameron Lennox <killer65311@gmail.com>
This commit is contained in:
CHOMPStation2StaffMirrorBot
2026-04-11 16:14:18 -04:00
committed by GitHub
co-authored by Guti Cameron Lennox
parent 494fc9bea9
commit b116cc450d
148 changed files with 665 additions and 384 deletions
@@ -155,7 +155,8 @@ Implant Specifics:<BR>"}
return dat
/obj/item/implant/tracking/emp_act(severity, recursive)
if (malfunction) //no, dawg, you can't malfunction while you are malfunctioning
. = ..()
if (. & EMP_PROTECT_SELF || malfunction) //no, dawg, you can't malfunction while you are malfunctioning
return
malfunction = MALFUNCTION_TEMPORARY
@@ -295,7 +296,8 @@ Implant Specifics:<BR>"}
to_chat(usr, "The implanted explosive implant in [source] can be activated by saying something containing the phrase ''[src.phrase]'', <B>say [src.phrase]</B> to attempt to activate.")
/obj/item/implant/explosive/emp_act(severity, recursive)
if (malfunction)
. = ..()
if (. & EMP_PROTECT_SELF || malfunction)
return
malfunction = MALFUNCTION_TEMPORARY
switch (severity)
@@ -399,7 +401,8 @@ the implant may become unstable and either pre-maturely inject the subject or si
return
/obj/item/implant/chem/emp_act(severity, recursive)
if (malfunction)
. = ..()
if (. & EMP_PROTECT_SELF || malfunction)
return
malfunction = MALFUNCTION_TEMPORARY
@@ -565,7 +568,8 @@ the implant may become unstable and either pre-maturely inject the subject or si
STOP_PROCESSING(SSobj, src)
/obj/item/implant/death_alarm/emp_act(severity, recursive) //for some reason alarms stop going off in case they are emp'd, even without this
if (malfunction) //so I'm just going to add a meltdown chance here
. = ..()
if (. & EMP_PROTECT_SELF || malfunction) //so I'm just going to add a meltdown chance here
return
malfunction = MALFUNCTION_TEMPORARY
if(prob(40)) //CHOMPEDIT: Make the malfunction a probability because annoying
@@ -114,6 +114,9 @@
/obj/item/implant/sizecontrol/emp_act(severity, recursive)
. = ..()
if (. & EMP_PROTECT_SELF)
return
if(isliving(imp_in))
var/newsize = pick(RESIZE_HUGE,RESIZE_BIG,RESIZE_NORMAL,RESIZE_SMALL,RESIZE_TINY,RESIZE_A_HUGEBIG,RESIZE_A_BIGNORMAL,RESIZE_A_NORMALSMALL,RESIZE_A_SMALLTINY)
var/mob/living/H = imp_in
@@ -33,6 +33,9 @@
return dat
/obj/item/implant/integrated_circuit/emp_act(severity, recursive)
. = ..()
if (. & EMP_PROTECT_SELF)
return
IC.emp_act(severity, recursive)
/obj/item/implant/integrated_circuit/examine(mob/user)
@@ -51,9 +51,8 @@ Implant Specifics:<BR>"}
return dat
/obj/item/implant/neural/emp_act(severity, recursive)
if(!my_brain)
return
if(malfunction) //Don't malfunction while malfunctioning.
. = ..()
if (. & EMP_PROTECT_SELF || !my_brain || malfunction)
return
malfunction = MALFUNCTION_TEMPORARY