From: DrSmugleaf <10968691+DrSmugleaf@users.noreply.github.com> Date: Mon, 5 Aug 2024 03:14:01 +0000 (-0700) Subject: Fix falsely showing damage color effect to entities that aren't allowed to be attacke... X-Git-Url: https://git.smokeofanarchy.ru/gitweb.cgi?a=commitdiff_plain;h=84a9253b10f2ffa888aad4f4bc2c3fa9bfe8b494;p=space-station-14.git Fix falsely showing damage color effect to entities that aren't allowed to be attacked (#30661) --- diff --git a/Content.Shared/Weapons/Melee/SharedMeleeWeaponSystem.cs b/Content.Shared/Weapons/Melee/SharedMeleeWeaponSystem.cs index 72cf4ec550..ae0ebfe74c 100644 --- a/Content.Shared/Weapons/Melee/SharedMeleeWeaponSystem.cs +++ b/Content.Shared/Weapons/Melee/SharedMeleeWeaponSystem.cs @@ -625,14 +625,18 @@ public abstract class SharedMeleeWeaponSystem : EntitySystem var appliedDamage = new DamageSpecifier(); - foreach (var entity in targets) + for (var i = targets.Count - 1; i >= 0; i--) { + var entity = targets[i]; // We raise an attack attempt here as well, // primarily because this was an untargeted wideswing: if a subscriber to that event cared about // the potential target (such as for pacifism), they need to be made aware of the target here. // In that case, just continue. if (!Blocker.CanAttack(user, entity, (weapon, component))) + { + targets.RemoveAt(i); continue; + } var attackedEvent = new AttackedEvent(meleeUid, user, GetCoordinates(ev.Coordinates)); RaiseLocalEvent(entity, attackedEvent);