From 45b888fbfbe2bfbe8791840d215a6476c60c7554 Mon Sep 17 00:00:00 2001 From: Anewbe Date: Thu, 12 May 2016 19:08:23 -0500 Subject: [PATCH] Alters Unathi biology --- .../Chemistry-Reagents-Dispenser.dm | 18 +++++ .../Chemistry-Reagents-Food-Drinks.dm | 67 +++++++++++++++++++ 2 files changed, 85 insertions(+) diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm index 26b58eed31..4c3e461a27 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm @@ -375,6 +375,24 @@ /datum/reagent/sugar/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) M.nutrition += removed * 3 + var/effective_dose = dose + if(issmall(M)) + effective_dose *= 2 + + if(alien == IS_UNATHI) + if(effective_dose < 2) + if(effective_dose == metabolism * 2 || prob(5)) + M.emote("yawn") + else if(effective_dose < 5) + M.eye_blurry = max(M.eye_blurry, 10) + else if(effective_dose < 20) + if(prob(50)) + M.Weaken(2) + M.drowsyness = max(M.drowsyness, 20) + else + M.sleeping = max(M.sleeping, 20) + M.drowsyness = max(M.drowsyness, 60) + /datum/reagent/sulfur name = "Sulfur" id = "sulfur" diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm index 637470e7cc..be96e6665a 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm @@ -17,6 +17,8 @@ affect_ingest(M, alien, removed) /datum/reagent/nutriment/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) + switch(alien) + if(IS_UNATHI) removed *= 0.5 if(issmall(M)) removed *= 2 // Small bodymass, more effect from lower volume. M.heal_organ_damage(0.5 * removed, 0) M.nutrition += nutriment_factor * removed // For hunger and fatness @@ -42,6 +44,8 @@ if(IS_TESHARI) ..(M, alien, removed*1.2) // Teshari get a bit more nutrition from meat. return + if(IS_UNATHI) + ..(M, alien, removed*2.25) //Unathi get most of their nutrition from meat. ..() /datum/reagent/nutriment/protein/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) @@ -62,6 +66,27 @@ nutriment_factor = 10 color = "#FFFF00" +/datum/reagent/honey/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) + ..() + + var/effective_dose = dose + if(issmall(M)) + effective_dose *= 2 + + if(alien == IS_UNATHI) + if(effective_dose < 2) + if(effective_dose == metabolism * 2 || prob(5)) + M.emote("yawn") + else if(effective_dose < 5) + M.eye_blurry = max(M.eye_blurry, 10) + else if(effective_dose < 20) + if(prob(50)) + M.Weaken(2) + M.drowsyness = max(M.drowsyness, 20) + else + M.sleeping = max(M.sleeping, 20) + M.drowsyness = max(M.drowsyness, 60) + /datum/reagent/nutriment/flour name = "flour" id = "flour" @@ -396,6 +421,27 @@ glass_name = "glass of grape juice" glass_desc = "It's grrrrrape!" +/datum/reagent/juice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) + ..() + + var/effective_dose = dose/2 + if(issmall(M)) + effective_dose *= 2 + + if(alien == IS_UNATHI) + if(effective_dose < 2) + if(effective_dose == metabolism * 2 || prob(5)) + M.emote("yawn") + else if(effective_dose < 5) + M.eye_blurry = max(M.eye_blurry, 10) + else if(effective_dose < 20) + if(prob(50)) + M.Weaken(2) + M.drowsyness = max(M.drowsyness, 20) + else + M.sleeping = max(M.sleeping, 20) + M.drowsyness = max(M.drowsyness, 60) + /datum/reagent/drink/juice/lemon name = "Lemon Juice" id = "lemonjuice" @@ -765,6 +811,27 @@ glass_desc = "Glorious brainfreezing mixture." glass_center_of_mass = list("x"=16, "y"=7) +/datum/reagent/milkshake/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) + ..() + + var/effective_dose = dose/2 + if(issmall(M)) + effective_dose *= 2 + + if(alien == IS_UNATHI) + if(effective_dose < 2) + if(effective_dose == metabolism * 2 || prob(5)) + M.emote("yawn") + else if(effective_dose < 5) + M.eye_blurry = max(M.eye_blurry, 10) + else if(effective_dose < 20) + if(prob(50)) + M.Weaken(2) + M.drowsyness = max(M.drowsyness, 20) + else + M.sleeping = max(M.sleeping, 20) + M.drowsyness = max(M.drowsyness, 60) + /datum/reagent/drink/rewriter name = "Rewriter" description = "The secret of the sanctuary of the Libarian..."