diff --git a/code/controllers/subsystems/statpanel_ch.dm b/code/controllers/subsystems/statpanel_ch.dm index c17635dc60..82df8e59d1 100644 --- a/code/controllers/subsystems/statpanel_ch.dm +++ b/code/controllers/subsystems/statpanel_ch.dm @@ -50,7 +50,7 @@ SUBSYSTEM_DEF(statpanels) var/client/target = currentrun[length(currentrun)] currentrun.len-- - if(!target.stat_panel.is_ready()) + if(!target?.stat_panel?.is_ready()) // Null target client, client has null stat panel, or stat panel isn't ready continue if(target.stat_tab == "Status" && num_fires % status_wait == 0) @@ -393,6 +393,9 @@ SUBSYSTEM_DEF(statpanels) for(index in 1 to length(to_make)) var/atom/thing = to_make[index] + if(!thing) // A null thing snuck in somehow + continue + var/generated_string if(ismob(thing) || length(thing.overlays) > 0) var/force_south = FALSE diff --git a/code/modules/clothing/head/misc_special.dm b/code/modules/clothing/head/misc_special.dm index da03cacb6e..ba47afc8da 100644 --- a/code/modules/clothing/head/misc_special.dm +++ b/code/modules/clothing/head/misc_special.dm @@ -137,7 +137,7 @@ var/turf/location = src.loc if(istype(location, /mob/)) var/mob/living/carbon/human/M = location - if(istype(M) && M.item_is_in_hands(src) || M.head == src) //CHOMPEdit + if(ishuman(M) && (M.item_is_in_hands(src) || M.head == src)) //CHOMPEdit location = M.loc if (istype(location, /turf)) diff --git a/code/modules/mob/holder.dm b/code/modules/mob/holder.dm index 55d65ec69b..5e3dc1b4fb 100644 --- a/code/modules/mob/holder.dm +++ b/code/modules/mob/holder.dm @@ -64,7 +64,7 @@ var/list/holder_mob_icon_cache = list() location = "[H.loc.loc]'s [H.loc]" else location = "[H.loc]" - if (location != "" && statpanel("Status")) + if (location != "") . += "" . += "Location: [location]" //CHOMPEdit End