diff --git a/code/modules/mob/dead/observer/observer.dm b/code/modules/mob/dead/observer/observer.dm
index c1d577834d..f4e612f536 100644
--- a/code/modules/mob/dead/observer/observer.dm
+++ b/code/modules/mob/dead/observer/observer.dm
@@ -404,14 +404,20 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
src << "\blue Heat Capacity: [round(environment.heat_capacity(),0.1)]"
-/mob/dead/observer/verb/toggle_darkness()
- set name = "Toggle Darkness"
+/mob/dead/observer/verb/toggle_sight()
+ set name = "Toggle Sight"
set category = "Ghost"
- if (see_invisible == SEE_INVISIBLE_OBSERVER_NOLIGHTING)
- see_invisible = SEE_INVISIBLE_OBSERVER
- else
- see_invisible = SEE_INVISIBLE_OBSERVER_NOLIGHTING
+ switch(see_invisible)
+ if(SEE_INVISIBLE_OBSERVER_AI_EYE)
+ see_invisible = SEE_INVISIBLE_OBSERVER_NOOBSERVERS
+ usr << "You no longer see other observers or the AI eye."
+ if(SEE_INVISIBLE_OBSERVER_NOOBSERVERS)
+ see_invisible = SEE_INVISIBLE_OBSERVER_NOLIGHTING
+ usr << "You no longer see darkness."
+ else
+ see_invisible = SEE_INVISIBLE_OBSERVER_AI_EYE
+ usr << "You again see everything."
/mob/dead/observer/verb/become_mouse()
set name = "Become mouse"
diff --git a/code/setup.dm b/code/setup.dm
index 338181e50e..0d599743dd 100644
--- a/code/setup.dm
+++ b/code/setup.dm
@@ -480,9 +480,14 @@
#define SEE_INVISIBLE_LEVEL_TWO 45 //Used by some other stuff in code. It's really poorly organized.
#define INVISIBILITY_LEVEL_TWO 45 //Used by some other stuff in code. It's really poorly organized.
+#define SEE_INVISIBLE_OBSERVER_NOOBSERVERS 59
+
#define INVISIBILITY_OBSERVER 60
#define SEE_INVISIBLE_OBSERVER 60
+#define INVISIBILITY_AI_EYE 61
+#define SEE_INVISIBLE_OBSERVER_AI_EYE 61
+
#define INVISIBILITY_MAXIMUM 100
//Object specific defines