From 93cb4404e35d5921163dd00c586db0589db999a1 Mon Sep 17 00:00:00 2001 From: Oleg Agafonov Date: Fri, 25 Aug 2023 19:32:28 +0400 Subject: [PATCH] game: fixed game error in some multi blocker damage use cases (NPE error); --- Mage/src/main/java/mage/game/combat/CombatGroup.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Mage/src/main/java/mage/game/combat/CombatGroup.java b/Mage/src/main/java/mage/game/combat/CombatGroup.java index 145ad93bb64..c44bae6d0c2 100644 --- a/Mage/src/main/java/mage/game/combat/CombatGroup.java +++ b/Mage/src/main/java/mage/game/combat/CombatGroup.java @@ -361,14 +361,16 @@ public class CombatGroup implements Serializable, Copyable { if (power != null) { // might be missing canDamage condition? Permanent blocker = game.getPermanent(blockerId); - if (!assignsDefendingPlayerAndOrDefendingCreaturesDividedDamage(blocker, blocker.getControllerId(), first, game, false)) { + if (blocker != null && !assignsDefendingPlayerAndOrDefendingCreaturesDividedDamage(blocker, blocker.getControllerId(), first, game, false)) { attacker.markDamage(power, blockerId, null, game, true, true); } } } for (Map.Entry entry : assigned.entrySet()) { Permanent blocker = game.getPermanent(entry.getKey()); - blocker.markDamage(entry.getValue(), attacker.getId(), null, game, true, true); + if (blocker != null) { + blocker.markDamage(entry.getValue(), attacker.getId(), null, game, true, true); + } } } else { for (UUID blockerId : blockerOrder) {