From a75e4f4fcb4c3e1d9b160fece2f048e94f8a2674 Mon Sep 17 00:00:00 2001 From: LevelX2 Date: Sat, 7 Jan 2017 23:53:47 +0100 Subject: [PATCH] Fixed that adding counters to players did not work correctly (e.g. Winding Constrictor). --- Mage.Sets/src/mage/cards/i/IchorRats.java | 13 ++++++------- Mage/src/main/java/mage/players/PlayerImpl.java | 2 +- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/Mage.Sets/src/mage/cards/i/IchorRats.java b/Mage.Sets/src/mage/cards/i/IchorRats.java index b0ba58b1db3..5b9233e7ee9 100644 --- a/Mage.Sets/src/mage/cards/i/IchorRats.java +++ b/Mage.Sets/src/mage/cards/i/IchorRats.java @@ -25,12 +25,9 @@ * authors and should not be interpreted as representing official policies, either expressed * or implied, of BetaSteward_at_googlemail.com. */ - package mage.cards.i; import java.util.UUID; - -import mage.constants.CardType; import mage.MageInt; import mage.abilities.Ability; import mage.abilities.common.EntersBattlefieldTriggeredAbility; @@ -38,6 +35,7 @@ import mage.abilities.effects.OneShotEffect; import mage.abilities.keyword.InfectAbility; import mage.cards.CardImpl; import mage.cards.CardSetInfo; +import mage.constants.CardType; import mage.constants.Outcome; import mage.counters.CounterType; import mage.game.Game; @@ -49,8 +47,8 @@ import mage.players.Player; */ public class IchorRats extends CardImpl { - public IchorRats (UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{B}{B}"); + public IchorRats(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{B}{B}"); this.subtype.add("Rat"); this.power = new MageInt(2); @@ -59,7 +57,7 @@ public class IchorRats extends CardImpl { this.addAbility(new EntersBattlefieldTriggeredAbility(new IchorRatsEffect(), false)); } - public IchorRats (final IchorRats card) { + public IchorRats(final IchorRats card) { super(card); } @@ -71,6 +69,7 @@ public class IchorRats extends CardImpl { } class IchorRatsEffect extends OneShotEffect { + public IchorRatsEffect() { super(Outcome.Damage); staticText = "each player gets a poison counter"; @@ -82,7 +81,7 @@ class IchorRatsEffect extends OneShotEffect { @Override public boolean apply(Game game, Ability source) { - for (UUID playerId : game.getPlayerList()) { + for (UUID playerId : game.getState().getPlayerList(source.getControllerId())) { Player player = game.getPlayer(playerId); if (player != null) { player.addCounters(CounterType.POISON.createInstance(), game); diff --git a/Mage/src/main/java/mage/players/PlayerImpl.java b/Mage/src/main/java/mage/players/PlayerImpl.java index ef8067c3edf..9efa5814256 100644 --- a/Mage/src/main/java/mage/players/PlayerImpl.java +++ b/Mage/src/main/java/mage/players/PlayerImpl.java @@ -1856,7 +1856,7 @@ public abstract class PlayerImpl implements Player, Serializable { int finalAmount = amount; for (int i = 0; i < amount; i++) { Counter eventCounter = counter.copy(); - eventCounter.remove(amount - 1); + eventCounter.remove(eventCounter.getCount() - 1); GameEvent event = GameEvent.getEvent(EventType.ADD_COUNTER, playerId, null, playerId, counter.getName(), 1); if (!game.replaceEvent(event)) { getCounters().addCounter(eventCounter);