public void Diffuse(GasMixture a, float factor = 8) { for (var i = 0; i < a.gasses.Length; i++) { float amount = (a.gasses[i] - gasses[i]) / factor; AddNextGas(amount, (GasType)i); a.AddNextGas(-amount, (GasType)i); } ShareTemp(a, factor); }
public void AddGas(float amount, GasType gas) { if (amount == 1.0f) { gasMixture.SetNextTemperature(5000f); LogManager.Log("Temp increase"); } else { gasMixture.AddNextGas(amount, gas); } }
public void Diffuse(GasMixture a, float factor = 8) { for (var i = 0; i < a.gasses.Length; i++) { float amount = (a.gasses[i] - gasses[i])/factor; AddNextGas(amount, (GasType)i); a.AddNextGas(-amount, (GasType)i); } ShareTemp(a, factor); }