Fix DeltaPressure damage not capping beyond a certain pressure (#40125)

This commit is contained in:
ArtisticRoomba 2025-09-05 00:09:54 -07:00 committed by Vanessa
parent e90e583c23
commit cb79611061
1 changed files with 2 additions and 1 deletions

View File

@ -247,7 +247,8 @@ public sealed partial class AtmosphereSystem
private void PerformDamage(Entity<DeltaPressureComponent> ent, float pressure, float deltaPressure)
{
var maxPressure = Math.Max(pressure - ent.Comp.MinPressure, deltaPressure - ent.Comp.MinPressureDelta);
var appliedDamage = ScaleDamage(ent, ent.Comp.BaseDamage, maxPressure);
var maxPressureCapped = Math.Min(maxPressure, ent.Comp.MaxEffectivePressure);
var appliedDamage = ScaleDamage(ent, ent.Comp.BaseDamage, maxPressureCapped);
_damage.TryChangeDamage(ent, appliedDamage, ignoreResistances: true, interruptsDoAfters: false);
ent.Comp.IsTakingDamage = true;