mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2025-12-14 19:51:59 +00:00
44 lines
1.1 KiB
Plaintext
44 lines
1.1 KiB
Plaintext
//Helper Modules
|
|
|
|
|
|
// Helper to repressurize the area in case it was run in space
|
|
/datum/mapGeneratorModule/bottomLayer/repressurize
|
|
spawnableAtoms = list()
|
|
spawnableTurfs = list()
|
|
|
|
/datum/mapGeneratorModule/bottomLayer/repressurize/generate()
|
|
if(!mother)
|
|
return
|
|
var/list/map = mother.map
|
|
for(var/turf/simulated/T in map)
|
|
SSair.remove_from_active(T)
|
|
for(var/turf/simulated/T in map)
|
|
if(T.air)
|
|
T.air.oxygen = T.oxygen
|
|
T.air.nitrogen = T.nitrogen
|
|
T.air.carbon_dioxide = T.carbon_dioxide
|
|
T.air.toxins = T.toxins
|
|
T.air.temperature = T.temperature
|
|
SSair.add_to_active(T)
|
|
|
|
//Only places atoms/turfs on area borders
|
|
/datum/mapGeneratorModule/border
|
|
clusterCheckFlags = CLUSTER_CHECK_NONE
|
|
|
|
/datum/mapGeneratorModule/border/generate()
|
|
if(!mother)
|
|
return
|
|
var/list/map = mother.map
|
|
for(var/turf/T in map)
|
|
if(is_border(T))
|
|
place(T)
|
|
|
|
/datum/mapGeneratorModule/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
|
|
|
|
/datum/mapGenerator/repressurize
|
|
modules = list(/datum/mapGeneratorModule/bottomLayer/repressurize) |