diff --git a/forge-game/src/main/java/forge/game/ability/effects/CopyPermanentEffect.java b/forge-game/src/main/java/forge/game/ability/effects/CopyPermanentEffect.java index 951b31ebac7..4367fa38002 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/CopyPermanentEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/CopyPermanentEffect.java @@ -60,11 +60,10 @@ public class CopyPermanentEffect extends TokenEffectBase { final Game game = host.getGame(); if (sa.hasParam("Optional") && !activator.getController().confirmAction(sa, null, Localizer.getInstance().getMessage("lblCopyPermanentConfirm"))) { - return; + return; } - final int numCopies = sa.hasParam("NumCopies") ? AbilityUtils.calculateAmount(host, - sa.getParam("NumCopies"), sa) : 1; + final int numCopies = sa.hasParam("NumCopies") ? AbilityUtils.calculateAmount(host, sa.getParam("NumCopies"), sa) : 1; Player controller = null; if (sa.hasParam("Controller")) { diff --git a/forge-game/src/main/java/forge/game/ability/effects/TokenEffectBase.java b/forge-game/src/main/java/forge/game/ability/effects/TokenEffectBase.java index 05fd768625b..0dcbcc93c41 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/TokenEffectBase.java +++ b/forge-game/src/main/java/forge/game/ability/effects/TokenEffectBase.java @@ -39,7 +39,6 @@ import forge.game.zone.ZoneType; public abstract class TokenEffectBase extends SpellAbilityEffect { protected TokenCreateTable createTokenTable(Iterable players, String[] tokenScripts, final int finalAmount, final SpellAbility sa) { - TokenCreateTable tokenTable = new TokenCreateTable(); for (final Player owner : players) { for (String script : tokenScripts) { @@ -83,7 +82,6 @@ public abstract class TokenEffectBase extends SpellAbilityEffect { // support PlayerCollection for affected Set toRemove = Sets.newHashSet(); for (Player p : tokenTable.rowKeySet()) { - final Map repParams = AbilityKey.mapFromAffected(p); repParams.put(AbilityKey.Token, tokenTable); repParams.put(AbilityKey.EffectOnly, true); // currently only effects can create tokens? diff --git a/forge-gui/res/cardsfolder/c/champion_of_wits.txt b/forge-gui/res/cardsfolder/c/champion_of_wits.txt index 148233992b6..0140b8490a7 100644 --- a/forge-gui/res/cardsfolder/c/champion_of_wits.txt +++ b/forge-gui/res/cardsfolder/c/champion_of_wits.txt @@ -2,9 +2,8 @@ Name:Champion of Wits ManaCost:2 U Types:Creature Naga Wizard PT:2/1 -T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDraw | OptionalDecider$ You | TriggerDescription$ When CARDNAME enters the battlefield, you may draw cards equal to its power. If you do, discard two cards. -SVar:TrigDraw:DB$ Draw | Defined$ You | NumCards$ X | SubAbility$ DBDiscard -SVar:DBDiscard:DB$ Discard | Defined$ You | Mode$ TgtChoose | NumCards$ 2 +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDraw | TriggerDescription$ When CARDNAME enters the battlefield, you may draw cards equal to its power. If you do, discard two cards. +SVar:TrigDraw:AB$ Discard | Defined$ You | Mode$ TgtChoose | NumCards$ 2 | Cost$ Draw K:Eternalize:5 U U SVar:X:Count$CardPower SVar:Picture:http://www.wizards.com/global/images/magic/general/champion_of_wits.jpg diff --git a/forge-gui/res/cardsfolder/t/taborax_hopes_demise.txt b/forge-gui/res/cardsfolder/t/taborax_hopes_demise.txt index ffd3299c027..8f898cc250d 100755 --- a/forge-gui/res/cardsfolder/t/taborax_hopes_demise.txt +++ b/forge-gui/res/cardsfolder/t/taborax_hopes_demise.txt @@ -6,7 +6,7 @@ K:Flying S:Mode$ Continuous | Affected$ Card.Self+counters_GE5_P1P1 | AddKeyword$ Lifelink | Description$ CARDNAME has lifelink as long as it has five or more +1/+1 counters on it. T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Creature.nonToken+Other+YouCtrl | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Whenever another nontoken creature you control dies, put a +1/+1 counter on CARDNAME. If that creature was a Cleric, you may draw a card. If you do, you lose 1 life. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBLoseLife -SVar:DBLoseLife:DB$ LoseLife | Defined$ You | LifeAmount$ 1 | UnlessCost$ Draw<1/Card> | UnlessSwitched$ True | UnlessPayer$ You | ConditionDefined$ TriggeredCardLKICopy | ConditionPresent$ Creature.Cleric | ConditionCompare$ EQ1 +SVar:DBLoseLife:DB$ LoseLife | Defined$ You | LifeAmount$ 1 | UnlessCost$ Draw<1/You> | UnlessSwitched$ True | UnlessPayer$ You | ConditionDefined$ TriggeredCardLKICopy | ConditionPresent$ Creature.Cleric | ConditionCompare$ EQ1 DeckHas:Ability$Counters DeckHints:Type$Cleric Oracle:Flying\nTaborax, Hope's Demise has lifelink as long as it has five or more +1/+1 counters on it.\nWhenever another nontoken creature you control dies, put a +1/+1 counter on Taborax. If that creature was a Cleric, you may draw a card. If you do, you lose 1 life. diff --git a/forge-gui/src/main/java/forge/player/HumanCostDecision.java b/forge-gui/src/main/java/forge/player/HumanCostDecision.java index 1e9297da736..d89ba7f0abc 100644 --- a/forge-gui/src/main/java/forge/player/HumanCostDecision.java +++ b/forge-gui/src/main/java/forge/player/HumanCostDecision.java @@ -382,11 +382,11 @@ public class HumanCostDecision extends CostDecisionMakerBase { origin.add(cost.from); final CardCollection exiled = new CardCollection(); - final List chosen = controller.chooseCardsForZoneChange(ZoneType.Exile, origin, sa, typeList, nNeeded, + final List chosen = controller.chooseCardsForZoneChange(ZoneType.Exile, origin, sa, typeList, 0, nNeeded, null, cost.toString(), null); exiled.addAll(chosen); - if (exiled.isEmpty()) { + if (exiled.size() < nNeeded) { return null; } return PaymentDecision.card(exiled);