mirror of
https://github.com/correl/mage.git
synced 2024-12-24 03:00:14 +00:00
* Fixed not unique target setting.
This commit is contained in:
parent
6403fff12b
commit
8eae24051a
4 changed files with 15 additions and 9 deletions
|
@ -116,7 +116,7 @@ class OrzhovCharmReturnToHandEffect extends OneShotEffect {
|
|||
public boolean apply(Game game, Ability source) {
|
||||
Permanent target = game.getPermanent(getTargetPointer().getFirst(game, source));
|
||||
if (target != null) {
|
||||
LinkedList<UUID> attachments = new LinkedList<UUID>();
|
||||
LinkedList<UUID> attachments = new LinkedList<>();
|
||||
attachments.addAll(target.getAttachments());
|
||||
for (UUID attachmentId : attachments) {
|
||||
Permanent attachment = game.getPermanent(attachmentId);
|
||||
|
|
|
@ -50,9 +50,11 @@ public class MoggFanatic extends CardImpl {
|
|||
super(ownerId, 190, "Mogg Fanatic", Rarity.COMMON, new CardType[]{CardType.CREATURE}, "{R}");
|
||||
this.expansionSetCode = "TMP";
|
||||
this.subtype.add("Goblin");
|
||||
this.color.setRed(true);
|
||||
|
||||
this.power = new MageInt(1);
|
||||
this.toughness = new MageInt(1);
|
||||
|
||||
// Sacrifice Mogg Fanatic: Mogg Fanatic deals 1 damage to target creature or player.
|
||||
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new SacrificeSourceCost());
|
||||
ability.addTarget(new TargetCreatureOrPlayer());
|
||||
this.addAbility(ability);
|
||||
|
|
|
@ -123,6 +123,12 @@ public class BurrentonForgeTenderTest extends CardTestPlayerBase {
|
|||
addCard(Zone.BATTLEFIELD, playerA, "Soldier of the Pantheon");
|
||||
// Sacrifice Mogg Fanatic: Mogg Fanatic deals 1 damage to target creature or player.
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Mogg Fanatic");
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Swamp", 1);
|
||||
addCard(Zone.BATTLEFIELD, playerA, "Plains", 1);
|
||||
// Choose one - Return target creature you control and all Auras you control attached to it to their owner's hand;
|
||||
// or destroy target creature and you lose life equal to its toughness;
|
||||
// or return target creature card with converted mana cost 1 or less from your graveyard to the battlefield.
|
||||
addCard(Zone.HAND, playerA, "Orzhov Charm");
|
||||
|
||||
// Kicker {5} (You may pay an additional as you cast this spell.)
|
||||
// Put a token onto the battlefield that's a copy of target creature. If Rite of Replication was kicked, put five of those tokens onto the battlefield instead.
|
||||
|
@ -132,8 +138,9 @@ public class BurrentonForgeTenderTest extends CardTestPlayerBase {
|
|||
castSpell(2, PhaseStep.PRECOMBAT_MAIN, playerB, "Rite of Replication", "Mogg Fanatic");
|
||||
setChoice(playerB, "No"); // no kicker
|
||||
|
||||
activateAbility(2, PhaseStep.BEGIN_COMBAT, playerA, "Sacrifice {this}: {source} deals 1 damage to target creature or player.",playerB);
|
||||
|
||||
castSpell(2, PhaseStep.BEGIN_COMBAT, playerA, "Orzhov Charm", "Mogg Fanatic");
|
||||
setModeChoice(playerA, "1");
|
||||
|
||||
activateAbility(2, PhaseStep.END_COMBAT, playerA, "Sacrifice {this}: Prevent all damage a red source of your choice would deal this turn.");
|
||||
playerA.addChoice("Mogg Fanatic");
|
||||
|
||||
|
@ -141,11 +148,10 @@ public class BurrentonForgeTenderTest extends CardTestPlayerBase {
|
|||
|
||||
setStopAt(2, PhaseStep.END_TURN);
|
||||
execute();
|
||||
|
||||
assertLife(playerB, 19);
|
||||
|
||||
assertPermanentCount(playerB, "Mogg Fanatic", 0);
|
||||
assertGraveyardCount(playerA, "Mogg Fanatic", 1);
|
||||
assertGraveyardCount(playerA, "Orzhov Charm", 1);
|
||||
assertHandCount(playerA, "Mogg Fanatic", 1);
|
||||
assertGraveyardCount(playerB, "Rite of Replication", 1);
|
||||
|
||||
assertGraveyardCount(playerA, "Burrenton Forge-Tender", 1);
|
||||
|
|
|
@ -31,14 +31,12 @@ import mage.MageObject;
|
|||
import mage.MageObjectReference;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.effects.PreventionEffectImpl;
|
||||
import mage.cards.Card;
|
||||
import mage.constants.Duration;
|
||||
import mage.constants.Outcome;
|
||||
import mage.filter.FilterObject;
|
||||
import mage.game.Game;
|
||||
import mage.game.events.GameEvent;
|
||||
import mage.target.TargetSource;
|
||||
import mage.target.targetpointer.FixedTarget;
|
||||
|
||||
/**
|
||||
*
|
||||
|
|
Loading…
Reference in a new issue