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 GitHub
parent 4125d28b75
commit 1db8496dd7

View File

@@ -230,7 +230,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;