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/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/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..46ccde39c47 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!")
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..848dd12b556 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
@@ -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/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/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))