Files
Paradise/code/modules/procedural_mapping/mapGeneratorModules/mapgen_helpers.dm
Hayden Redacted 99d57fd35d Adds Hydrogen - The Framework for more Atmos Gases (#30742)
* IMPORTANT MILESTONE, AIR IS BREATHABLE

* the vibrations of the SM in my headphones are pleasing (no stupid hotspots)

* sanity check, it all works

* SM is fine

* this will work first try

* linter

* "thank you, warriorstar" everyone says in unison

* Build Rust library

* finishing touches (hopefully)

* Build Rust library

* update gas_mixture.dm to include hydrogen burning

* Build Rust library

* hydrogen should be the right color on gas analyzers

* i JUST rebuilt it

* adds agent B and Hydrogen floors

* update the h2 canister

* caniser bad speling

* in aa we trust

* Build Rust library

* Build Rust library

---------

Co-authored-by: paradisess13[bot] <165046124+paradisess13[bot]@users.noreply.github.com>
2025-11-03 21:05:26 +00:00

43 lines
1.1 KiB
Plaintext

//Helper Modules
// Helper to repressurize the area in case it was run in space
/datum/map_generator_module/bottom_layer/repressurize
spawnableAtoms = list()
spawnableTurfs = list()
/datum/map_generator_module/bottom_layer/repressurize/generate()
if(!mother)
return
var/list/map = mother.map
for(var/turf/simulated/T in map)
var/datum/gas_mixture/air = new()
air.set_oxygen(T.oxygen)
air.set_nitrogen(T.nitrogen)
air.set_carbon_dioxide(T.carbon_dioxide)
air.set_toxins(T.toxins)
air.set_sleeping_agent(T.sleeping_agent)
air.set_agent_b(T.agent_b)
air.set_hydrogen(T.hydrogen)
air.set_temperature(T.temperature)
T.blind_set_air(air)
//Only places atoms/turfs on area borders
/datum/map_generator_module/border
clusterCheckFlags = MAP_GENERATOR_CLUSTER_CHECK_NONE
/datum/map_generator_module/border/generate()
if(!mother)
return
var/list/map = mother.map
for(var/turf/T in map)
if(is_border(T))
place(T)
/datum/map_generator_module/border/proc/is_border(turf/T)
for(var/direction in list(SOUTH,EAST,WEST,NORTH))
if(get_step(T,direction) in mother.map)
continue
return 1
return 0