diff --git a/code/defines/mob/mob.dm b/code/defines/mob/mob.dm index d498b149e23..1b1466769d7 100644 --- a/code/defines/mob/mob.dm +++ b/code/defines/mob/mob.dm @@ -254,6 +254,7 @@ the mob is also allowed to move without any sort of restriction. For instance, i var/hallucination = 0 //Singularity wants you! var/grav_delay = 0 + var/being_strangled = 0 /mob/proc/contract_disease(var/datum/disease/virus, var/skip_this = 0, var/force_species_check=1) // world << "Contract_disease called by [src] with virus [virus]" diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm index 984faa999f2..7ba2f17de5c 100644 --- a/code/modules/admin/admin.dm +++ b/code/modules/admin/admin.dm @@ -2108,6 +2108,10 @@ var/job = "" + if(istype(M,/mob/new_player)) + job = "New player" + if(isliving(M)) + job = "Living" if(isobserver(M)) job = "Ghost" if(isalien(M)) @@ -2140,7 +2144,7 @@ - [M.name] - [M.real_name] - [M.key] + [M.name] - [M.real_name] - [M.key] ([job])
@@ -2163,7 +2167,6 @@ "} - text2file(dat, "debug.html") usr << browse(dat, "window=players;size=600x480") /obj/admins/proc/Jobbans() diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index ca5683c090c..0ea389a617b 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -363,7 +363,7 @@ if(istype(loc, /obj/)) var/obj/location_as_object = loc location_as_object.handle_internal_lifeform(src, 0) - if(isbreathing) + if(isbreathing && !being_strangled) //First, check for air from internal atmosphere (using an air tank and mask generally) breath = get_breath_from_internal(BREATH_VOLUME) // Super hacky -- TLE //breath = get_breath_from_internal(0.5) // Manually setting to old BREATH_VOLUME amount -- TLE @@ -407,6 +407,7 @@ location_as_object.handle_internal_lifeform(src, 0) handle_breath(breath) + being_strangled = 0 if(breath) loc.assume_air(breath) diff --git a/code/modules/mob/mob_grab.dm b/code/modules/mob/mob_grab.dm index 9eaab1143a6..5907676d1ea 100644 --- a/code/modules/mob/mob_grab.dm +++ b/code/modules/mob/mob_grab.dm @@ -78,7 +78,9 @@ if ((killing && state == 3)) affecting.Stun(5) affecting.Paralyse(3) - affecting.losebreath = min(affecting.losebreath + 2, 3) + affecting.being_strangled = 1 + var/datum/organ/external/head = affecting.organs["head"] + head.add_wound("Strangulation", 0) return diff --git a/icons/48x48/walls48.dmi b/icons/48x48/walls48.dmi new file mode 100644 index 00000000000..7e3dbe8bf67 Binary files /dev/null and b/icons/48x48/walls48.dmi differ