From 3de6f417dc193e6da407d630fa75eda0042d09a5 Mon Sep 17 00:00:00 2001 From: Zzooouhh Date: Tue, 26 Dec 2017 22:29:54 +0100 Subject: [PATCH] Combat.removeBlocker incorrectly ignored blockingGroups (Partial fix for #4172) --- Mage/src/main/java/mage/game/combat/Combat.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/Mage/src/main/java/mage/game/combat/Combat.java b/Mage/src/main/java/mage/game/combat/Combat.java index d26bc9ec608..159f950b76e 100644 --- a/Mage/src/main/java/mage/game/combat/Combat.java +++ b/Mage/src/main/java/mage/game/combat/Combat.java @@ -1421,6 +1421,19 @@ public class Combat implements Serializable, Copyable { } } } + boolean canRemove = false; + for (CombatGroup group : getBlockingGroups()) { + if (group.blockers.contains(blockerId)) { + group.blockers.remove(blockerId); + group.attackerOrder.clear(); + } + if (group.blockers.isEmpty()) { + canRemove = true; + } + } + if (canRemove) { + blockingGroups.remove(blockerId); + } Permanent creature = game.getPermanent(blockerId); if (creature != null) { creature.setBlocking(0);