diff --git a/code/datums/diseases/advance/symptoms/sensory.dm b/code/datums/diseases/advance/symptoms/sensory.dm
index 8197b1510b..3063ee06f6 100644
--- a/code/datums/diseases/advance/symptoms/sensory.dm
+++ b/code/datums/diseases/advance/symptoms/sensory.dm
@@ -23,106 +23,43 @@ Bonus
transmittable = -3
level = 5
severity = 0
+ symptom_delay_min = 5
+ symptom_delay_max = 10
+ var/purge_alcohol = FALSE
+ var/brain_heal = FALSE
+
+/datum/symptom/sensory_restoration/Start(datum/disease/advance/A)
+ ..()
+ if(A.properties["resistance"] >= 6) //heal brain damage
+ brain_heal = TRUE
+ if(A.properties["transmittable"] >= 8) //purge alcohol
+ purge_alcohol = TRUE
/datum/symptom/sensory_restoration/Activate(var/datum/disease/advance/A)
- ..()
+ if(!..())
+ return
var/mob/living/M = A.affected_mob
if(A.stage >= 2)
M.restoreEars()
if(A.stage >= 3)
- M.dizziness = 0
- M.drowsyness = 0
- M.slurring = 0
- M.confused = 0
- M.reagents.remove_all_type(/datum/reagent/consumable/ethanol, 3)
- if(ishuman(M))
- var/mob/living/carbon/human/H = M
- H.drunkenness = max(H.drunkenness - 10, 0)
+ M.dizziness = max(0, M.dizziness - 2)
+ M.drowsyness = max(0, M.drowsyness - 2)
+ M.slurring = max(0, M.slurring - 2)
+ M.confused = max(0, M.confused - 2)
+ if(purge_alcohol)
+ M.reagents.remove_all_type(/datum/reagent/consumable/ethanol, 3)
+ if(ishuman(M))
+ var/mob/living/carbon/human/H = M
+ H.drunkenness = max(H.drunkenness - 5, 0)
if(A.stage >= 4)
- M.drowsyness = max(M.drowsyness-5, 0)
+ M.drowsyness = max(0, M.drowsyness - 2)
if(M.reagents.has_reagent("mindbreaker"))
M.reagents.remove_reagent("mindbreaker", 5)
if(M.reagents.has_reagent("histamine"))
M.reagents.remove_reagent("histamine", 5)
M.hallucination = max(0, M.hallucination - 10)
- if(A.stage >= 5)
+ if(brain_heal && A.stage >= 5)
M.adjustBrainLoss(-3)
-
-/*
-//////////////////////////////////////
-Sensory-Destruction
- noticable.
- Lowers resistance
- Decreases stage speed tremendously.
- Decreases transmittablity tremendously.
- the drugs hit them so hard they have to focus on not dying
-
-Bonus
- The body generates Sensory destructive chemicals.
- You cannot taste anything anymore.
- ethanol for extremely drunk victim
- mindbreaker to break the mind
- impedrezene to ruin the brain
-
-//////////////////////////////////////
-*/
-/datum/symptom/sensory_destruction
- name = "Sensory destruction"
- stealth = -1
- resistance = -2
- stage_speed = -3
- transmittable = -4
- level = 6
- severity = 5
- var/sleepy = 0
- var/sleepy_ticks = 0
-
-/datum/symptom/sensory_destruction/Activate(var/datum/disease/advance/A)
- ..()
- var/mob/living/M = A.affected_mob
- if(prob(SYMPTOM_ACTIVATION_PROB))
- switch(A.stage)
- if(1)
- to_chat(M, "You can't feel anything.")
- if(2)
- to_chat(M, "You feel absolutely hammered.")
- if(prob(10))
- sleepy_ticks += rand(10,14)
- if(3)
- M.reagents.add_reagent("ethanol",rand(5,7))
- to_chat(M, "You try to focus on not dying.")
- if(prob(15))
- sleepy_ticks += rand(10,14)
- if(4)
- M.reagents.add_reagent("ethanol",rand(6,10))
- to_chat(M, "u can count 2 potato!")
- if(prob(20))
- sleepy_ticks += rand(10,14)
- if(5)
- M.reagents.add_reagent("ethanol",rand(7,13))
- if(prob(25))
- sleepy_ticks += rand(10,14)
-
- if(sleepy_ticks)
- if(A.stage>=4)
- M.hallucination = min(M.hallucination + 10, 50)
- if(A.stage>=5)
- if(prob(80))
- M.adjustBrainLoss(1)
- if(prob(50))
- M.drowsyness = max(M.drowsyness, 3)
- sleepy++
- sleepy_ticks--
- else
- sleepy = 0
-
- switch(sleepy) //Works like morphine
- if(11)
- to_chat(M, "You start to feel tired...")
- if(12 to 24)
- M.drowsyness += 1
- if(24 to INFINITY)
- M.Sleeping(40)