diff --git a/forge-game/src/main/java/forge/game/ability/effects/CountersPutEffect.java b/forge-game/src/main/java/forge/game/ability/effects/CountersPutEffect.java index 9b1a690337e..dc0ac95e6c4 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/CountersPutEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/CountersPutEffect.java @@ -86,6 +86,7 @@ public class CountersPutEffect extends SpellAbilityEffect { final boolean etbcounter = sa.hasParam("ETB"); final boolean remember = sa.hasParam("RememberCounters"); + final boolean rememberCards = sa.hasParam("RememberCards"); int counterAmount = AbilityUtils.calculateAmount(sa.getHostCard(), sa.getParam("CounterNum"), sa); final int max = sa.hasParam("MaxFromEffect") ? Integer.parseInt(sa.getParam("MaxFromEffect")) : -1; @@ -124,6 +125,9 @@ public class CountersPutEffect extends SpellAbilityEffect { final int value = tgtCard.getTotalCountersToAdd(); tgtCard.addCountersAddedBy(card, counterType, value); } + if (rememberCards) { + card.addRemembered(tgtCard); + } if (sa.hasParam("Evolve")) { final HashMap runParams = new HashMap(); runParams.put("Card", tgtCard); diff --git a/forge-gui/res/cardsfolder/j/jhoira_of_the_ghitu.txt b/forge-gui/res/cardsfolder/j/jhoira_of_the_ghitu.txt index c6ea2f2c0f0..9765f504d2b 100644 --- a/forge-gui/res/cardsfolder/j/jhoira_of_the_ghitu.txt +++ b/forge-gui/res/cardsfolder/j/jhoira_of_the_ghitu.txt @@ -2,7 +2,7 @@ Name:Jhoira of the Ghitu ManaCost:1 U R Types:Legendary Creature Human Wizard PT:2/2 -A:AB$ PutCounter | Cost$ 2 ExileFromHand<1/Card.nonLand/nonland card> | CostDesc$ {2}, Exile a nonland card from your hand: | RememberCostCards$ True | Defined$ Remembered | CounterType$ TIME | CounterNum$ 4 | SubAbility$ GiveSuspend | TgtZone$ Exile | StackDescription$ Put four time counters on the exiled card. | SpellDescription$ Put four time counters on the exiled card. If it doesn't have suspend, it gains suspend. (At the beginning of your upkeep, remove a time counter from that card. When the last is removed, cast it without paying its mana cost. If it's a creature, it has haste.) +A:AB$ PutCounter | Cost$ 2 ExileFromHand<1/Card.nonLand/nonland card> | CostDesc$ {2}, Exile a nonland card from your hand: | RememberCards$ True | Defined$ ExiledCards | CounterType$ TIME | CounterNum$ 4 | SubAbility$ GiveSuspend | TgtZone$ Exile | StackDescription$ Put four time counters on the exiled card. | SpellDescription$ Put four time counters on the exiled card. If it doesn't have suspend, it gains suspend. (At the beginning of your upkeep, remove a time counter from that card. When the last is removed, cast it without paying its mana cost. If it's a creature, it has haste.) SVar:GiveSuspend:DB$ PumpAll | ValidCards$ Card.IsRemembered+withoutSuspend | KW$ Suspend | PumpZone$ Exile | Permanent$ True | SubAbility$ DBCleanup | StackDescription$ If it doesn't have suspend, it gains suspend. SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:RemAIDeck:True diff --git a/forge-gui/src/main/java/forge/player/HumanPlaySpellAbility.java b/forge-gui/src/main/java/forge/player/HumanPlaySpellAbility.java index efd9c4e56f0..4075da15424 100644 --- a/forge-gui/src/main/java/forge/player/HumanPlaySpellAbility.java +++ b/forge-gui/src/main/java/forge/player/HumanPlaySpellAbility.java @@ -92,6 +92,8 @@ public class HumanPlaySpellAbility { ability.setHostCard(game.getAction().moveToStack(c)); } + ability.resetPaidHash(); + // freeze Stack. No abilities should go onto the stack while I'm filling requirements. game.getStack().freezeStack();