From 1bb2b77aebfd3ccce007d64736286ca95d18472c Mon Sep 17 00:00:00 2001 From: "marcins78@gmail.com" Date: Wed, 14 Sep 2011 12:11:32 +0000 Subject: [PATCH] A few fixes and tweaks in what message is sent to user. --- .../lotro/cards/actions/TransferPermanentAction.java | 2 +- .../logic/effects/DiscardCardFromPlayEffect.java | 5 +++-- .../logic/effects/DiscardCardsFromPlayEffect.java | 4 ++-- .../lotro/logic/effects/WoundCharacterEffect.java | 2 +- .../turn/regroup/DiscardAllMinionsGameProcess.java | 12 +++--------- 5 files changed, 10 insertions(+), 15 deletions(-) diff --git a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/actions/TransferPermanentAction.java b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/actions/TransferPermanentAction.java index 2149f2828..0e5ff2e6a 100644 --- a/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/actions/TransferPermanentAction.java +++ b/gemp-lotr/gemp-lotr-cards/src/main/java/com/gempukku/lotro/cards/actions/TransferPermanentAction.java @@ -12,7 +12,7 @@ import java.util.List; public class TransferPermanentAction extends DefaultCostToEffectAction { public TransferPermanentAction(final PhysicalCard card, LotroGame game, Filter filter) { - super(null, null, "Transfer " + card.getBlueprint().getName()); + super(card, null, "Transfer " + card.getBlueprint().getName()); addCost(new ChooseActiveCardsEffect(card.getOwner(), "Choose target to attach to", 1, 1, filter) { @Override diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/DiscardCardFromPlayEffect.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/DiscardCardFromPlayEffect.java index ec57334aa..b3fce18d2 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/DiscardCardFromPlayEffect.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/DiscardCardFromPlayEffect.java @@ -42,11 +42,12 @@ public class DiscardCardFromPlayEffect extends AbstractEffect { public EffectResult playEffect(LotroGame game) { _discardedCards = new LinkedList(); - if (game.getModifiersQuerying().canBeDiscardedFromPlay(game.getGameState(), _card, _source)) { + if (_source == null || game.getModifiersQuerying().canBeDiscardedFromPlay(game.getGameState(), _card, _source)) { _discardedCards.add(_card); GameState gameState = game.getGameState(); - gameState.sendMessage(_source.getOwner() + " discards " + _card.getBlueprint().getName() + " from play using " + _source.getBlueprint().getName()); + if (_source != null) + gameState.sendMessage(_source.getOwner() + " discards " + _card.getBlueprint().getName() + " from play using " + _source.getBlueprint().getName()); gameState.stopAffecting(_card); gameState.removeCardFromZone(_card); gameState.addCardToZone(_card, Zone.DISCARD); diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/DiscardCardsFromPlayEffect.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/DiscardCardsFromPlayEffect.java index 3c7f94595..b57ed42f5 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/DiscardCardsFromPlayEffect.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/DiscardCardsFromPlayEffect.java @@ -43,7 +43,7 @@ public class DiscardCardsFromPlayEffect extends AbstractEffect { List cardsToDiscard = Filters.filterActive(game.getGameState(), game.getModifiersQuerying(), _filter); _discardedCards = new LinkedList(); for (PhysicalCard card : cardsToDiscard) { - if (game.getModifiersQuerying().canBeDiscardedFromPlay(game.getGameState(), card, _source)) { + if (_source == null || game.getModifiersQuerying().canBeDiscardedFromPlay(game.getGameState(), card, _source)) { _discardedCards.add(card); GameState gameState = game.getGameState(); @@ -68,7 +68,7 @@ public class DiscardCardsFromPlayEffect extends AbstractEffect { } } - if (_discardedCards.size() > 0) + if (_source != null && _discardedCards.size() > 0) game.getGameState().sendMessage(_source.getOwner() + " discards multiple cards from play using " + _source.getBlueprint().getName()); return new DiscardCardsFromPlayResult(_discardedCards); } diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/WoundCharacterEffect.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/WoundCharacterEffect.java index 6f7b51b2f..45fffc789 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/WoundCharacterEffect.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/effects/WoundCharacterEffect.java @@ -28,7 +28,7 @@ public class WoundCharacterEffect extends AbstractEffect { @Override public String getText() { - return "Wound target"; + return "Wound " + _woundTarget.getBlueprint().getName(); } @Override diff --git a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/processes/turn/regroup/DiscardAllMinionsGameProcess.java b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/processes/turn/regroup/DiscardAllMinionsGameProcess.java index 63ef7f036..80ee60e0c 100644 --- a/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/processes/turn/regroup/DiscardAllMinionsGameProcess.java +++ b/gemp-lotr/gemp-lotr-logic/src/main/java/com/gempukku/lotro/logic/timing/processes/turn/regroup/DiscardAllMinionsGameProcess.java @@ -2,17 +2,14 @@ package com.gempukku.lotro.logic.timing.processes.turn.regroup; import com.gempukku.lotro.common.CardType; import com.gempukku.lotro.common.Phase; -import com.gempukku.lotro.common.Zone; import com.gempukku.lotro.filters.Filters; -import com.gempukku.lotro.game.PhysicalCard; import com.gempukku.lotro.game.state.GameState; import com.gempukku.lotro.game.state.LotroGame; +import com.gempukku.lotro.logic.effects.DiscardCardsFromPlayEffect; import com.gempukku.lotro.logic.timing.processes.GameProcess; import com.gempukku.lotro.logic.timing.processes.turn.EndOfTurnGameProcess; import com.gempukku.lotro.logic.timing.processes.turn.general.EndOfPhaseGameProcess; -import java.util.List; - public class DiscardAllMinionsGameProcess implements GameProcess { private LotroGame _game; @@ -23,11 +20,8 @@ public class DiscardAllMinionsGameProcess implements GameProcess { @Override public void process() { GameState gameState = _game.getGameState(); - List minions = Filters.filterActive(gameState, _game.getModifiersQuerying(), Filters.type(CardType.MINION)); - for (PhysicalCard minion : minions) { - gameState.removeCardFromZone(minion); - gameState.addCardToZone(minion, Zone.DISCARD); - } + DiscardCardsFromPlayEffect cards = new DiscardCardsFromPlayEffect(null, Filters.type(CardType.MINION)); + cards.playEffect(_game); } @Override