diff --git a/code/datums/brain_damage/phobia.dm b/code/datums/brain_damage/phobia.dm
index 12faa9ba365..bb8e454d8d6 100644
--- a/code/datums/brain_damage/phobia.dm
+++ b/code/datums/brain_damage/phobia.dm
@@ -35,7 +35,7 @@
..()
if(HAS_TRAIT(owner, TRAIT_FEARLESS))
return
- if(is_blind(owner))
+ if(owner.is_blind())
return
if(world.time > next_check && world.time > next_scare)
next_check = world.time + 50
diff --git a/code/datums/brain_damage/severe.dm b/code/datums/brain_damage/severe.dm
index 2cf49b17548..4874fd3581e 100644
--- a/code/datums/brain_damage/severe.dm
+++ b/code/datums/brain_damage/severe.dm
@@ -165,7 +165,7 @@
stress = max(stress - 4, 0)
/datum/brain_trauma/severe/monophobia/proc/check_alone()
- if(HAS_TRAIT(owner, TRAIT_BLIND))
+ if(owner.is_blind())
return TRUE
for(var/mob/M in oview(owner, 7))
if(!isliving(M)) //ghosts ain't people
diff --git a/code/datums/diseases/advance/symptoms/vision.dm b/code/datums/diseases/advance/symptoms/vision.dm
index 87a784e7ded..079d94b55aa 100644
--- a/code/datums/diseases/advance/symptoms/vision.dm
+++ b/code/datums/diseases/advance/symptoms/vision.dm
@@ -63,7 +63,7 @@ Bonus
M.become_nearsighted(EYE_DAMAGE)
if(prob(eyes.damage - 10 + 1))
if(!remove_eyes)
- if(!HAS_TRAIT(M, TRAIT_BLIND))
+ if(!M.is_blind())
to_chat(M, "You go blind!")
eyes.applyOrganDamage(eyes.maxHealth)
else
diff --git a/code/datums/dna.dm b/code/datums/dna.dm
index 4cd81eaa973..e7b6f40e09a 100644
--- a/code/datums/dna.dm
+++ b/code/datums/dna.dm
@@ -647,7 +647,7 @@
/mob/living/carbon/human/proc/something_horrible_mindmelt()
- if(!HAS_TRAIT(src, TRAIT_BLIND))
+ if(!is_blind())
var/obj/item/organ/eyes/eyes = locate(/obj/item/organ/eyes) in internal_organs
if(!eyes)
return
diff --git a/code/game/machinery/computer/camera.dm b/code/game/machinery/computer/camera.dm
index bf7665b4591..c865633cbe9 100644
--- a/code/game/machinery/computer/camera.dm
+++ b/code/game/machinery/computer/camera.dm
@@ -23,7 +23,7 @@
network += "[idnum][i]"
/obj/machinery/computer/security/check_eye(mob/user)
- if( (machine_stat & (NOPOWER|BROKEN)) || user.incapacitated() || user.eye_blind )
+ if( (machine_stat & (NOPOWER|BROKEN)) || user.incapacitated() || user.is_blind() )
user.unset_machine()
return
if(!(user in watchers))
@@ -102,7 +102,7 @@
return
if(C)
var/camera_fail = 0
- if(!C.can_use() || user.machine != src || user.eye_blind || user.incapacitated())
+ if(!C.can_use() || user.machine != src || user.is_blind() || user.incapacitated())
camera_fail = 1
else if(iscyborg(user) || long_ranged)
var/list/viewing = viewers(src)
diff --git a/code/game/machinery/computer/camera_advanced.dm b/code/game/machinery/computer/camera_advanced.dm
index a9c54680e1b..b09a50cf29f 100644
--- a/code/game/machinery/computer/camera_advanced.dm
+++ b/code/game/machinery/computer/camera_advanced.dm
@@ -79,7 +79,7 @@
playsound(src, 'sound/machines/terminal_off.ogg', 25, FALSE)
/obj/machinery/computer/camera_advanced/check_eye(mob/user)
- if( (machine_stat & (NOPOWER|BROKEN)) || (!Adjacent(user) && !user.has_unlimited_silicon_privilege) || user.eye_blind || user.incapacitated() )
+ if( (machine_stat & (NOPOWER|BROKEN)) || (!Adjacent(user) && !user.has_unlimited_silicon_privilege) || user.is_blind() || user.incapacitated() )
user.unset_machine()
/obj/machinery/computer/camera_advanced/Destroy()
diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm
index 72636a127f1..f443a0aec83 100644
--- a/code/game/objects/items.dm
+++ b/code/game/objects/items.dm
@@ -542,7 +542,7 @@ GLOBAL_VAR_INIT(embedpocalypse, FALSE) // if true, all items will be able to emb
M.adjust_blurriness(15)
if(M.stat != DEAD)
to_chat(M, "Your eyes start to bleed profusely!")
- if(!(HAS_TRAIT(M, TRAIT_BLIND) || HAS_TRAIT(M, TRAIT_NEARSIGHT)))
+ if(!(M.is_blind() || HAS_TRAIT(M, TRAIT_NEARSIGHT)))
to_chat(M, "You become nearsighted!")
M.become_nearsighted(EYE_DAMAGE)
if(prob(50))
diff --git a/code/game/objects/items/devices/camera_bug.dm b/code/game/objects/items/devices/camera_bug.dm
index fc1b6380f26..92a8a0c2469 100644
--- a/code/game/objects/items/devices/camera_bug.dm
+++ b/code/game/objects/items/devices/camera_bug.dm
@@ -60,7 +60,7 @@
interact(user)
/obj/item/camera_bug/check_eye(mob/user)
- if ( loc != user || user.incapacitated() || user.eye_blind || !current )
+ if ( loc != user || user.incapacitated() || user.is_blind() || !current )
user.unset_machine()
return 0
var/turf/T_user = get_turf(user.loc)
diff --git a/code/game/objects/items/devices/flashlight.dm b/code/game/objects/items/devices/flashlight.dm
index e52cecc227c..89aefd48318 100644
--- a/code/game/objects/items/devices/flashlight.dm
+++ b/code/game/objects/items/devices/flashlight.dm
@@ -42,7 +42,7 @@
return 1
/obj/item/flashlight/suicide_act(mob/living/carbon/human/user)
- if (user.eye_blind)
+ if (user.is_blind())
user.visible_message("[user] is putting [src] close to [user.p_their()] eyes and turning it on... but [user.p_theyre()] blind!")
return SHAME
user.visible_message("[user] is putting [src] close to [user.p_their()] eyes and turning it on! It looks like [user.p_theyre()] trying to commit suicide!")
@@ -86,7 +86,7 @@
else
user.visible_message("[user] directs [src] to [M]'s eyes.", \
"You direct [src] to [M]'s eyes.")
- if(M.stat == DEAD || (HAS_TRAIT(M, TRAIT_BLIND)) || !M.flash_act(visual = 1)) //mob is dead or fully blind
+ if(M.stat == DEAD || (M.is_blind()) || !M.flash_act(visual = 1)) //mob is dead or fully blind
to_chat(user, "[M]'s pupils don't react to the light!")
else if(M.dna && M.dna.check_mutation(XRAY)) //mob has X-ray vision
to_chat(user, "[M]'s pupils give an eerie glow!")
diff --git a/code/game/objects/items/devices/laserpointer.dm b/code/game/objects/items/devices/laserpointer.dm
index 232b9c71dbd..5e8db504704 100644
--- a/code/game/objects/items/devices/laserpointer.dm
+++ b/code/game/objects/items/devices/laserpointer.dm
@@ -134,7 +134,7 @@
//catpeople
for(var/mob/living/carbon/human/H in view(1,targloc))
- if(!isfelinid(H) || H.incapacitated() || H.eye_blind )
+ if(!isfelinid(H) || H.incapacitated() || H.is_blind())
continue
if(user.mobility_flags & MOBILITY_STAND)
H.setDir(get_dir(H,targloc)) // kitty always looks at the light
diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm
index 8917927b4ee..e3881672e6d 100644
--- a/code/game/objects/items/devices/scanners.dm
+++ b/code/game/objects/items/devices/scanners.dm
@@ -133,7 +133,7 @@ GENE SCANNER
// Used by the PDA medical scanner too
/proc/healthscan(mob/user, mob/living/M, mode = SCANNER_VERBOSE, advanced = FALSE)
- if(isliving(user) && (user.incapacitated() || user.eye_blind))
+ if(isliving(user) && (user.incapacitated() || user.is_blind()))
return
// the final list of strings to render
@@ -256,7 +256,7 @@ GENE SCANNER
message = "\nSubject does not have eyes."
if(istype(eyes))
message = ""
- if(HAS_TRAIT(C, TRAIT_BLIND))
+ if(C.is_blind())
message += "\nSubject is blind."
if(HAS_TRAIT(C, TRAIT_NEARSIGHT))
message += "\nSubject is nearsighted."
@@ -429,7 +429,7 @@ GENE SCANNER
/obj/item/analyzer/attack_self(mob/user)
add_fingerprint(user)
- if (user.stat || user.eye_blind)
+ if (user.stat || user.is_blind())
return
var/turf/location = user.loc
@@ -590,7 +590,7 @@ GENE SCANNER
custom_materials = list(/datum/material/iron=30, /datum/material/glass=20)
/obj/item/slime_scanner/attack(mob/living/M, mob/living/user)
- if(user.stat || user.eye_blind)
+ if(user.stat || user.is_blind())
return
if (!isslime(M))
to_chat(user, "This device can only scan slimes!")
diff --git a/code/modules/assembly/flash.dm b/code/modules/assembly/flash.dm
index 4dcc90f9797..7ccd70cf18d 100644
--- a/code/modules/assembly/flash.dm
+++ b/code/modules/assembly/flash.dm
@@ -23,7 +23,7 @@
if(burnt_out)
user.visible_message("[user] raises \the [src] up to [user.p_their()] eyes and activates it ... but it's burnt out!")
return SHAME
- else if(user.eye_blind)
+ else if(user.is_blind())
user.visible_message("[user] raises \the [src] up to [user.p_their()] eyes and activates it ... but [user.p_theyre()] blind!")
return SHAME
user.visible_message("[user] raises \the [src] up to [user.p_their()] eyes and activates it! It looks like [user.p_theyre()] trying to commit suicide!")
diff --git a/code/modules/clothing/glasses/_glasses.dm b/code/modules/clothing/glasses/_glasses.dm
index 6becb3f9abe..b400a1ec154 100644
--- a/code/modules/clothing/glasses/_glasses.dm
+++ b/code/modules/clothing/glasses/_glasses.dm
@@ -46,7 +46,7 @@
if(ishuman(src.loc))
var/mob/living/carbon/human/H = src.loc
var/obj/item/organ/eyes/eyes = H.getorganslot(ORGAN_SLOT_EYES)
- if(!(HAS_TRAIT(H, TRAIT_BLIND)))
+ if(!H.is_blind())
if(H.glasses == src)
to_chat(H, "[src] overloads and blinds you!")
H.flash_act(visual = 1)
diff --git a/code/modules/library/lib_items.dm b/code/modules/library/lib_items.dm
index 15917aef063..ffe88fd4699 100644
--- a/code/modules/library/lib_items.dm
+++ b/code/modules/library/lib_items.dm
@@ -205,7 +205,7 @@
/obj/item/book/attackby(obj/item/I, mob/user, params)
if(istype(I, /obj/item/pen))
- if(is_blind(user))
+ if(user.is_blind())
to_chat(user, "As you are trying to write on the book, you suddenly feel very stupid!")
return
if(unique)
diff --git a/code/modules/mob/living/carbon/carbon_defense.dm b/code/modules/mob/living/carbon/carbon_defense.dm
index 5f17532aa62..2d87b2c777b 100644
--- a/code/modules/mob/living/carbon/carbon_defense.dm
+++ b/code/modules/mob/living/carbon/carbon_defense.dm
@@ -342,7 +342,7 @@
become_nearsighted(EYE_DAMAGE)
else if(prob(eyes.damage - 25))
- if(!HAS_TRAIT(src, TRAIT_BLIND))
+ if(!is_blind())
to_chat(src, "You can't see anything!")
eyes.applyOrganDamage(eyes.maxHealth)
diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm
index 63e69ac0cc0..baaf4549fee 100644
--- a/code/modules/mob/living/carbon/human/examine.dm
+++ b/code/modules/mob/living/carbon/human/examine.dm
@@ -280,7 +280,7 @@
if(mood.sanity <= SANITY_DISTURBED)
msg += "[t_He] seem[p_s()] distressed.\n"
SEND_SIGNAL(user, COMSIG_ADD_MOOD_EVENT, "empath", /datum/mood_event/sad_empath, src)
- if (HAS_TRAIT(src, TRAIT_BLIND))
+ if (is_blind())
msg += "[t_He] appear[p_s()] to be staring off into space.\n"
if (HAS_TRAIT(src, TRAIT_DEAF))
msg += "[t_He] appear[p_s()] to not be responding to noises.\n"
diff --git a/code/modules/mob/living/living_defense.dm b/code/modules/mob/living/living_defense.dm
index 831ab383cd4..a946e2a3047 100644
--- a/code/modules/mob/living/living_defense.dm
+++ b/code/modules/mob/living/living_defense.dm
@@ -406,7 +406,7 @@
/mob/living/proc/flash_act(intensity = 1, override_blindness_check = 0, affect_silicon = 0, visual = 0, type = /obj/screen/fullscreen/flash)
if(HAS_TRAIT(src, TRAIT_NOFLASH))
return FALSE
- if(get_eye_protection() < intensity && (override_blindness_check || !(HAS_TRAIT(src, TRAIT_BLIND))))
+ if(get_eye_protection() < intensity && (override_blindness_check || !is_blind()))
overlay_fullscreen("flash", type)
addtimer(CALLBACK(src, .proc/clear_fullscreen, "flash", 25), 25)
return TRUE
diff --git a/code/modules/mob/living/simple_animal/bot/medbot.dm b/code/modules/mob/living/simple_animal/bot/medbot.dm
index 222f10a9d3b..f8d8d5b882c 100644
--- a/code/modules/mob/living/simple_animal/bot/medbot.dm
+++ b/code/modules/mob/living/simple_animal/bot/medbot.dm
@@ -341,7 +341,7 @@
/mob/living/simple_animal/bot/medbot/examinate(atom/A as mob|obj|turf in view())
..()
- if(!is_blind(src))
+ if(!is_blind())
chemscan(src, A)
/mob/living/simple_animal/bot/medbot/proc/medicate_patient(mob/living/carbon/C)
diff --git a/code/modules/mob/living/simple_animal/hostile/netherworld.dm b/code/modules/mob/living/simple_animal/hostile/netherworld.dm
index 22e0a06f300..9db177f7107 100644
--- a/code/modules/mob/living/simple_animal/hostile/netherworld.dm
+++ b/code/modules/mob/living/simple_animal/hostile/netherworld.dm
@@ -21,20 +21,20 @@
var/phaser = TRUE
var/datum/action/innate/creature/teleport/teleport
var/is_phased = FALSE
-
+
/mob/living/simple_animal/hostile/netherworld/Initialize()
. = ..()
if(phaser)
teleport = new
teleport.Grant(src)
-
+
/datum/action/innate/creature
background_icon_state = "bg_default"
-
+
/datum/action/innate/creature/teleport
name = "Teleport"
desc = "Teleport to wherever you want, as long as you aren't seen."
-
+
/obj/effect/dummy/phased_mob/creature
name = "water"
icon = 'icons/effects/effects.dmi'
@@ -44,7 +44,7 @@
invisibility = 60
resistance_flags = LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
var/canmove = TRUE
-
+
/obj/effect/dummy/phased_mob/creature/relaymove(mob/user, direction)
forceMove(get_step(src,direction))
@@ -56,7 +56,7 @@
/obj/effect/dummy/phased_mob/creature/singularity_act()
return
-
+
/datum/action/innate/creature/teleport/Activate()
var/mob/living/simple_animal/hostile/netherworld/N = owner
var/obj/effect/dummy/phased_mob/creature/holder = null
@@ -80,7 +80,7 @@
holder = new /obj/effect/dummy/phased_mob/creature(T)
N.forceMove(holder)
N.is_phased = TRUE
-
+
/mob/living/simple_animal/hostile/netherworld/proc/can_be_seen(turf/location)
// Check for darkness
if(location && location.lighting_object)
@@ -96,14 +96,14 @@
for(var/atom/check in check_list)
for(var/mob/living/M in viewers(world.view + 1, check) - src)
if(M.client && CanAttack(M) && !M.has_unlimited_silicon_privilege)
- if(!M.eye_blind)
+ if(!M.is_blind())
return M
for(var/obj/mecha/M in view(world.view + 1, check)) //assuming if you can see them they can see you
if(M.occupant && M.occupant.client)
- if(!M.occupant.eye_blind)
+ if(!M.occupant.is_blind())
return M.occupant
return null
-
+
/mob/living/simple_animal/hostile/netherworld/migo
name = "mi-go"
desc = "A pinkish, fungoid crustacean-like creature with numerous pairs of clawed appendages and a head covered with waving antennae."
diff --git a/code/modules/mob/living/simple_animal/hostile/statue.dm b/code/modules/mob/living/simple_animal/hostile/statue.dm
index 798bd37fbc0..88e221d6224 100644
--- a/code/modules/mob/living/simple_animal/hostile/statue.dm
+++ b/code/modules/mob/living/simple_animal/hostile/statue.dm
@@ -129,11 +129,11 @@
for(var/atom/check in check_list)
for(var/mob/living/M in viewers(world.view + 1, check) - src)
if(M.client && CanAttack(M) && !M.has_unlimited_silicon_privilege)
- if(!M.eye_blind)
+ if(!M.is_blind())
return M
for(var/obj/mecha/M in view(world.view + 1, check)) //assuming if you can see them they can see you
if(M.occupant && M.occupant.client)
- if(!M.occupant.eye_blind)
+ if(!M.occupant.is_blind())
return M.occupant
return null
diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm
index 182e2193604..abc840fdbf8 100644
--- a/code/modules/mob/mob.dm
+++ b/code/modules/mob/mob.dm
@@ -141,7 +141,7 @@
msg = copytext_char(msg, 1, MAX_MESSAGE_LEN)
if(type)
- if(type & MSG_VISUAL && eye_blind )//Vision related
+ if(type & MSG_VISUAL && is_blind() )//Vision related
if(!alt_msg)
return
else
@@ -154,7 +154,7 @@
else
msg = alt_msg
type = alt_type
- if(type & MSG_VISUAL && eye_blind)
+ if(type & MSG_VISUAL && is_blind())
return
// voice muffling
if(stat == UNCONSCIOUS)
@@ -411,7 +411,7 @@
// shift-click catcher may issue examinate() calls for out-of-sight turfs
return
- if(is_blind(src))
+ if(is_blind())
to_chat(src, "Something is there but you can't see it!")
return
@@ -1103,7 +1103,7 @@
///Can this mob read (is literate and not blind)
/mob/proc/can_read(obj/O)
- if(is_blind(src))
+ if(is_blind())
to_chat(src, "As you are trying to read [O], you suddenly feel very stupid!")
return
if(!is_literate())
diff --git a/code/modules/mob/mob_helpers.dm b/code/modules/mob/mob_helpers.dm
index e9b6fd55368..85a5b6b3807 100644
--- a/code/modules/mob/mob_helpers.dm
+++ b/code/modules/mob/mob_helpers.dm
@@ -285,12 +285,9 @@
if(hud_used && hud_used.action_intent)
hud_used.action_intent.icon_state = "[a_intent]"
-///Checks if passed through item is blind
-/proc/is_blind(A)
- if(ismob(A))
- var/mob/B = A
- return B.eye_blind
- return FALSE
+///Checks if the mob is able to see or not. eye_blind is temporary blindness, the trait is if they're permanently blind.
+/mob/proc/is_blind()
+ return eye_blind ? TRUE : HAS_TRAIT(src, TRAIT_BLIND)
///Is the mob hallucinating?
/mob/proc/hallucinating()
diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm
index 6f98b5f6036..b96bf4ede56 100644
--- a/code/modules/paperwork/paper.dm
+++ b/code/modules/paperwork/paper.dm
@@ -292,7 +292,7 @@
if(resistance_flags & ON_FIRE)
return
- if(is_blind(user))
+ if(user.is_blind())
return
if(istype(P, /obj/item/pen) || istype(P, /obj/item/toy/crayon))
diff --git a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm
index 5c0b69b4296..0b93f5f7533 100644
--- a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm
+++ b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm
@@ -233,7 +233,7 @@ All effects don't start immediately, but rather get worse over time; the rate is
if(prob(5) && iscarbon(M))
var/obj/item/organ/eyes/eyes = M.getorganslot(ORGAN_SLOT_EYES)
- if(HAS_TRAIT(M, TRAIT_BLIND))
+ if(M.is_blind())
if(istype(eyes))
eyes.Remove(M)
eyes.forceMove(get_turf(M))