Removes limits on eating, centralizes nutrition changing.

This commit is contained in:
Atermonera
2020-04-29 14:14:11 -07:00
committed by VirgoBot
parent 8c5c0a7cfb
commit f1cabd6742
38 changed files with 434 additions and 81 deletions

View File

@@ -50,7 +50,7 @@
is_vampire = 1 //VOREStation Edit END
if(alien == IS_SLIME) // Treat it like nutriment for the jello, but not equivalent.
M.heal_organ_damage(0.2 * removed * volume_mod, 0) // More 'effective' blood means more usable material.
M.nutrition += 20 * removed * volume_mod
M.adjust_nutrition(20 * removed * volume_mod)
M.add_chemical_effect(CE_BLOODRESTORE, 4 * removed)
M.adjustToxLoss(removed / 2) // Still has some water in the form of plasma.
return

View File

@@ -138,7 +138,7 @@
/datum/reagent/ethanol/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
if(issmall(M)) removed *= 2
M.nutrition += nutriment_factor * removed
M.adjust_nutrition(nutriment_factor * removed)
var/strength_mod = 1
if(alien == IS_SKRELL)
strength_mod *= 5
@@ -448,7 +448,7 @@
glass_icon = DRINK_ICON_NOISY
/datum/reagent/sugar/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
M.nutrition += removed * 3
M.adjust_nutrition(removed * 3)
var/effective_dose = dose
if(issmall(M))

View File

@@ -46,8 +46,12 @@
if(IS_CHIMERA) removed *= 0.25 //VOREStation Edit
if(issmall(M)) removed *= 2 // Small bodymass, more effect from lower volume.
M.heal_organ_damage(0.5 * removed, 0)
<<<<<<< HEAD
if(M.species.gets_food_nutrition) //VOREStation edit. If this is set to 0, they don't get nutrition from food.
M.nutrition += nutriment_factor * removed // For hunger and fatness
=======
M.adjust_nutrition(nutriment_factor * removed)
>>>>>>> 61c4929... Merge pull request #7045 from Neerti/let_them_eat_all_the_cake
M.add_chemical_effect(CE_BLOODRESTORE, 4 * removed)
/datum/reagent/nutriment/glucose
@@ -388,10 +392,7 @@
overdose = REAGENTS_OVERDOSE
/datum/reagent/lipozine/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
M.nutrition = max(M.nutrition - 10 * removed, 0)
M.overeatduration = 0
if(M.nutrition < 0)
M.nutrition = 0
M.adjust_nutrition(-10 * removed)
/* Non-food stuff like condiments */
@@ -659,7 +660,7 @@
return
/datum/reagent/drink/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
M.nutrition += nutrition * removed
M.adjust_nutrition(nutrition * removed)
M.dizziness = max(0, M.dizziness + adj_dizzy)
M.drowsyness = max(0, M.drowsyness + adj_drowsy)
M.sleeping = max(0, M.sleeping + adj_sleepy)

View File

@@ -520,7 +520,7 @@
return
if(alien == IS_SLIME)
if(dose >= 5) //Not effective in small doses, though it causes toxloss at higher ones, it will make the regeneration for brute and burn more 'efficient' at the cost of more nutrition.
M.nutrition -= removed * 2
M.adjust_nutrition(removed * 2)
M.adjustBruteLoss(-2 * removed)
M.adjustFireLoss(-1 * removed)
chem_effective = 0.5
@@ -548,7 +548,7 @@
if(alien == IS_SLIME)
M.make_jittery(4) //Hyperactive fluid pumping results in unstable 'skeleton', resulting in vibration.
if(dose >= 5)
M.nutrition = (M.nutrition - (removed * 2)) //Sadly this movement starts burning food in higher doses.
M.adjust_nutrition(-removed * 2) // Sadly this movement starts burning food in higher doses.
..()
if(prob(5))
M.emote(pick("twitch", "blink_r", "shiver"))
@@ -738,7 +738,7 @@
if(prob(10))
H.vomit(1)
else if(H.nutrition > 30)
H.nutrition = max(0, H.nutrition - round(30 * removed))
M.adjust_nutrition(-removed * 30)
else
H.adjustToxLoss(-10 * removed) // Carthatoline based, considering cost.
@@ -1092,7 +1092,7 @@
M.make_jittery(5)
if(dose >= 20 || M.toxloss >= 60) //Core disentigration, cellular mass begins treating itself as an enemy, while maintaining regeneration. Slime-cancer.
M.adjustBrainLoss(2 * removed)
M.nutrition = max(H.nutrition - 20, 0)
M.adjust_nutrition(-20)
if(M.bruteloss >= 60 && M.toxloss >= 60 && M.brainloss >= 30) //Total Structural Failure. Limbs start splattering.
var/obj/item/organ/external/O = pick(H.organs)
if(prob(20) && !istype(O, /obj/item/organ/external/chest/unbreakable/slime) && !istype(O, /obj/item/organ/external/groin/unbreakable/slime))

View File

@@ -19,7 +19,7 @@
if(alien == IS_SLIME)
removed *= 0.25 // Results in half the standard tox as normal. Prometheans are 'Small' for flaps.
if(dose >= 10)
M.nutrition += strength * removed //Body has to deal with the massive influx of toxins, rather than try using them to repair.
M.adjust_nutrition(strength * removed) // Body has to deal with the massive influx of toxins, rather than try using them to repair.
else
M.heal_organ_damage((10/strength) * removed, (10/strength) * removed) //Doses of toxins below 10 units, and 10 strength, are capable of providing useful compounds for repair.
M.adjustToxLoss(strength * removed)
@@ -396,7 +396,7 @@
/datum/reagent/toxin/sifslurry/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
if(alien == IS_DIONA) // Symbiotic bacteria.
M.nutrition += strength * removed
M.adjust_nutrition(strength * removed)
return
else
M.add_modifier(/datum/modifier/slow_pulse, 30 SECONDS)