From c0073370b20fd5a98efc5b815dbc332842af7092 Mon Sep 17 00:00:00 2001 From: Putnam3145 Date: Sat, 6 Aug 2022 22:42:58 -0700 Subject: [PATCH] more chem gases --- code/modules/reagents/chemistry/reagents.dm | 2 - .../chemistry/reagents/medicine_reagents.dm | 3 ++ .../chemistry/reagents/other_reagents.dm | 46 +++++++++++++------ 3 files changed, 34 insertions(+), 17 deletions(-) diff --git a/code/modules/reagents/chemistry/reagents.dm b/code/modules/reagents/chemistry/reagents.dm index 0bb847a573..2fb8f58019 100644 --- a/code/modules/reagents/chemistry/reagents.dm +++ b/code/modules/reagents/chemistry/reagents.dm @@ -257,8 +257,6 @@ GLOBAL_LIST_INIT(name2reagent, build_name2reagent()) return rs.Join(" | ") /datum/reagent/proc/define_gas() - if(reagent_state == SOLID) - return null // doesn't make that much sense var/list/cached_reactions = GLOB.chemical_reactions_list for(var/reaction in cached_reactions[src.type]) var/datum/chemical_reaction/C = reaction diff --git a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm index 0a78af67b2..8336f95a0d 100644 --- a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm @@ -405,6 +405,8 @@ metabolization_rate = 0.5 * REAGENTS_METABOLISM chemical_flags = REAGENT_ALL_PROCESS overdose_threshold = 60 + boiling_point = T0C+100 + gas = GAS_H2O taste_description = "sweetness and salt" var/extra_regen = 0.25 // in addition to acting as temporary blood, also add this much to their actual blood per tick var/last_added = 0 @@ -691,6 +693,7 @@ description = "Rapidly restores oxygen deprivation as well as preventing more of it to an extent. Causes jittering." reagent_state = LIQUID color = "#00FFFF" + boiling_point = 300 metabolization_rate = 0.25 * REAGENTS_METABOLISM pH = 2 diff --git a/code/modules/reagents/chemistry/reagents/other_reagents.dm b/code/modules/reagents/chemistry/reagents/other_reagents.dm index b9f78cbc70..13ab624510 100644 --- a/code/modules/reagents/chemistry/reagents/other_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/other_reagents.dm @@ -266,24 +266,27 @@ /datum/reagent/water/reaction_turf(turf/open/T, reac_volume) if (!istype(T)) return - var/CT = cooling_temperature + if(holder?.temp > T0C + 100) + T.atmos_spawn_air("[GAS_H2O]=[reac_volume/molarity];TEMP=[holder.temp]") + else + var/CT = cooling_temperature - if(reac_volume >= 5) - T.MakeSlippery(TURF_WET_WATER, 10 SECONDS, min(reac_volume*1.5 SECONDS, 60 SECONDS)) + if(reac_volume >= 5) + T.MakeSlippery(TURF_WET_WATER, 10 SECONDS, min(reac_volume*1.5 SECONDS, 60 SECONDS)) - for(var/mob/living/simple_animal/slime/M in T) - M.apply_water() + for(var/mob/living/simple_animal/slime/M in T) + M.apply_water() - var/obj/effect/hotspot/hotspot = (locate(/obj/effect/hotspot) in T) - if(hotspot && !isspaceturf(T)) - if(T.air) - var/datum/gas_mixture/G = T.air - G.set_temperature(max(min(G.return_temperature()-(CT*1000),G.return_temperature()/CT),TCMB)) - G.react(src) - qdel(hotspot) - var/obj/effect/acid/A = (locate(/obj/effect/acid) in T) - if(A) - A.acid_level = max(A.acid_level - reac_volume*50, 0) + var/obj/effect/hotspot/hotspot = (locate(/obj/effect/hotspot) in T) + if(hotspot && !isspaceturf(T)) + if(T.air) + var/datum/gas_mixture/G = T.air + G.set_temperature(max(min(G.return_temperature()-(CT*1000),G.return_temperature()/CT),TCMB)) + G.react(src) + qdel(hotspot) + var/obj/effect/acid/A = (locate(/obj/effect/acid) in T) + if(A) + A.acid_level = max(A.acid_level - reac_volume*50, 0) /* * Water reaction to an object @@ -542,6 +545,7 @@ chemical_flags = REAGENT_ALL_PROCESS color = "#009CA8" // rgb: 0, 156, 168 taste_description = "cherry" // by popular demand + boiling_point = 330 var/lube_kind = TURF_WET_LUBE ///What kind of slipperiness gets added to turfs. /datum/reagent/lube/reaction_turf(turf/open/T, reac_volume) @@ -1848,6 +1852,15 @@ reagent_state = LIQUID taste_description = "solvent"//It's neutral though..? color = "#e6e6e6" + boiling_point = 329.2 + +/datum/reagent/acetone/define_gas() + var/datum/gas/G = ..() + G.fire_burn_rate = 1 / 4 + G.fire_products = list(GAS_H2O = 3, GAS_CO2 = 3) + G.enthalpy = -217100 + G.fire_temperature = FIRE_MINIMUM_TEMPERATURE_TO_EXIST + return G /datum/reagent/colorful_reagent name = "Colorful Reagent" @@ -2246,6 +2259,7 @@ color = "#AAAAAA55" taste_description = "water" metabolization_rate = 0.25 * REAGENTS_METABOLISM + boiling_point = 325 value = REAGENT_VALUE_RARE pH = 15 @@ -2485,6 +2499,8 @@ reagent_state = LIQUID color = "#FFFFFF" // rgb: 255, 255, 255 can_synth = FALSE + // you know i wouldn't + // boiling_point = T0C + 100 nutriment_factor = 0.5 * REAGENTS_METABOLISM var/decal_path = /obj/effect/decal/cleanable/semen