Skip to content

Rework Chemistry-Reagents.dm

Rob Nelson requested to merge pull/6302/Chem-Hotfix into Bleeding-Edge

Created by: dylanstrategie

  • All helper procs now handle sanity checks (holder, istype, etc). This massively reduces the amount of redundant checks for individual reagents, and limits shitcode
  • Mob related procs now expect to be passed a mob/living, and will return if they don't
  • Turf related procs now expect to be passed a turf/simulated, and will return if they don't
  • All reagents should now call for parent. Fixes #6294 (closed)
  • Removed all self.remove_reagent from reagent code (instead changed to custom_metabolism). Only exception is Discount's Dan Sauce
  • Food and drink reagents now use FOOD_METABOLISM for both their custom_metabolism and nutrition_factor values
  • All food reagents with non-null nutrition_factor now properly give nutrition. A few reagents have had this added (namely glycerol, hot sauce and cold sauce, and maybe another)
  • Removed 0.01 metabolism from chemicals that didn't warrant it (aka ones that have zero effect on_mob_life like copper, sulfur, phosporus, etc). Reagents with a direct purpose like Spaceacilin weren't modified for balance reasons
  • All reaction_turf procs that create cleanables (with the notable exception of blood) will now return if there already is a cleanable of the same type on the turf
  • Moved reagent Destroy() back to the top of the file, instead of having it stuck right above vinegar
  • A lethal amount of formatting

Potential balance changes :

  • Both water and holy water can now clean up turfs and mobs. Holy water now behaves mostly like water by damaging Greys, expanding monkey cubes and extinguishing fires so that the Chaplain doesn't accidentally sabotage firefighting supplies. You can't slip on holy water though
  • Holy water now uses volume instead of hardcoded values. Should not change the damage output on vampires since those values were already calculated using a base formula (2 times regular, 0.4 mature vampire)
  • Corn oil no longer behaves like water when sprayed on turfs (and certainly does not extinguish fires anymore)
  • Unfucked acid (including water/holy water for Greys and Vampires). It now deals burn damage instead of brute damage, isn't capped on application (which forced the attacker to use rapid 5u sprays instead of a single beaker chug) and ingesting it properly multiplies the damage
  • Spraying fuel on an object will now add fuel to the object's turf. Fixes #3928 (closed)

There should be no other changes, please make sure to check because a lot of lines were modified

Merge request reports