From 489cdf00962f444f1e87f72171b16a6021353c7a Mon Sep 17 00:00:00 2001 From: ZomgPonies Date: Fri, 6 Jun 2014 02:35:10 -0400 Subject: [PATCH] Made hyperzine harder to make properly. --- code/modules/reagents/Chemistry-Reagents.dm | 15 ++++++- code/modules/reagents/Chemistry-Recipes.dm | 44 +++++++++++++++------ code/modules/virus2/effect.dm | 1 + 3 files changed, 47 insertions(+), 13 deletions(-) diff --git a/code/modules/reagents/Chemistry-Reagents.dm b/code/modules/reagents/Chemistry-Reagents.dm index 5f498c46cb2..8bb46d1401d 100644 --- a/code/modules/reagents/Chemistry-Reagents.dm +++ b/code/modules/reagents/Chemistry-Reagents.dm @@ -1857,11 +1857,22 @@ datum ..() return + benazine + name = "Benazine" + id = "benazine" + description = "An innocuous cold medicine, good against Coldingtons. It is also the precursor of the highly addictive stiumlant hyperzine." + reagent_state = LIQUID + color = "#CCFF00" // rgb: 204, 255, 0 + + on_mob_life(var/mob/living/M as mob) + ..() + return + hyperzine name = "Hyperzine" id = "hyperzine" - description = "Hyperzine is a highly effective, long lasting, muscle stimulant." - reagent_state = LIQUID + description = "Hyperzine is a highly effective, long lasting, muscle stimulant. It is highly addictive." + reagent_state = SOLID color = "#CCFF00" // rgb: 204, 255, 0 on_mob_life(var/mob/living/M as mob) diff --git a/code/modules/reagents/Chemistry-Recipes.dm b/code/modules/reagents/Chemistry-Recipes.dm index 3895d1ccee9..d14d3586338 100644 --- a/code/modules/reagents/Chemistry-Recipes.dm +++ b/code/modules/reagents/Chemistry-Recipes.dm @@ -29,17 +29,27 @@ datum required_reagents = list("water" = 1, "potassium" = 1) result_amount = 2 on_reaction(var/datum/reagents/holder, var/created_volume) - var/datum/effect/effect/system/reagents_explosion/e = new() - e.set_up(round (created_volume/10, 1), holder.my_atom, 0, 0) - e.holder_damage(holder.my_atom) - if(isliving(holder.my_atom)) - e.amount *= 0.5 - var/mob/living/L = holder.my_atom - if(L.stat!=DEAD) + + if(holder.has_reagent("benazine")) + if(istype(holder.my_atom.loc, /obj/machinery/bunsen_burner)) + if(holder.my_atom.loc:heated) + var/bvolume = holder.get_reagent_amount("benazine") + if(bvolume > created_volume / 2) + bvolume = created_volume + holder.add_reagent("hyperzine", bvolume) + holder.isolate_reagent("hyperzine") + else + var/datum/effect/effect/system/reagents_explosion/e = new() + e.set_up(round (created_volume/10, 1), holder.my_atom, 0, 0) + e.holder_damage(holder.my_atom) + if(isliving(holder.my_atom)) e.amount *= 0.5 - e.start() - holder.clear_reagents() - return + var/mob/living/L = holder.my_atom + if(L.stat!=DEAD) + e.amount *= 0.5 + e.start() + holder.clear_reagents() + return emp_pulse name = "EMP Pulse" @@ -269,12 +279,24 @@ datum required_reagents = list("inaprovaline" = 1, "carbon" = 1) result_amount = 2 + benazine + name = "Benazine" + id = "benarzine" + result = "benazine" + required_reagents = list("sugar" = 1, "phosphorus" = 1, "sulfur" = 1,) + result_amount = 3 + +/* + Made with benazine and potassium/water combo sekrit recipe. + hyperzine name = "Hyperzine" id = "hyperzine" result = "hyperzine" - required_reagents = list("sugar" = 1, "phosphorus" = 1, "sulfur" = 1,) + required_reagents = list("benazine" = 1, "potassium" = 1, "water" = 1,) result_amount = 3 + requires_heating = 1 +*/ ryetalyn name = "Ryetalyn" diff --git a/code/modules/virus2/effect.dm b/code/modules/virus2/effect.dm index 6e726473378..0e6f2584c2d 100644 --- a/code/modules/virus2/effect.dm +++ b/code/modules/virus2/effect.dm @@ -727,6 +727,7 @@ var/list/compatible_mobs = list(/mob/living/carbon/human, /mob/living/carbon/mon name = "Coldingtons Effect" stage = 1 activate(var/mob/living/carbon/mob,var/multiplier) + if (mob.reagents.has_reagent("benazine")) return if (prob(30)) mob << "You feel like you are about to sneeze!" sleep(5)