mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-09 16:14:13 +00:00
Gas Datums
Moved gas_mixture gas numbers to a list which is connected to a global gas_datum list, like with reagents. Modified some maths procs to be more sane, added adjust_gas and set_gas to help with processing. Added a modular system for gas flags - gases can now be marked as fuel and oxidiser with a flag, logged with a flag, scanned with a flag, etc. Changed scrubbers to use a list of scrubbing gases rather than a set of vars. Made miners and xenoarch effects more sensible - they now produce gas by ID, not manually. Made turfs' starting gases into a list, removed turf gas number vars.
This commit is contained in:
@@ -310,11 +310,15 @@ Total Unsimulated Turfs: [world.maxx*world.maxy*world.maxz - simulated_turf_coun
|
||||
return edge
|
||||
|
||||
/datum/controller/air_system/proc/has_same_air(turf/A, turf/B)
|
||||
if(A.oxygen != B.oxygen) return 0
|
||||
if(A.nitrogen != B.nitrogen) return 0
|
||||
if(A.toxins != B.toxins) return 0
|
||||
if(A.carbon_dioxide != B.carbon_dioxide) return 0
|
||||
if(A.temperature != B.temperature) return 0
|
||||
|
||||
var/datum/gas_mixture/A_mix = A.return_air()
|
||||
var/datum/gas_mixture/B_mix = B.return_air()
|
||||
|
||||
for(var/gasid in A_mix.gases)
|
||||
if(A_mix.get_moles_by_id(gasid) != B_mix.get_moles_by_id(gasid))
|
||||
return 0
|
||||
|
||||
return 1
|
||||
|
||||
/datum/controller/air_system/proc/remove_edge(connection/c)
|
||||
|
||||
Reference in New Issue
Block a user