mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-22 12:41:09 +01:00
Adding Linda.
This commit is contained in:
@@ -49,6 +49,7 @@
|
||||
var/datum/gas_mixture/removed = air_contents.remove(transfer_moles)
|
||||
|
||||
loc.assume_air(removed)
|
||||
air_update_turf()
|
||||
|
||||
if(network)
|
||||
network.update = 1
|
||||
|
||||
@@ -107,6 +107,7 @@
|
||||
var/datum/gas_mixture/removed = air_contents.remove(transfer_moles)
|
||||
|
||||
loc.assume_air(removed)
|
||||
air_update_turf()
|
||||
|
||||
if(network)
|
||||
network.update = 1
|
||||
@@ -127,6 +128,7 @@
|
||||
return
|
||||
|
||||
air_contents.merge(removed)
|
||||
air_update_turf()
|
||||
|
||||
if(network)
|
||||
network.update = 1
|
||||
|
||||
@@ -137,6 +137,7 @@
|
||||
air_contents.merge(filtered_out)
|
||||
|
||||
loc.assume_air(removed)
|
||||
air_update_turf()
|
||||
|
||||
if(network)
|
||||
network.update = 1
|
||||
@@ -150,6 +151,7 @@
|
||||
var/datum/gas_mixture/removed = loc.remove_air(transfer_moles)
|
||||
|
||||
air_contents.merge(removed)
|
||||
air_update_turf()
|
||||
|
||||
if(network)
|
||||
network.update = 1
|
||||
|
||||
@@ -127,37 +127,13 @@ datum/pipeline
|
||||
var/datum/gas_mixture/air_sample = air.remove_ratio(mingle_volume/air.volume)
|
||||
air_sample.volume = mingle_volume
|
||||
|
||||
if(istype(target) && target.parent && target.parent.group_processing)
|
||||
//Have to consider preservation of group statuses
|
||||
var/datum/gas_mixture/turf_copy = new
|
||||
var/datum/gas_mixture/turf_air = target.return_air()
|
||||
|
||||
turf_copy.copy_from(target.parent.air)
|
||||
turf_copy.volume = target.parent.air.volume //Copy a good representation of the turf from parent group
|
||||
equalize_gases(list(air_sample, turf_air))
|
||||
air.merge(air_sample)
|
||||
//turf_air already modified by equalize_gases()
|
||||
|
||||
equalize_gases(list(air_sample, turf_copy))
|
||||
air.merge(air_sample)
|
||||
|
||||
if(target.parent.air.compare(turf_copy))
|
||||
//The new turf would be an acceptable group member so permit the integration
|
||||
|
||||
turf_copy.subtract(target.parent.air)
|
||||
|
||||
target.parent.air.merge(turf_copy)
|
||||
|
||||
else
|
||||
//Comparison failure so dissemble group and copy turf
|
||||
|
||||
target.parent.suspend_group_processing()
|
||||
target.air.copy_from(turf_copy)
|
||||
|
||||
else
|
||||
var/datum/gas_mixture/turf_air = target.return_air()
|
||||
|
||||
equalize_gases(list(air_sample, turf_air))
|
||||
air.merge(air_sample)
|
||||
//turf_air already modified by equalize_gases()
|
||||
|
||||
if(istype(target) && !target.processing)
|
||||
if(istype(target))
|
||||
if(target.air)
|
||||
if(target.air.check_tile_graphic())
|
||||
target.update_visuals(target.air)
|
||||
@@ -186,12 +162,8 @@ datum/pipeline
|
||||
var/delta_temperature = 0
|
||||
var/sharer_heat_capacity = 0
|
||||
|
||||
if(modeled_location.parent && modeled_location.parent.group_processing)
|
||||
delta_temperature = (air.temperature - modeled_location.parent.air.temperature)
|
||||
sharer_heat_capacity = modeled_location.parent.air.heat_capacity()
|
||||
else
|
||||
delta_temperature = (air.temperature - modeled_location.air.temperature)
|
||||
sharer_heat_capacity = modeled_location.air.heat_capacity()
|
||||
delta_temperature = (air.temperature - modeled_location.air.temperature)
|
||||
sharer_heat_capacity = modeled_location.air.heat_capacity()
|
||||
|
||||
var/self_temperature_delta = 0
|
||||
var/sharer_temperature_delta = 0
|
||||
@@ -207,16 +179,7 @@ datum/pipeline
|
||||
|
||||
air.temperature += self_temperature_delta
|
||||
|
||||
if(modeled_location.parent && modeled_location.parent.group_processing)
|
||||
if((abs(sharer_temperature_delta) > MINIMUM_TEMPERATURE_DELTA_TO_SUSPEND) && (abs(sharer_temperature_delta) > MINIMUM_TEMPERATURE_RATIO_TO_SUSPEND*modeled_location.parent.air.temperature))
|
||||
modeled_location.parent.suspend_group_processing()
|
||||
|
||||
modeled_location.air.temperature += sharer_temperature_delta
|
||||
|
||||
else
|
||||
modeled_location.parent.air.temperature += sharer_temperature_delta/modeled_location.parent.air.group_multiplier
|
||||
else
|
||||
modeled_location.air.temperature += sharer_temperature_delta
|
||||
modeled_location.air.temperature += sharer_temperature_delta
|
||||
|
||||
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user