diff --git a/code/modules/clothing/spacesuits/rig/modules/modules.dm b/code/modules/clothing/spacesuits/rig/modules/modules.dm
index 830e0d784ce..17498a31b23 100644
--- a/code/modules/clothing/spacesuits/rig/modules/modules.dm
+++ b/code/modules/clothing/spacesuits/rig/modules/modules.dm
@@ -138,6 +138,7 @@
if(damage >= 2)
usr << "The [interface_name] is damaged beyond use!"
+ return 0
if(world.time < next_use)
usr << "You cannot use the [interface_name] again so soon."
@@ -147,7 +148,7 @@
usr << "The suit is not initialized."
return 0
- if(usr.lying || usr.stat || usr.stunned || usr.paralysis)
+ if(usr.lying || usr.stat || usr.stunned || usr.paralysis || usr.weakened)
usr << "You cannot use the suit in this state."
return 0
@@ -157,7 +158,7 @@
if(holder.security_check_enabled && !holder.check_suit_access(usr))
usr << "Access denied."
- return
+ return 0
if(!holder.check_power_cost(usr, use_power_cost, 0, src, (istype(usr,/mob/living/silicon ? 1 : 0) ) ) )
return 0
diff --git a/code/modules/clothing/spacesuits/rig/rig.dm b/code/modules/clothing/spacesuits/rig/rig.dm
index 7a09fe5bc7d..2f5d1f54746 100644
--- a/code/modules/clothing/spacesuits/rig/rig.dm
+++ b/code/modules/clothing/spacesuits/rig/rig.dm
@@ -313,8 +313,9 @@
if(!istype(wearer) || loc != wearer || wearer.back != src || canremove || !cell || cell.charge <= 0)
if(!cell || cell.charge <= 0)
- if(electrified >0)
+ if(electrified > 0)
electrified = 0
+ malfunction_delay = 0 //ensures that people aren't stuck in their suit if the cell runs out while malfunctioning.
if(!offline)
if(istype(wearer))
if(!canremove)
@@ -338,7 +339,6 @@
for(var/obj/item/rig_module/module in installed_modules)
module.deactivate()
offline = 2
- malfunction_delay = 0 //ensures that people aren't stuck in their suit if the cell runs out while malfunctioning.
chest.slowdown = offline_slowdown
return
@@ -409,7 +409,7 @@
data["boots"] = (boots ? "[boots.name]" : "None.")
data["chest"] = (chest ? "[chest.name]" : "None.")
- data["charge"] = cell ? cell.charge : 0
+ data["charge"] = cell ? round(cell.charge,1) : 0
data["maxcharge"] = cell ? cell.maxcharge : 0
data["chargestatus"] = cell ? Floor((cell.charge/cell.maxcharge)*50) : 0
diff --git a/code/modules/projectiles/guns/energy/special.dm b/code/modules/projectiles/guns/energy/special.dm
index 76bcebac3c2..31480de9c8b 100644
--- a/code/modules/projectiles/guns/energy/special.dm
+++ b/code/modules/projectiles/guns/energy/special.dm
@@ -13,9 +13,7 @@
projectile_type = /obj/item/projectile/ion
/obj/item/weapon/gun/energy/ionrifle/emp_act(severity)
- if(severity > 2)
- return //so it doesn't EMP itself, I guess
- ..()
+ ..(max(severity, 2)) //so it doesn't EMP itself, I guess
/obj/item/weapon/gun/energy/ionrifle/update_icon()
..()