From 8521df47f36aea530b1035900678db4e0f4f383e Mon Sep 17 00:00:00 2001 From: GinjaNinja32 Date: Mon, 24 Aug 2015 19:24:55 +0100 Subject: [PATCH 1/2] fix equalize() not equalizing gases --- code/ZAS/_gas_mixture_xgm.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/ZAS/_gas_mixture_xgm.dm b/code/ZAS/_gas_mixture_xgm.dm index 62f47a36bd..4dd2289486 100644 --- a/code/ZAS/_gas_mixture_xgm.dm +++ b/code/ZAS/_gas_mixture_xgm.dm @@ -99,7 +99,7 @@ /datum/gas_mixture/proc/equalize(datum/gas_mixture/sharer) - for(var/g in sharer.gas) + for(var/g in gas|sharer.gas) var/comb = gas[g] + sharer.gas[g] comb /= volume + sharer.volume gas[g] = comb * volume From 9a5da57d60a15e6f7e0d257a208ce9b338d55f23 Mon Sep 17 00:00:00 2001 From: GinjaNinja32 Date: Mon, 24 Aug 2015 19:33:37 +0100 Subject: [PATCH 2/2] fix heatcap calculation in equalize() --- code/ZAS/_gas_mixture_xgm.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/ZAS/_gas_mixture_xgm.dm b/code/ZAS/_gas_mixture_xgm.dm index 4dd2289486..594924eb47 100644 --- a/code/ZAS/_gas_mixture_xgm.dm +++ b/code/ZAS/_gas_mixture_xgm.dm @@ -99,15 +99,15 @@ /datum/gas_mixture/proc/equalize(datum/gas_mixture/sharer) + var/our_heatcap = heat_capacity() + var/share_heatcap = sharer.heat_capacity() + for(var/g in gas|sharer.gas) var/comb = gas[g] + sharer.gas[g] comb /= volume + sharer.volume gas[g] = comb * volume sharer.gas[g] = comb * sharer.volume - var/our_heatcap = heat_capacity() - var/share_heatcap = sharer.heat_capacity() - if(our_heatcap + share_heatcap) temperature = ((temperature * our_heatcap) + (sharer.temperature * share_heatcap)) / (our_heatcap + share_heatcap) sharer.temperature = temperature