diff --git a/code/game/machinery/computer/prisoner.dm b/code/game/machinery/computer/prisoner.dm index 6c5f995362b..c42b1811c26 100644 --- a/code/game/machinery/computer/prisoner.dm +++ b/code/game/machinery/computer/prisoner.dm @@ -61,9 +61,9 @@ var/loc_display = "Unknown" var/health_display = "OK" var/total_loss = round(M.getOxyLoss() + M.getToxLoss() + M.getFireLoss() + M.getBruteLoss(), 1) - if (M.stat > UNCONSCIOUS) + if(M.stat == DEAD) health_display = "DEAD" - else if (total_loss) + else if(total_loss) health_display = "HURT ([total_loss])" if((M.z in config.station_levels) && !istype(M.loc, /turf/space)) loc_display = "[get_area(M)]" diff --git a/code/game/objects/items/control_wand.dm b/code/game/objects/items/control_wand.dm index b04ed35fe75..07a1d2b4e92 100644 --- a/code/game/objects/items/control_wand.dm +++ b/code/game/objects/items/control_wand.dm @@ -134,10 +134,18 @@ if (!istype(I)) to_chat(user,"[H] is not wearing an ID.") return - if (emagged) - visible_message(J,"[J] emits an error tone.") + if (J.emagged) + to_chat(user, "[J] emits an error tone.") + else if (J.emped) + to_chat(user, "The circuits on [J] appear to be fried.") else if (J.parole_locked && J.flags & NODROP && I.flags & NODROP) J.unlock() + else if (access_heads in I.access) + to_chat(user, "[J] cannot be locked on someone wearing an ID with head access. They might need to use their ID on a keycard swiper.") + return + else if (access_security in I.access) + to_chat(user, "[J] cannot be locked on someone wearing an ID with security access.") + return else if (!J.parole_locked && !(J.flags & NODROP) && !(I.flags & NODROP)) J.lock(I) else diff --git a/code/modules/clothing/under/color.dm b/code/modules/clothing/under/color.dm index a64e6047db8..8c049b9cdea 100644 --- a/code/modules/clothing/under/color.dm +++ b/code/modules/clothing/under/color.dm @@ -106,35 +106,36 @@ /obj/item/clothing/under/color/yellow/parole name = "parole jumpsuit" - desc = "" - var/desc_locked = "A jumpsuit worn by parolees. Its suit sensors are always fully on. It is LOCKED." - var/desc_unlocked = "A jumpsuit worn by parolees. Its suit sensors are always fully on. It is UNLOCKED." + desc = "A jumpsuit worn by parolees. Its suit sensors are always fully on. Its lock light is OFF." + var/desc_locked = "A jumpsuit worn by parolees. Its suit sensors are always fully on. Its lock light is ON." + var/desc_emagged = "A jumpsuit worn by parolees. Its suit sensors are always fully on. Its lock light is BLINKING." + var/desc_emped = "A jumpsuit worn by parolees. Its suit sensors are always fully on. Its lock light is FLICKERING." has_sensor = 2 sensor_mode = 3 var/parole_locked = 0 var/emagged = 0 + var emped = 0 var/obj/item/weapon/card/id/parole_id = null var/mob/living/carbon/human/worn_by = null -/obj/item/clothing/under/color/yellow/parole/New() - ..() - desc = desc_unlocked - /obj/item/clothing/under/color/yellow/parole/emag_act(user as mob) if(parole_locked && !emagged) to_chat(user, "\red You overload the suit's locking mechanism.") - emagged = 1 unlock() + emagged = 1 + desc = desc_emagged /obj/item/clothing/under/color/yellow/parole/emp_act(var/severity) if(parole_locked && !emagged && prob(30)) unlock() + emped = 1 + desc = desc_emped /obj/item/clothing/under/color/yellow/parole/proc/unlock() worn_by = loc flags &= ~NODROP parole_locked = 0 - desc = desc_unlocked + desc = initial(desc) parole_id.flags &= ~NODROP parole_id = null playsound(loc, 'sound/machines/click.ogg', 10, 1)