From 1a2724c9b2bac3569d50a3f616b356ae26f69d05 Mon Sep 17 00:00:00 2001 From: Justin Herlehy Date: Thu, 9 Mar 2017 01:14:10 -0800 Subject: [PATCH] Revert: Fix planeswalker loyalty counters. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This change was incorrect. Gatherer Ruling: 10/1/2005: Planeswalkers will enter the battlefield with double the normal amount of loyalty counters. However, if you activate an ability whose cost has you put loyalty counters on a planeswalker, the number you put on isn’t doubled. This is because those counters are put on as a cost, not as an effect. --- .../cards/replacement/DoublingSeasonTest.java | 18 ------------------ .../abilities/costs/common/PayLoyaltyCost.java | 2 +- 2 files changed, 1 insertion(+), 19 deletions(-) diff --git a/Mage.Tests/src/test/java/org/mage/test/cards/replacement/DoublingSeasonTest.java b/Mage.Tests/src/test/java/org/mage/test/cards/replacement/DoublingSeasonTest.java index fa7a6663c8f..a58b0bb718f 100644 --- a/Mage.Tests/src/test/java/org/mage/test/cards/replacement/DoublingSeasonTest.java +++ b/Mage.Tests/src/test/java/org/mage/test/cards/replacement/DoublingSeasonTest.java @@ -192,22 +192,4 @@ public class DoublingSeasonTest extends CardTestPlayerBase { assertLife(playerA, 20); } - - @Test - public void testDoublePlaneswalkerLoyalty() { - addCard(Zone.BATTLEFIELD, playerA, "Tibalt, the Fiend-Blooded"); - - addCard(Zone.BATTLEFIELD, playerA, "Doubling Season"); - - - activateAbility(1, PhaseStep.PRECOMBAT_MAIN, playerA,"+1: Draw a card, then discard a card at random."); - - setStopAt(1, PhaseStep.END_TURN); - execute(); - - assertLife(playerA, 20); - assertLife(playerB, 20); - - assertCounterCount("Tibalt, the Fiend-Blooded", CounterType.LOYALTY, 4); - } } diff --git a/Mage/src/main/java/mage/abilities/costs/common/PayLoyaltyCost.java b/Mage/src/main/java/mage/abilities/costs/common/PayLoyaltyCost.java index 72f8d5ab389..cbc9693c896 100644 --- a/Mage/src/main/java/mage/abilities/costs/common/PayLoyaltyCost.java +++ b/Mage/src/main/java/mage/abilities/costs/common/PayLoyaltyCost.java @@ -68,7 +68,7 @@ public class PayLoyaltyCost extends CostImpl { Permanent planeswalker = game.getPermanent(sourceId); if (planeswalker != null && planeswalker.getCounters(game).getCount(CounterType.LOYALTY) + amount >= 0 && planeswalker.canLoyaltyBeUsed(game)) { if (amount > 0) { - planeswalker.addCounters(CounterType.LOYALTY.createInstance(amount), ability, game, null); + planeswalker.getCounters(game).addCounter(CounterType.LOYALTY.createInstance(amount)); } else if (amount < 0) { planeswalker.removeCounters(CounterType.LOYALTY.getName(), Math.abs(amount), game); }