Brain Traumas (#31727)

* Reworks Brain Damage

* mechanics

* rebalancing

* hulks in wheelchairs

* yup

* bugsquash

* Adds narcolepsy, phobias and agnosia. Not guaranteed 100% bug-free yet, testmerge at your own risk.

* lizard phobia

* Did you know there's a skeleton inside of you RIGHT NOW?

* Fixes for the new stuff

* The issue with those is that in most rounds you won't see them

I'll keep them available so they can be added manually, for example by events and such

* Goof reviews

* Brainloss is based off brain organ integrity

removes brainloss var

* Replaces some getorganslot with defines

* eyes

* put the traumas in the brainnnn

* text

* args

* Adds godwoken, puts split personality in severe, adds brainwashing

* Bluespace prophet special trauma (untested)

* Some minor stuff

* Monophobia, and tweaks

* More fixes

* fix

* a

* new tail

* Discoordination and Muscle Weakness

* thanks for the review!

* [B]oneless

* agnosia fix

* .

* go away agnosia

* pretend it didn't happen

* Shitcode-free-er

* bitwisdom

* psychotic brawling

* i guess this might be important

* latest reviews

* .

* conflict-free

* addresses it

* surgery fix

* a masterpiece

* fix

* fix again

* config

* damage formula reworked

* who needs to test anyway

* fixes some bugs

* fix 2

* proper spookin

* bluespace prophet fixes and improvements

* no bible healing

* .

* normalizes monophobia chances
This commit is contained in:
XDTM
2017-12-06 13:04:17 -05:00
committed by Jordan Brown
parent 92ee1151f6
commit 550d71167e
73 changed files with 1423 additions and 112 deletions
@@ -99,7 +99,7 @@
. = 1
/datum/reagent/drug/crank/addiction_act_stage4(mob/living/M)
M.adjustBrainLoss(5*REM)
M.adjustBrainLoss(3*REM)
M.adjustToxLoss(5*REM, 0)
M.adjustBruteLoss(5*REM, 0)
..()
@@ -628,7 +628,7 @@
. = 1
if(prob(20))
M.losebreath += 4
M.adjustBrainLoss(2*REM)
M.adjustBrainLoss(2*REM, 150)
M.adjustToxLoss(3*REM,0)
M.adjustStaminaLoss(10*REM,0)
M.blur_eyes(5)
@@ -59,6 +59,7 @@
M.confused = 0
M.SetSleeping(0, 0)
M.jitteriness = 0
M.cure_all_traumas(TRUE, TRUE)
for(var/thing in M.viruses)
var/datum/disease/D = thing
if(D.severity == VIRUS_SEVERITY_POSITIVE)
@@ -777,7 +778,13 @@
color = "#DCDCFF"
/datum/reagent/medicine/mannitol/on_mob_life(mob/living/M)
M.adjustBrainLoss(-3*REM)
M.adjustBrainLoss(-2*REM)
if(iscarbon(M))
var/mob/living/carbon/C = M
if(prob(30) && C.has_trauma_type(BRAIN_TRAUMA_SPECIAL))
C.cure_trauma_type(BRAIN_TRAUMA_SPECIAL)
if(prob(10) && C.has_trauma_type(BRAIN_TRAUMA_MILD))
C.cure_trauma_type(BRAIN_TRAUMA_MILD)
..()
/datum/reagent/medicine/mutadone
@@ -1001,7 +1008,7 @@
M.adjustFireLoss(-3 * REM, 0)
M.adjustOxyLoss(-15 * REM, 0)
M.adjustToxLoss(-3 * REM, 0)
M.adjustBrainLoss(2 * REM) //This does, after all, come from ambrosia, and the most powerful ambrosia in existence, at that!
M.adjustBrainLoss(2 * REM, 150) //This does, after all, come from ambrosia, and the most powerful ambrosia in existence, at that!
M.adjustCloneLoss(-1 * REM, 0)
M.adjustStaminaLoss(-30 * REM, 0)
M.jitteriness = min(max(0, M.jitteriness + 3), 30)
@@ -1032,7 +1039,7 @@
if (M.hallucination >= 5)
M.hallucination -= 5
if(prob(20))
M.adjustBrainLoss(1*REM)
M.adjustBrainLoss(1*REM, 50)
M.adjustStaminaLoss(2.5*REM, 0)
..()
. = 1
@@ -261,7 +261,7 @@
M.adjustBruteLoss(-2, 0)
M.adjustFireLoss(-2, 0)
else
M.adjustBrainLoss(3)
M.adjustBrainLoss(3, 150)
M.adjustToxLoss(1, 0)
M.adjustFireLoss(2, 0)
M.adjustOxyLoss(2, 0)
@@ -280,7 +280,7 @@
M.IgniteMob() //Only problem with igniting people is currently the commonly availible fire suits make you immune to being on fire
M.adjustToxLoss(1, 0)
M.adjustFireLoss(1, 0) //Hence the other damages... ain't I a bastard?
M.adjustBrainLoss(5)
M.adjustBrainLoss(5, 150)
holder.remove_reagent(src.id, 1)
/datum/reagent/medicine/omnizine/godblood
@@ -676,7 +676,7 @@
step(M, pick(GLOB.cardinals))
if(prob(5))
M.emote(pick("twitch","drool","moan"))
M.adjustBrainLoss(2)
M.adjustBrainLoss(1)
..()
/datum/reagent/sulfur
@@ -1029,7 +1029,7 @@
/datum/reagent/impedrezene/on_mob_life(mob/living/M)
M.jitteriness = max(M.jitteriness-5,0)
if(prob(80))
M.adjustBrainLoss(1*REM)
M.adjustBrainLoss(2*REM)
if(prob(50))
M.drowsyness = max(M.drowsyness, 3)
if(prob(10))
@@ -455,13 +455,12 @@
toxpwr = 0
/datum/reagent/toxin/neurotoxin2/on_mob_life(mob/living/M)
if(M.brainloss + M.toxloss <= 60)
M.adjustBrainLoss(1*REM)
M.adjustBrainLoss(3*REM, 150)
. = 1
if(M.toxloss <= 60)
M.adjustToxLoss(1*REM, 0)
. = 1
if(current_cycle >= 18)
M.Sleeping(40, 0)
. = 1
..()
/datum/reagent/toxin/cyanide