Balance fixes to medical side-effects.

- Bandage/ointment now causes itch instead of cramps
- Reduced amount of messages/effects by side-effects to 1/3
- Side-effects will now disappear after a while if left untreated, but they will cause damage before that.
This commit is contained in:
cib
2013-02-15 14:25:11 +01:00
parent e14855be35
commit eaa8130672
2 changed files with 35 additions and 10 deletions
+34 -9
View File
@@ -37,14 +37,14 @@
// Only do anything if the effect is currently strong enough
if(strength_percent >= 0.4)
for (var/datum/medical_effect/M in side_effects)
if (M.cure(src))
if (M.cure(src) || M.strength > 60)
side_effects -= M
del(M)
else
if(life_tick % 15 == 0)
if(life_tick % 45 == 0)
M.on_life(src, strength_percent*M.strength)
// Effect slowly growing stronger
M.strength+=0.05
M.strength+=0.08
// HEADACHE
// ========
@@ -78,10 +78,10 @@
H.custom_pain("You feel a light pain in your head.",0)
if(11 to 30)
H.custom_pain("You feel a throbbing pain in your head!",1)
if(31 to 99)
if(31 to 50)
H.custom_pain("You feel an excrutiating pain in your head!",1)
H.adjustBrainLoss(1)
if(99 to INFINITY)
if(51 to INFINITY)
H.custom_pain("It feels like your head is about to split open!",1)
H.adjustBrainLoss(3)
var/datum/organ/external/O = H.organs_by_name["head"]
@@ -102,10 +102,10 @@
H.custom_pain("You feel a bit light around the stomach.",0)
if(11 to 30)
H.custom_pain("Your stomach hurts.",0)
if(31 to 99)
if(31 to 50)
H.custom_pain("You feel sick.",1)
H.adjustToxLoss(1)
if(99 to INFINITY)
if(51 to INFINITY)
H.custom_pain("You can't hold it in any longer!",1)
H.vomit()
@@ -125,11 +125,11 @@
H.custom_pain("The muscles in your body hurt a little.",0)
if(11 to 30)
H.custom_pain("The muscles in your body cramp up painfully.",0)
if(31 to 99)
if(31 to 50)
H.emote("me",1,"flinches as all the muscles in their body cramp up.")
H.custom_pain("There's pain all over your body.",1)
H.adjustToxLoss(1)
if(99 to INFINITY)
if(51 to INFINITY)
H.emote("me",1,"flinches as all the muscles in their body cramp up.")
H.custom_pain("It feels as though your muscles are being ripped apart!",1)
H.apply_damage(1, used_weapon = "Cramps")
@@ -138,4 +138,29 @@
if(H.reagents.has_reagent("inaprovaline"))
H << "\red The cramps let up.."
return 1
return 0
// ITCH
// ====
/datum/medical_effect/itch/name = "Itch"
/datum/medical_effect/itch/on_life(mob/living/carbon/human/H, strength)
switch(strength)
if(1 to 10)
H.custom_pain("You feel a slight itch.",0)
if(11 to 30)
H.custom_pain("You want to scratch your itch badly.",0)
if(31 to 50)
H.emote("me",1,"shivers slightly.")
H.custom_pain("This itch makes it really hard to concentrate.",1)
H.adjustToxLoss(1)
if(51 to INFINITY)
H.emote("me",1,"shivers.")
H.custom_pain("The itch starts hurting and oozing blood.",1)
H.apply_damage(1, BURN, used_weapon = "Itch")
H.drip(1)
/datum/medical_effect/itch/cure(mob/living/carbon/human/H)
if(H.reagents.has_reagent("inaprovaline"))
H << "\red The itching stops.."
return 1
return 0