From fcb6a0ee4ade41a1b5e08d95f36c9b640e626560 Mon Sep 17 00:00:00 2001 From: drmDev Date: Mon, 1 Aug 2016 06:46:15 -0400 Subject: [PATCH 1/2] Slayers Cleaver bug confirmed for issue #2136 --- .../requirement/BlockRequirementTest.java | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/Mage.Tests/src/test/java/org/mage/test/cards/requirement/BlockRequirementTest.java b/Mage.Tests/src/test/java/org/mage/test/cards/requirement/BlockRequirementTest.java index fa72fe938b0..35a0edb3c9f 100644 --- a/Mage.Tests/src/test/java/org/mage/test/cards/requirement/BlockRequirementTest.java +++ b/Mage.Tests/src/test/java/org/mage/test/cards/requirement/BlockRequirementTest.java @@ -219,4 +219,32 @@ public class BlockRequirementTest extends CardTestPlayerBase { // Player B was unable to block, so goes down to 10 life assertLife(playerB, 8); } + + /* + Reported bug: Slayer's Cleaver did not force Wretched Gryff (an eldrazi) to block + */ + @Test + public void testSlayersCleaver() { + // Equipped creature gets +3/+1 and must be blocked by an Eldrazi if able. + // Equip {4} + addCard(Zone.BATTLEFIELD, playerA, "Slayer's Cleaver"); + addCard(Zone.BATTLEFIELD, playerA, "Mountain", 4); + addCard(Zone.BATTLEFIELD, playerA, "Memnite"); // {1} 1/1 + + addCard(Zone.BATTLEFIELD, playerB, "Wretched Gryff"); // {7} Flying 3/4 - Eldrazi Hippogriff + addCard(Zone.BATTLEFIELD, playerB, "Hill Giant"); // {3}{R} 3/3 + + activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Equip", "Memnite"); // pumps to 4/2 + attack(1, playerA, "Memnite"); // must be blocked by Wretched Gryff + block(1, playerB, "Hill Giant", "Memnite"); // should not be allowed as only blocker + + setStopAt(1, PhaseStep.END_COMBAT); + execute(); + + assertPermanentCount(playerA, "Slayer's Cleaver", 1); + assertLife(playerB, 20); + assertGraveyardCount(playerA, "Memnite", 1); + assertGraveyardCount(playerB, "Wretched Gryff", 1); + assertPermanentCount(playerB, "Hill Giant", 1); + } } From 693c45294a12fb4661d2c6d935ed791a824d5741 Mon Sep 17 00:00:00 2001 From: drmDev Date: Tue, 2 Aug 2016 07:55:03 -0400 Subject: [PATCH 2/2] bug fix for Ghost-Lit Nourisher --- .../src/mage/sets/saviorsofkamigawa/GhostLitNourisher.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Mage.Sets/src/mage/sets/saviorsofkamigawa/GhostLitNourisher.java b/Mage.Sets/src/mage/sets/saviorsofkamigawa/GhostLitNourisher.java index 171bda6f76c..84350d9920c 100644 --- a/Mage.Sets/src/mage/sets/saviorsofkamigawa/GhostLitNourisher.java +++ b/Mage.Sets/src/mage/sets/saviorsofkamigawa/GhostLitNourisher.java @@ -33,7 +33,6 @@ import mage.abilities.Ability; import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.costs.common.TapSourceCost; import mage.abilities.costs.mana.ManaCostsImpl; -import mage.abilities.effects.common.continuous.BoostSourceEffect; import mage.abilities.effects.common.continuous.BoostTargetEffect; import mage.abilities.keyword.ChannelAbility; import mage.cards.CardImpl; @@ -58,8 +57,9 @@ public class GhostLitNourisher extends CardImpl { this.toughness = new MageInt(1); // {2}{G}, {tap}: Target creature gets +2/+2 until end of turn. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2, 2, Duration.EndOfTurn), new ManaCostsImpl("{2}{G}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(2, 2, Duration.EndOfTurn), new ManaCostsImpl("{2}{G}")); ability.addCost(new TapSourceCost()); + ability.addTarget(new TargetCreaturePermanent()); this.addAbility(ability); // Channel - {3}{G}, Discard Ghost-Lit Nourisher: Target creature gets +4/+4 until end of turn. Ability ability2 = new ChannelAbility("{3}{G}", new BoostTargetEffect(4, 4, Duration.EndOfTurn));