Merge pull request #31281 from vuonojenmustaturska/clowncult

Removes /datum/reagents/process(), changes cryostylane & pyrosium reaction speed
This commit is contained in:
oranges
2017-10-05 11:54:45 +13:00
committed by GitHub
4 changed files with 17 additions and 34 deletions
-16
View File
@@ -16,8 +16,6 @@
/datum/reagents/New(maximum=100)
maximum_volume = maximum
if(!(flags & REAGENT_NOREACT))
START_PROCESSING(SSobj, src)
//I dislike having these here but map-objects are initialised before world/New() is called. >_>
if(!GLOB.chemical_reagents_list)
@@ -54,7 +52,6 @@
/datum/reagents/Destroy()
. = ..()
STOP_PROCESSING(SSobj, src)
var/list/cached_reagents = reagent_list
for(var/reagent in cached_reagents)
var/datum/reagent/R = reagent
@@ -288,24 +285,11 @@
C.update_stamina()
update_total()
/datum/reagents/process()
var/list/cached_reagents = reagent_list
if(flags & REAGENT_NOREACT)
STOP_PROCESSING(SSobj, src)
return
for(var/reagent in cached_reagents)
var/datum/reagent/R = reagent
R.on_tick()
/datum/reagents/proc/set_reacting(react = TRUE)
if(react)
// Order is important, process() can remove from processing if
// the flag is present
flags &= ~(REAGENT_NOREACT)
START_PROCESSING(SSobj, src)
else
STOP_PROCESSING(SSobj, src)
flags |= REAGENT_NOREACT
/datum/reagents/proc/conditional_update_move(atom/A, Running = 0)
@@ -80,10 +80,6 @@
/datum/reagent/proc/on_update(atom/A)
return
// Called every time reagent containers process.
/datum/reagent/proc/on_tick(data)
return
// Called when the reagent container is hit by an explosion
/datum/reagent/proc/on_ex_act(severity)
return
@@ -196,13 +196,6 @@
M.bodytemperature -= 15
..()
/datum/reagent/cryostylane/on_tick()
if(holder.has_reagent("oxygen"))
holder.remove_reagent("oxygen", 1)
holder.chem_temp -= 10
holder.handle_reactions()
..()
/datum/reagent/cryostylane/reaction_turf(turf/T, reac_volume)
if(reac_volume >= 5)
for(var/mob/living/simple_animal/slime/M in T)
@@ -222,13 +215,6 @@
M.bodytemperature += 15
..()
/datum/reagent/pyrosium/on_tick()
if(holder.has_reagent("oxygen"))
holder.remove_reagent("oxygen", 1)
holder.chem_temp += 10
holder.handle_reactions()
..()
/datum/reagent/teslium //Teslium. Causes periodic shocks, and makes shocks against the target much more effective.
name = "Teslium"
id = "teslium"
@@ -342,6 +342,23 @@
holder.chem_temp = 20 // cools the fuck down
return
/datum/chemical_reaction/cryostylane_oxygen
name = "ephemeral cryostylane reaction"
id = "cryostylane_oxygen"
results = list("cryostylane" = 1)
required_reagents = list("cryostylane" = 1, "oxygen" = 1)
/datum/chemical_reaction/cryostylane_oxygen/on_reaction(datum/reagents/holder, created_volume)
holder.chem_temp -= 10*created_volume
/datum/chemical_reaction/pyrosium_oxygen
name = "ephemeral pyrosium reaction"
id = "pyrosium_oxygen"
results = list("pyrosium" = 1)
required_reagents = list("pyrosium" = 1, "oxygen" = 1)
/datum/chemical_reaction/pyrosium_oxygen/on_reaction(datum/reagents/holder, created_volume)
holder.chem_temp += 10*created_volume
/datum/chemical_reaction/pyrosium
name = "pyrosium"