]> git.smokeofanarchy.ru Git - space-station-14.git/commitdiff
Make some damage sources not cancel do afters (#24635)
authorPieter-Jan Briers <pieterjan.briers+git@gmail.com>
Sat, 27 Jan 2024 23:51:54 +0000 (00:51 +0100)
committerGitHub <noreply@github.com>
Sat, 27 Jan 2024 23:51:54 +0000 (10:51 +1100)
- poison chemicals (HealthChange effect)
- being on fire
- guardians transferring damage to owner

Content.Server/Atmos/EntitySystems/FlammableSystem.cs
Content.Server/Chemistry/ReagentEffects/HealthChange.cs
Content.Server/Guardian/GuardianSystem.cs

index c9ecc9c52357c0da4fd59828578ee9c46362af51..cb1cb9bc15022008cc54d897c0caddda86bab057 100644 (file)
@@ -402,7 +402,7 @@ namespace Content.Server.Atmos.EntitySystems
                     if (TryComp(uid, out TemperatureComponent? temp))
                         _temperatureSystem.ChangeHeat(uid, 12500 * damageScale, false, temp);
 
-                    _damageableSystem.TryChangeDamage(uid, flammable.Damage * damageScale);
+                    _damageableSystem.TryChangeDamage(uid, flammable.Damage * damageScale, interruptsDoAfters: false);
 
                     AdjustFireStacks(uid, flammable.FirestackFade * (flammable.Resisting ? 10f : 1f), flammable);
                 }
index a0c976bdc9d5cac886f4bbba7cbe600f68eae6b8..2a6181c7f35b33c5136b98c35eaa3ee2b94f2f9c 100644 (file)
@@ -115,7 +115,11 @@ namespace Content.Server.Chemistry.ReagentEffects
             var scale = ScaleByQuantity ? args.Quantity : FixedPoint2.New(1);
             scale *= args.Scale;
 
-            args.EntityManager.System<DamageableSystem>().TryChangeDamage(args.SolutionEntity, Damage * scale, IgnoreResistances);
+            args.EntityManager.System<DamageableSystem>().TryChangeDamage(
+                args.SolutionEntity,
+                Damage * scale,
+                IgnoreResistances,
+                interruptsDoAfters: false);
         }
     }
 }
index 02099b2c7b2bb50f6e5fdfa7de433c3f51480976..627c336a36bb6a75d5ba2fd647552954d56c7aa2 100644 (file)
@@ -262,7 +262,11 @@ namespace Content.Server.Guardian
             if (args.DamageDelta == null || component.Host == null || component.DamageShare > 0)
                 return;
 
-            _damageSystem.TryChangeDamage(component.Host, args.DamageDelta * component.DamageShare, origin: args.Origin);
+            _damageSystem.TryChangeDamage(
+                component.Host,
+                args.DamageDelta * component.DamageShare,
+                origin: args.Origin,
+                interruptsDoAfters: false);
             _popupSystem.PopupEntity(Loc.GetString("guardian-entity-taking-damage"), component.Host.Value, component.Host.Value);
 
         }