Exploration Expansion 1: Or, How I Learned To Love The Tree

This commit is contained in:
Mechoid
2019-08-21 14:21:33 -07:00
committed by VirgoBot
parent de7aa33a5e
commit ae48659a68
67 changed files with 2229 additions and 94 deletions

View File

@@ -293,4 +293,29 @@ the artifact triggers the rage.
on_expired_text = "<span class='notice'>You feel.. different.</span>"
stacks = MODIFIER_STACK_EXTEND
pulse_set_level = PULSE_NORM
pulse_set_level = PULSE_NORM
/datum/modifier/slow_pulse
name = "slow pulse"
desc = "Your blood flows slower."
on_created_text = "<span class='notice'>You feel sluggish.</span>"
on_expired_text = "<span class='notice'>You feel energized.</span>"
stacks = MODIFIER_STACK_EXTEND
bleeding_rate_percent = 0.8
pulse_set_level = PULSE_SLOW
// Temperature Normalizer.
/datum/modifier/homeothermic
name = "temperature resistance"
desc = "Your body normalizes to room temperature."
on_created_text = "<span class='notice'>You feel comfortable.</span>"
on_expired_text = "<span class='notice'>You feel.. still probably comfortable.</span>"
stacks = MODIFIER_STACK_EXTEND
/datum/modifier/homeothermic/tick()
..()
holder.bodytemperature = round((holder.bodytemperature + T20C) / 2)

View File

@@ -146,3 +146,55 @@
if(prob(10))
to_chat(H, "<span class='danger'>It feels as though your body is being torn apart!</span>")
L.updatehealth()
/datum/modifier/gluttonyregeneration
name = "gluttonous regeneration"
desc = "You are filled with an overwhelming hunger."
mob_overlay_state = "electricity"
on_created_text = "<span class='critical'>You feel an intense and overwhelming hunger overtake you as your body regenerates!</span>"
on_expired_text = "<span class='notice'>The blaze of hunger inside you has been snuffed.</span>"
stacks = MODIFIER_STACK_EXTEND
/datum/modifier/gluttonyregeneration/can_apply(var/mob/living/L)
if(L.stat == DEAD)
to_chat(L, "<span class='warning'>You can't be dead to consume.</span>")
return FALSE
if(!L.is_sentient())
return FALSE // Drones don't feel anything, not even hunger.
if(L.has_modifier_of_type(/datum/modifier/berserk_exhaustion))
to_chat(L, "<span class='warning'>You recently berserked, so you are too tired to consume.</span>")
return FALSE
if(!ishuman(L)) // Only humanoids feel hunger. Totally.
return FALSE
else
var/mob/living/carbon/human/H = L
if(H.species.name == "Diona")
to_chat(L, "<span class='warning'>You feel strange for a moment, but it passes.</span>")
return FALSE // Happy trees aren't affected by incredible hunger.
return ..()
/datum/modifier/gluttonyregeneration/tick()
spawn()
if(ishuman(holder))
var/mob/living/carbon/human/H = holder
var/starting_nutrition = H.nutrition
H.nutrition = max(0, H.nutrition - 10)
var/healing_amount = starting_nutrition - H.nutrition
if(healing_amount < 0) // If you are eating enough to somehow outpace this, congratulations, you are gluttonous enough to gain a boon.
healing_amount *= -2
H.adjustBruteLoss(-healing_amount * 0.25)
H.adjustFireLoss(-healing_amount * 0.25)
H.adjustOxyLoss(-healing_amount * 0.25)
H.adjustToxLoss(-healing_amount * 0.25)
..()