diff --git a/code/modules/nifsoft/nif.dm b/code/modules/nifsoft/nif.dm
index f6f342ca19..65473d220b 100644
--- a/code/modules/nifsoft/nif.dm
+++ b/code/modules/nifsoft/nif.dm
@@ -203,6 +203,7 @@ You can also set the stat of a NIF to NIF_TEMPFAIL without any issues to disable
persist_nif_data(human)
if(durability <= 0)
+ durability = 0 //failsafe us to a minimum of 0% so we don't just wash into massively negative durability from repeated EMPs
stat = NIF_TEMPFAIL
update_icon()
@@ -230,6 +231,11 @@ You can also set the stat of a NIF to NIF_TEMPFAIL without any issues to disable
if(C.get_amount() < 3)
to_chat(user,"You need at least three coils of wire to add them to \the [src].")
return
+ if(durability >= initial(durability))
+ to_chat(user,"There's no damaged wiring that needs replacing!")
+ open = 3
+ update_icon()
+ return
if(do_after(user, 6 SECONDS, src) && open == 1 && C.use(3))
user.visible_message("[user] replaces some wiring in \the [src].","You replace any burned out wiring in \the [src].")
playsound(src, 'sound/items/Deconstruct.ogg', 50, 1)