Direct pressure and asphyxiation damage do not interrupt DoAfters anymore (#5459)
This commit is contained in:
@@ -103,7 +103,7 @@ namespace Content.Server.Atmos.EntitySystems
|
||||
goto default;
|
||||
|
||||
// Deal damage and ignore resistances. Resistance to pressure damage should be done via pressure protection gear.
|
||||
_damageableSystem.TryChangeDamage(uid, barotrauma.Damage * Atmospherics.LowPressureDamage, true);
|
||||
_damageableSystem.TryChangeDamage(uid, barotrauma.Damage * Atmospherics.LowPressureDamage, true, false);
|
||||
|
||||
if (status == null) break;
|
||||
|
||||
@@ -126,7 +126,7 @@ namespace Content.Server.Atmos.EntitySystems
|
||||
var damageScale = MathF.Min((pressure / Atmospherics.HazardHighPressure) * Atmospherics.PressureDamageCoefficient, Atmospherics.MaxHighPressureDamage);
|
||||
|
||||
// Deal damage and ignore resistances. Resistance to pressure damage should be done via pressure protection gear.
|
||||
_damageableSystem.TryChangeDamage(uid, barotrauma.Damage * damageScale, true);
|
||||
_damageableSystem.TryChangeDamage(uid, barotrauma.Damage * damageScale, true, false);
|
||||
|
||||
if (status == null) break;
|
||||
|
||||
|
||||
@@ -320,7 +320,7 @@ namespace Content.Server.Body.Components
|
||||
alertsComponent.ShowAlert(AlertType.LowOxygen);
|
||||
}
|
||||
|
||||
EntitySystem.Get<DamageableSystem>().TryChangeDamage(Owner.Uid, Damage, true);
|
||||
EntitySystem.Get<DamageableSystem>().TryChangeDamage(Owner.Uid, Damage, true, false);
|
||||
}
|
||||
|
||||
private void StopSuffocation()
|
||||
|
||||
@@ -23,7 +23,7 @@ namespace Content.Server.DoAfter
|
||||
|
||||
public void HandleDamage(EntityUid _, DoAfterComponent component, DamageChangedEvent args)
|
||||
{
|
||||
if (component.DoAfters.Count == 0 || !args.DamageIncreased)
|
||||
if (component.DoAfters.Count == 0 || !args.InterruptsDoAfters)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user