Skip to content

Commit

Permalink
tweak: Cadaveric fever less deadly (ss220-space#4687)
Browse files Browse the repository at this point in the history
* Ы

* vomiting

* vomit arguments

* shaman virusimmune & less discovery threshhold
  • Loading branch information
LiquidPotroh authored Mar 24, 2024
1 parent fd7d5a2 commit 29c0983
Show file tree
Hide file tree
Showing 8 changed files with 18 additions and 13 deletions.
2 changes: 1 addition & 1 deletion code/datums/diseases/viruses/advance/symptoms/vomit.dm
Original file line number Diff line number Diff line change
Expand Up @@ -106,4 +106,4 @@ Bonus
level = 4

/datum/symptom/vomit/projectile/Vomit(mob/living/carbon/M)
M.vomit(6,0,1,5,1)
M.vomit(6,0,8 SECONDS,5,1)
9 changes: 5 additions & 4 deletions code/datums/diseases/viruses/cadaver.dm
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,12 @@
agent = "Cadaveric microbes"
desc = "A terrible disease caused by rotting corpses"
cures = list("calomel")
cure_prob = 4
stage_prob = 1.5
cure_prob = 6
stage_prob = 0.8
max_stages = 5
spread_flags = BLOOD
severity = DANGEROUS
discovery_threshold = 0.3 // 2 stage is visible

/datum/disease/virus/cadaver/stage_act()
if(!..())
Expand All @@ -21,13 +22,13 @@
switch(stage)
if(2)
if(prob(2))
H.vomit()
H.vomit(stun = 0.1 SECONDS)
if(prob(7))
H.bodytemperature = max(H.bodytemperature, H.dna.species.heat_level_1 + 10)
to_chat(H, span_warning("You feel hot!"))
if(3, 4)
if(prob(3))
H.vomit()
H.vomit(stun = 0.1 SECONDS)
if(prob(7))
H.bodytemperature = max(H.bodytemperature, H.dna.species.heat_level_1 + 30)
to_chat(H, span_warning("You feel very hot!"))
Expand Down
3 changes: 3 additions & 0 deletions code/datums/spells/lavaland_spells/healtouch.dm
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,9 @@
M.heal_overall_damage(brute, burn)
M.adjustToxLoss(-tox)
M.adjustOxyLoss(-oxy)
for(var/datum/disease/D in M.diseases)
if(D.curable)
D.cure(need_immunity = FALSE)
return ..()

/obj/effect/proc_holder/spell/touch/healtouch/advanced
Expand Down
2 changes: 1 addition & 1 deletion code/datums/status_effects/debuffs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -839,7 +839,7 @@
if(prob(pukeprob))
carbon.AdjustConfused(9 SECONDS)
carbon.AdjustStuttering(3 SECONDS)
carbon.vomit(15, FALSE, TRUE, 0, FALSE)
carbon.vomit(15, FALSE, 8 SECONDS, 0, FALSE)
carbon.Dizzy(15 SECONDS)
if(strength >= DISGUST_LEVEL_DISGUSTED)
if(prob(25))
Expand Down
2 changes: 1 addition & 1 deletion code/game/gamemodes/shadowling/shadowling_abilities.dm
Original file line number Diff line number Diff line change
Expand Up @@ -929,7 +929,7 @@

var/mob/living/carbon/human/target = targets[1]

target.vomit(lost_nutrition = 0, blood = TRUE, stun = TRUE, distance = 1, message = FALSE)
target.vomit(lost_nutrition = 0, blood = TRUE, stun = 8 SECONDS, distance = 1, message = FALSE)
playsound(user.loc, 'sound/hallucinations/veryfar_noise.ogg', 50, TRUE)
to_chat(user, "<span class='shadowling'>You instantly rearrange <b>[target]</b>'s memories, hyptonitizing [target.p_them()] into a thrall.</span>")
to_chat(target, "<span class='userdanger'><font size=3>An agonizing spike of pain drives into your mind, and--</font></span>")
Expand Down
6 changes: 3 additions & 3 deletions code/modules/mob/living/carbon/carbon.dm
Original file line number Diff line number Diff line change
Expand Up @@ -97,21 +97,21 @@
return FALSE


/mob/living/carbon/proc/vomit(var/lost_nutrition = 10, var/blood = 0, var/stun = 1, var/distance = 0, var/message = 1)
/mob/living/carbon/proc/vomit(lost_nutrition = 10, blood = 0, stun = 8 SECONDS, distance = 0, message = 1)
if(ismachineperson(src)) //IPCs do not vomit particulates
return FALSE
if(is_muzzled())
if(message)
to_chat(src, "<span class='warning'>Намордник препятствует рвоте!</span>")
return FALSE
if(stun)
Stun(8 SECONDS)
Stun(stun)
if(nutrition < 100 && !blood)
if(message)
visible_message("<span class='warning'>[src.name] сухо кашля[pluralize_ru(src.gender,"ет","ют")]!</span>", \
"<span class='userdanger'>Вы пытаетесь проблеваться, но в вашем желудке пусто!</span>")
if(stun)
Weaken(20 SECONDS)
Weaken(stun * 2.5)
else
if(message)
visible_message("<span class='danger'>[src.name] блю[pluralize_ru(src.gender,"ет","ют")]!</span>", \
Expand Down
6 changes: 3 additions & 3 deletions code/modules/mob/living/carbon/human/life.dm
Original file line number Diff line number Diff line change
Expand Up @@ -878,7 +878,7 @@
if(getToxLoss() >= 45 && nutrition > 20)
lastpuke ++
if(lastpuke >= 25) // about 25 second delay I guess
vomit(20, 0, 1, 0, 1)
vomit(20, 0, 8 SECONDS, 0, 1)
adjustToxLoss(-3)
lastpuke = 0

Expand Down Expand Up @@ -970,9 +970,9 @@
return

for(var/mob/living/carbon/human/H in view(decaylevel, src) - src)
if(prob(0.5 * decaylevel))
if(prob(0.3 * decaylevel))
var/datum/disease/virus/cadaver/D = new()
D.Contract(H, CONTACT|AIRBORNE, need_protection_check = TRUE)
D.Contract(H, CONTACT, need_protection_check = TRUE)
if(prob(2))
var/obj/item/clothing/mask/M = H.wear_mask
if(M && (M.flags_cover & MASKCOVERSMOUTH))
Expand Down
1 change: 1 addition & 0 deletions code/modules/mob/living/carbon/human/species/unathi.dm
Original file line number Diff line number Diff line change
Expand Up @@ -143,6 +143,7 @@
//Ash walker shaman, worse defensive stats, but better at surgery and have a healing touch ability
/datum/species/unathi/ashwalker/shaman
name = SPECIES_ASHWALKER_SHAMAN
species_traits = list(NOGUNS, LIPS, PIERCEIMMUNE, VIRUSIMMUNE)
brute_mod = 1.15
burn_mod = 1.15
speed_mod = -0.60 //less fast as ash walkers
Expand Down

0 comments on commit 29c0983

Please sign in to comment.