diff --git a/code/datums/diseases/advance/symptoms/vision.dm b/code/datums/diseases/advance/symptoms/vision.dm
index 2d7fb9467df..b5249e11740 100644
--- a/code/datums/diseases/advance/symptoms/vision.dm
+++ b/code/datums/diseases/advance/symptoms/vision.dm
@@ -28,22 +28,25 @@ Bonus
/datum/symptom/visionloss/Activate(datum/disease/advance/A)
..()
if(prob(SYMPTOM_ACTIVATION_PROB))
- var/mob/living/M = A.affected_mob
+ var/mob/living/carbon/M = A.affected_mob
+ var/obj/item/organ/internal/eyes/eyes = M.get_int_organ(/obj/item/organ/internal/eyes)
+ if(!eyes) //NO EYES, NO PROBLEM! Rip out your eyes today to prevent future blindness!
+ return
switch(A.stage)
if(1, 2)
to_chat(M, "Your eyes itch.")
if(3, 4)
to_chat(M, "Your eyes burn!")
- M.blur_eyes(10)
- M.adjust_eye_damage(1)
+ M.EyeBlurry(20)
+ eyes.take_damage(1)
else
to_chat(M, "Your eyes burn horrificly!")
- M.blur_eyes(20)
- M.adjust_eye_damage(5)
- if(M.eye_damage >= 10)
- M.become_nearsighted()
- if(prob(M.eye_damage - 10 + 1))
- if(M.become_blind())
+ M.EyeBlurry(30)
+ eyes.take_damage(5)
+ if(eyes.damage >= 10)
+ M.BecomeNearsighted()
+ if(prob(eyes.damage - 10 + 1))
+ if(M.BecomeBlind())
to_chat(M, "You go blind!")
diff --git a/paradise.dme b/paradise.dme
index 3b4107b4f57..6d6976fa27a 100644
--- a/paradise.dme
+++ b/paradise.dme
@@ -277,6 +277,7 @@
#include "code\datums\diseases\advance\symptoms\stimulant.dm"
#include "code\datums\diseases\advance\symptoms\symptoms.dm"
#include "code\datums\diseases\advance\symptoms\viral.dm"
+#include "code\datums\diseases\advance\symptoms\vision.dm"
#include "code\datums\diseases\advance\symptoms\voice_change.dm"
#include "code\datums\diseases\advance\symptoms\vomit.dm"
#include "code\datums\diseases\advance\symptoms\weakness.dm"