Added back a bunch of new symptoms from /tg/

This commit is contained in:
ZomgPonies
2013-08-20 19:13:42 -04:00
parent b6d0fa7df3
commit ff70e253ae
11 changed files with 437 additions and 0 deletions
@@ -0,0 +1,45 @@
/*
//////////////////////////////////////
Facial Hypertrichosis
Very very Noticable.
Decreases resistance slightly.
Decreases stage speed.
Reduced transmittability
Intense Level.
BONUS
Makes the mob grow a massive beard, regardless of gender.
//////////////////////////////////////
*/
/datum/symptom/beard
name = "Facial Hypertrichosis"
stealth = -3
resistance = -1
stage_speed = -3
transmittable = -1
level = 4
/datum/symptom/beard/Activate(var/datum/disease/advance/A)
..()
if(prob(SYMPTOM_ACTIVATION_PROB))
var/mob/living/M = A.affected_mob
if(istype(M, /mob/living/carbon/human))
var/mob/living/carbon/human/H = M
switch(A.stage)
if(1, 2)
if(H.f_style == "Shaved")
H.f_style = "Adam Jensen Beard"
H.update_hair()
if(3, 4)
if(!(H.f_style == "Dwarf Beard") && !(H.f_style == "Very Long Beard") && !(H.f_style == "Full Beard"))
H.f_style = "Full Beard"
H.update_hair()
else
if(!(H.f_style == "Dwarf Beard") && !(H.f_style == "Very Long Beard"))
H.f_style = pick("Dwarf Beard", "Very Long Beard")
H.update_hair()
return
@@ -0,0 +1,44 @@
/*
//////////////////////////////////////
Choking
Very very noticable.
Lowers resistance.
Decreases stage speed.
Decreases transmittablity tremendously.
Moderate Level.
Bonus
Inflicts spikes of oxyloss
//////////////////////////////////////
*/
/datum/symptom/choking
name = "Choking"
stealth = -3
resistance = -2
stage_speed = -2
transmittable = -4
level = 3
/datum/symptom/choking/Activate(var/datum/disease/advance/A)
..()
if(prob(SYMPTOM_ACTIVATION_PROB))
var/mob/living/M = A.affected_mob
switch(A.stage)
if(1, 2)
M << "<span class='notice'>[pick("You're having difficulty breathing.", "Your breathing becomes heavy.")]</span>"
if(3, 4)
M.adjustOxyLoss(5)
M.emote("gasp")
else
M << "<span class='danger'>[pick("You're choking!", "You can't breathe!")]</span>"
M.adjustOxyLoss(20)
M.emote("gasp")
// if(istype(M, /mob/living/carbon/human))
// var/mob/living/carbon/human/H = M
// H.silent += 15
return
@@ -0,0 +1,39 @@
/*
//////////////////////////////////////
Deafness
Slightly noticable.
Lowers resistance.
Decreases stage speed slightly.
Decreases transmittablity.
Intense Level.
Bonus
Causes intermittent loss of hearing.
//////////////////////////////////////
*/
/datum/symptom/deafness
name = "Deafness"
stealth = -1
resistance = -2
stage_speed = -1
transmittable = -3
level = 4
/datum/symptom/deafness/Activate(var/datum/disease/advance/A)
..()
if(prob(SYMPTOM_ACTIVATION_PROB))
var/mob/living/M = A.affected_mob
switch(A.stage)
if(3, 4)
M << "<span class='notice'>[pick("You hear a ringing in your ear.", "Your ears pop.")]</span>"
if(5)
if(!(M.sdisabilities & DEAF))
M << "<span class='danger'>Your ears pop and begin ringing loudly!</span>"
M.sdisabilities |= DEAF
spawn(200) M.sdisabilities &= ~DEAF
return
@@ -0,0 +1,35 @@
/*
//////////////////////////////////////
Necrotizing Fasciitis (AKA Flesh-Eating Disease)
Very very noticable.
Lowers resistance tremendously.
No changes to stage speed.
Decreases transmittablity temrendously.
Fatal Level.
Bonus
Deals brute damage over time.
//////////////////////////////////////
*/
/datum/symptom/flesh_eating
name = "Necrotizing Fasciitis"
stealth = -3
resistance = -4
stage_speed = 0
transmittable = -4
level = 6
/datum/symptom/flesh_eating/Activate(var/datum/disease/advance/A)
..()
if(prob(SYMPTOM_ACTIVATION_PROB))
var/mob/living/M = A.affected_mob
switch(A.stage)
if(4, 5)
M << "<span class='notice'>[pick("You cringe as a violent pain takes over your body.", "It feels like your body is eating itself inside out.", "IT HURTS.")]</span>"
M.adjustBruteLoss(5)
return
@@ -0,0 +1,37 @@
/*
//////////////////////////////////////
Self-Respiration
Slightly hidden.
Lowers resistance significantly.
Decreases stage speed significantly.
Decreases transmittablity tremendously.
Fatal Level.
Bonus
The body generates Inaprovaline.
//////////////////////////////////////
*/
/datum/symptom/oxygen
name = "Self-Respiration"
stealth = 1
resistance = -3
stage_speed = -3
transmittable = -4
level = 6
/datum/symptom/oxygen/Activate(var/datum/disease/advance/A)
..()
if(prob(SYMPTOM_ACTIVATION_PROB))
var/mob/living/M = A.affected_mob
switch(A.stage)
if(1, 2, 3, 4)
M << "<span class='notice'>[pick("Your lungs feel sore.", "You are now breathing manually.")]</span>"
else
if (M.reagents.get_reagent_amount("inaprovaline") < 30)
M.reagents.add_reagent("inaprovaline", 10)
return
@@ -0,0 +1,47 @@
/*
//////////////////////////////////////
Alopecia
Noticable.
Decreases resistance slightly.
Reduces stage speed slightly.
Transmittable.
Intense Level.
BONUS
Makes the mob lose hair.
//////////////////////////////////////
*/
/datum/symptom/shedding
name = "Alopecia"
stealth = -1
resistance = -1
stage_speed = -1
transmittable = 2
level = 4
/datum/symptom/shedding/Activate(var/datum/disease/advance/A)
..()
if(prob(SYMPTOM_ACTIVATION_PROB))
var/mob/living/M = A.affected_mob
M << "<span class='notice'>[pick("Your scalp itches.", "Your skin feels flakey.")]</span>"
if(istype(M, /mob/living/carbon/human))
var/mob/living/carbon/human/H = M
switch(A.stage)
if(3, 4)
if(!(H.h_style == "Bald") && !(H.h_style == "Balding Hair"))
H << "<span class='danger'>Your hair starts to fall out in clumps...</span>"
spawn(50)
H.h_style = "Balding Hair"
H.update_hair()
if(5)
if(!(H.f_style == "Shaved") || !(H.h_style == "Bald"))
H << "<span class='danger'>Your hair starts to fall out in clumps...</span>"
spawn(50)
H.f_style = "Shaved"
H.h_style = "Bald"
H.update_hair()
return
@@ -0,0 +1,37 @@
/*
//////////////////////////////////////
Stimulant
Noticable.
Lowers resistance significantly.
Decreases stage speed moderately..
Decreases transmittablity tremendously.
Moderate Level.
Bonus
The body generates Hyperzine.
//////////////////////////////////////
*/
/datum/symptom/stimulant
name = "Stimulant"
stealth = -1
resistance = -3
stage_speed = -2
transmittable = -4
level = 3
/datum/symptom/stimulant/Activate(var/datum/disease/advance/A)
..()
if(prob(SYMPTOM_ACTIVATION_PROB))
var/mob/living/M = A.affected_mob
switch(A.stage)
if(1, 2, 3, 4)
M << "<span class='notice'>[pick("You feel restless.", "You feel like running laps around the station.")]</span>"
else
if (M.reagents.get_reagent_amount("hyperzine") < 30)
M.reagents.add_reagent("hyperzine", 10)
return
@@ -0,0 +1,47 @@
/*
//////////////////////////////////////
Hyphema (Eye bleeding)
Slightly noticable.
Lowers resistance tremendously.
Decreases stage speed tremendously.
Decreases transmittablity.
Critical Level.
Bonus
Causes blindness.
//////////////////////////////////////
*/
/datum/symptom/visionloss
name = "Hyphema"
stealth = -1
resistance = -4
stage_speed = -4
transmittable = -3
level = 5
/datum/symptom/visionloss/Activate(var/datum/disease/advance/A)
..()
if(prob(SYMPTOM_ACTIVATION_PROB))
var/mob/living/M = A.affected_mob
switch(A.stage)
if(1, 2)
M << "<span class='notice'>Your eyes itch.</span>"
if(3, 4)
M << "<span class='notice'>Your eyes ache.</span>"
M.eye_blurry = 10
M.eye_stat += 1
else
M << "<span class='danger'>Your eyes burn horrificly!</span>"
M.eye_blurry = 20
M.eye_stat += 5
if (M.eye_stat >= 10)
M.disabilities |= NEARSIGHTED
if (prob(M.eye_stat - 10 + 1) && !(M.sdisabilities & BLIND))
M << "<span class='danger'>You go blind!</span>"
M.sdisabilities |= BLIND
return
@@ -0,0 +1,41 @@
/*
//////////////////////////////////////
Vitiligo
Extremely Noticable.
Decreases resistance slightly.
Reduces stage speed slightly.
Reduces transmission.
Critical Level.
BONUS
Makes the mob lose skin pigmentation.
//////////////////////////////////////
*/
/datum/symptom/vitiligo
name = "Vitiligo"
stealth = -3
resistance = -1
stage_speed = -1
transmittable = -2
level = 5
/datum/symptom/vitiligo/Activate(var/datum/disease/advance/A)
..()
if(prob(SYMPTOM_ACTIVATION_PROB))
var/mob/living/M = A.affected_mob
if(istype(M, /mob/living/carbon/human))
var/mob/living/carbon/human/H = M
if(H.s_tone == "albino")
return
switch(A.stage)
if(5)
H.s_tone = "albino"
H.update_body(0)
else
H.visible_message("<span class='warning'>[H] looks a bit pale...</span>", "<span class='notice'>You look a bit pale...</span>")
return
@@ -0,0 +1,55 @@
/*
//////////////////////////////////////
Eternal Youth
Moderate stealth boost.
Increases resistance tremendously.
Increases stage speed tremendously.
Reduces transmission tremendously.
Critical Level.
BONUS
Gives you immortality and eternal youth!!!
Can be used to buff your virus
//////////////////////////////////////
*/
/datum/symptom/youth
name = "Eternal Youth"
stealth = 3
resistance = 4
stage_speed = 4
transmittable = -4
level = 5
/datum/symptom/youth/Activate(var/datum/disease/advance/A)
..()
if(prob(SYMPTOM_ACTIVATION_PROB * 2))
var/mob/living/M = A.affected_mob
if(istype(M, /mob/living/carbon/human))
var/mob/living/carbon/human/H = M
switch(A.stage)
if(1)
if(H.age > 41)
H.age = 41
H << "<span class='notice'>You haven't had this much energy in years!</span>"
if(2)
if(H.age > 36)
H.age = 36
H << "<span class='notice'>You're suddenly in a good mood.</span>"
if(3)
if(H.age > 31)
H.age = 31
H << "<span class='notice'>You begin to feel more lithe.</span>"
if(4)
if(H.age > 26)
H.age = 26
H << "<span class='notice'>You feel reinvigorated.</span>"
if(5)
if(H.age > 21)
H.age = 21
H << "<span class='notice'>You feel like you can take on the world!</span>"
return