Fix gas filter always outputting 20C filtered gas (#42876)

ingenious!
This commit is contained in:
ArtisticRoomba 2026-02-10 02:10:45 -08:00 committed by Coryler
parent 474d431924
commit d974b15abb
1 changed files with 5 additions and 3 deletions

View File

@ -81,10 +81,12 @@ namespace Content.Server.Atmos.Piping.Trinary.EntitySystems
var availableMoles = removed.GetMoles(filter.FilteredGas.Value);
var filteredMoles = Math.Max(Math.Min(limitMolesFilter, availableMoles), 0);
var filteredGasMixture = new GasMixture { Temperature = removed.Temperature };
filterNode.Air.AdjustMoles(filter.FilteredGas.Value, filteredMoles);
removed.SetMoles(filter.FilteredGas.Value, 0f);
inletNode.Air.AdjustMoles(filter.FilteredGas.Value, availableMoles - filteredMoles);
filteredGasMixture.SetMoles(filter.FilteredGas.Value, filteredMoles);
removed.AdjustMoles(filter.FilteredGas.Value, -filteredMoles);
_atmosphereSystem.Merge(filterNode.Air, filteredGasMixture);
_ambientSoundSystem.SetAmbience(uid, filteredMoles > 0f);
}