From c8fc6f25e5564c5e84058db96ed33d34dc8499cd Mon Sep 17 00:00:00 2001 From: SilveryFerret Date: Tue, 25 Jul 2017 17:44:30 -0400 Subject: [PATCH] Oxyphoron change proposal (#3634) * Changes oxyphoron to hydrophoron * Stops hydrophoron magically producing oxygen Instead, it creates a spark when it's tossed on the ground., and shoves phoron into the air. Hooray! * Change hydrophoron touch_turf proc at Anewbe's request * Missed a /2 --- .../Chemistry-Reagents-Toxins.dm | 20 ++++++++++--------- code/modules/reagents/Chemistry-Recipes.dm | 13 ++++++------ 2 files changed, 18 insertions(+), 15 deletions(-) diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm index 4ab1519b3f1..1120192c6ba 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm @@ -45,27 +45,29 @@ //R-UST port // Produced during deuterium synthesis. Super poisonous, SUPER flammable (doesn't need oxygen to burn). -/datum/reagent/toxin/phoroxygen - name = "Oxyphoron" - id = "oxyphoron" +/datum/reagent/toxin/hydrophoron + name = "Hydrophoron" + id = "hydrophoron" description = "An exceptionally flammable molecule formed from deuterium synthesis." strength = 80 var/fire_mult = 30 -/datum/reagent/toxin/phoroxygen/touch_mob(var/mob/living/L, var/amount) +/datum/reagent/toxin/hydrophoron/touch_mob(var/mob/living/L, var/amount) if(istype(L)) L.adjust_fire_stacks(amount / fire_mult) -/datum/reagent/toxin/phoroxygen/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) - M.take_organ_damage(0, removed * 0.1) //being splashed directly with oxyphoron causes minor chemical burns +/datum/reagent/toxin/hydrophoron/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) + M.take_organ_damage(0, removed * 0.1) //being splashed directly with hydrophoron causes minor chemical burns if(prob(10 * fire_mult)) M.pl_effects() -/datum/reagent/toxin/phoroxygen/touch_turf(var/turf/simulated/T) +/datum/reagent/toxin/hydrophoron/touch_turf(var/turf/simulated/T) if(!istype(T)) return - T.assume_gas("oxygen", ceil(volume/2), T20C) T.assume_gas("phoron", ceil(volume/2), T20C) + for(var/turf/simulated/floor/target_tile in range(0,T)) + target_tile.assume_gas("volatile_fuel", volume/2, 400+T0C) + spawn (0) target_tile.hotspot_expose(700, 400) remove_self(volume) /datum/reagent/toxin/spidertoxin @@ -340,7 +342,7 @@ if(istype(H) && (H.species.flags & NO_SCAN)) return -//The original coder comment here wanted it to be "Approx. one mutation per 10 injected/20 ingested/30 touching units" +//The original coder comment here wanted it to be "Approx. one mutation per 10 injected/20 ingested/30 touching units" //The issue was, it was removed (.2) multiplied by .1, which resulted in a .02% chance per tick to have a mutation occur. Or more accurately, 5000 injected for a single mutation. //To honor their original idea, let's keep it as 10/20/30 as they wanted... For the most part. diff --git a/code/modules/reagents/Chemistry-Recipes.dm b/code/modules/reagents/Chemistry-Recipes.dm index c25654a2e12..3a44da44753 100644 --- a/code/modules/reagents/Chemistry-Recipes.dm +++ b/code/modules/reagents/Chemistry-Recipes.dm @@ -1948,11 +1948,12 @@ result_amount = 2 //R-UST Port -/datum/chemical_reaction/oxyphoron - name = "Oxyphoron" - id = "oxyphoron" - result = "oxyphoron" - required_reagents = list("water" = 1, "phoron" = 1) +/datum/chemical_reaction/hyrdophoron + name = "Hydrophoron" + id = "hydrophoron" + result = "hydrophoron" + required_reagents = list("hydrogen" = 1, "phoron" = 1) + inhibitors = list("nitrogen" = 1) //So it doesn't mess with lexorin result_amount = 2 /datum/chemical_reaction/deuterium @@ -1960,7 +1961,7 @@ id = "deuterium" result = null required_reagents = list("water" = 10) - catalysts = list("oxyphoron" = 5) + catalysts = list("hydrophoron" = 5) result_amount = 1 /datum/chemical_reaction/deuterium/on_reaction(var/datum/reagents/holder, var/created_volume)