From dc23d1517003bd1efdf51bd1ca307024772c0004 Mon Sep 17 00:00:00 2001 From: nightred Date: Sun, 15 Sep 2019 02:34:21 -0500 Subject: [PATCH] Blindness removes your ability to see colours (#46475) * Blindness removes colours so you can only see if an object is near, not the fine points on it. * Fixed up the monochromatic trait to persist when removing blindness * Removed added trait and created new colour filter for blindness * Blankspace Removal * removed the src before the proc as it was not needed --- code/modules/client/client_colour.dm | 3 +++ code/modules/mob/status_procs.dm | 6 ++++++ 2 files changed, 9 insertions(+) diff --git a/code/modules/client/client_colour.dm b/code/modules/client/client_colour.dm index f06b54099b3..b9716934237 100644 --- a/code/modules/client/client_colour.dm +++ b/code/modules/client/client_colour.dm @@ -113,3 +113,6 @@ /datum/client_colour/monochrome/trance priority = 1 + +/datum/client_colour/monochrome/blind + priority = 1 diff --git a/code/modules/mob/status_procs.dm b/code/modules/mob/status_procs.dm index bc4197f6d3e..99c57b070fb 100644 --- a/code/modules/mob/status_procs.dm +++ b/code/modules/mob/status_procs.dm @@ -30,6 +30,8 @@ if(stat == CONSCIOUS || stat == SOFT_CRIT) throw_alert("blind", /obj/screen/alert/blind) overlay_fullscreen("blind", /obj/screen/fullscreen/blind) + // You are blind why should you be able to make out details like color, only shapes near you + add_client_colour(/datum/client_colour/monochrome/blind) /** * Adjust a mobs blindness by an amount @@ -44,6 +46,7 @@ if(stat == CONSCIOUS || stat == SOFT_CRIT) throw_alert("blind", /obj/screen/alert/blind) overlay_fullscreen("blind", /obj/screen/fullscreen/blind) + add_client_colour(/datum/client_colour/monochrome/blind) else if(eye_blind) var/blind_minimum = 0 if((stat != CONSCIOUS && stat != SOFT_CRIT)) @@ -56,6 +59,7 @@ if(!eye_blind) clear_alert("blind") clear_fullscreen("blind") + remove_client_colour(/datum/client_colour/monochrome/blind) /** * Force set the blindness of a mob to some level */ @@ -67,6 +71,7 @@ if(stat == CONSCIOUS || stat == SOFT_CRIT) throw_alert("blind", /obj/screen/alert/blind) overlay_fullscreen("blind", /obj/screen/fullscreen/blind) + add_client_colour(/datum/client_colour/monochrome/blind) else if(eye_blind) var/blind_minimum = 0 if(stat != CONSCIOUS && stat != SOFT_CRIT) @@ -79,6 +84,7 @@ if(!eye_blind) clear_alert("blind") clear_fullscreen("blind") + remove_client_colour(/datum/client_colour/monochrome/blind) /** * Make the mobs vision blurry