mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-19 20:28:00 +00:00
convert Assembly-Worker, Magus of the Library, Master Transmuter and one of Molten Hydra's abilities to AFs.
This commit is contained in:
@@ -3,6 +3,7 @@ ManaCost:3
|
|||||||
Types:Artifact Creature Assembly-Worker
|
Types:Artifact Creature Assembly-Worker
|
||||||
Text:no text
|
Text:no text
|
||||||
PT:2/2
|
PT:2/2
|
||||||
|
A:AB$Pump | Cost$ T | ValidTgts$ Creature.Assembly-Worker | TgtPrompt$ Select target Assembly-Worker creature | NumAtt$ +1 |NumDef$+1 | SpellDescription$ Target Assembly-Worker creature gets +1/+1 until end of turn.
|
||||||
SVar:Rarity:Uncommon
|
SVar:Rarity:Uncommon
|
||||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/assembly_worker.jpg
|
SVar:Picture:http://www.wizards.com/global/images/magic/general/assembly_worker.jpg
|
||||||
SetInfo:TSP|Uncommon|http://magiccards.info/scans/en/ts/248.jpg
|
SetInfo:TSP|Uncommon|http://magiccards.info/scans/en/ts/248.jpg
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ Types:Creature Human Wizard
|
|||||||
Text:no text
|
Text:no text
|
||||||
PT:1/1
|
PT:1/1
|
||||||
K:tap: add 1
|
K:tap: add 1
|
||||||
|
A:AB$Draw | Cost$ T | NumCards$ 1 | ActivatingCardsInHand$ 7 | SpellDescription$ Draw a card. Activate this ability only if you have exactly seven cards in hand.
|
||||||
SVar:RemAIDeck:True
|
SVar:RemAIDeck:True
|
||||||
SVar:Rarity:Rare
|
SVar:Rarity:Rare
|
||||||
SVar:Picture:http://resources.wizards.com/magic/cards/plc/en-us/card134741.jpg
|
SVar:Picture:http://resources.wizards.com/magic/cards/plc/en-us/card134741.jpg
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ ManaCost:3 U
|
|||||||
Types:Artifact Creature Human Artificer
|
Types:Artifact Creature Human Artificer
|
||||||
Text:no text
|
Text:no text
|
||||||
PT:1/2
|
PT:1/2
|
||||||
|
A:AB$ChangeZone | Cost$ U T Return<1/Artifact> | Origin$ Hand | Destination$ Battlefield | ChangeType$ Artifact | ChangeNum$ 1 | SpellDescription$ You may put an artifact card from your hand onto the battlefield.
|
||||||
SVar:Rarity:Rare
|
SVar:Rarity:Rare
|
||||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/master_transmuter.jpg
|
SVar:Picture:http://www.wizards.com/global/images/magic/general/master_transmuter.jpg
|
||||||
SetInfo:CFX|Rare|http://magiccards.info/scans/en/cfx/31.jpg
|
SetInfo:CFX|Rare|http://magiccards.info/scans/en/cfx/31.jpg
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ ManaCost:1 R
|
|||||||
Types:Creature Hydra
|
Types:Creature Hydra
|
||||||
Text:no text
|
Text:no text
|
||||||
PT:1/1
|
PT:1/1
|
||||||
|
A:AB$PutCounter | Cost$ 1 R R | CounterType$ P1P1 | CounterNum$ 1 | SpellDescription$ Put a +1/+1 counter on CARDNAME.
|
||||||
SVar:Rarity:Rare
|
SVar:Rarity:Rare
|
||||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/molten_hydra.jpg
|
SVar:Picture:http://www.wizards.com/global/images/magic/general/molten_hydra.jpg
|
||||||
SetInfo:ULG|Rare|http://magiccards.info/scans/en/ul/85.jpg
|
SetInfo:ULG|Rare|http://magiccards.info/scans/en/ul/85.jpg
|
||||||
|
|||||||
@@ -8432,106 +8432,7 @@ public class CardFactory_Creatures {
|
|||||||
}//*************** END ************ END **************************
|
}//*************** END ************ END **************************
|
||||||
|
|
||||||
|
|
||||||
//*************** START *********** START **************************
|
|
||||||
else if(cardName.equals("Master Transmuter")) {
|
|
||||||
final Ability_Tap ability = new Ability_Tap(card, "U") {
|
|
||||||
|
|
||||||
private static final long serialVersionUID = -9076784333448226913L;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void resolve() {
|
|
||||||
PlayerZone hand = AllZone.getZone(Constant.Zone.Hand, card.getController());
|
|
||||||
PlayerZone play = AllZone.getZone(Constant.Zone.Battlefield, card.getController());
|
|
||||||
CardList artifacts = new CardList(hand.getCards());
|
|
||||||
artifacts = artifacts.getType("Artifact");
|
|
||||||
if(card.getController().equals(AllZone.HumanPlayer)) {
|
|
||||||
Object o = AllZone.Display.getChoiceOptional(
|
|
||||||
"Select artifact to put onto the battlefield: ", artifacts.toArray());
|
|
||||||
if(o != null) {
|
|
||||||
Card c = (Card) o;
|
|
||||||
hand.remove(c);
|
|
||||||
play.add(c);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
//CardList arts = new CardList(play.getCards());
|
|
||||||
//arts = arts.getType("Artifact");
|
|
||||||
|
|
||||||
Card c = getTargetCard();
|
|
||||||
AllZone.GameAction.moveTo(hand, c);
|
|
||||||
|
|
||||||
Card crd = CardFactoryUtil.AI_getMostExpensivePermanent(artifacts, card, false);
|
|
||||||
hand.remove(crd);
|
|
||||||
play.add(crd);
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean canPlayAI() {
|
|
||||||
PlayerZone hand = AllZone.getZone(Constant.Zone.Hand, AllZone.ComputerPlayer);
|
|
||||||
PlayerZone play = AllZone.getZone(Constant.Zone.Battlefield, AllZone.ComputerPlayer);
|
|
||||||
|
|
||||||
CardList handArts = new CardList(hand.getCards());
|
|
||||||
handArts = handArts.getType("Artifact");
|
|
||||||
|
|
||||||
CardList playArts = new CardList(play.getCards());
|
|
||||||
playArts = playArts.getType("Artifact");
|
|
||||||
|
|
||||||
if(handArts.size() > 0 && playArts.size() > 0) {
|
|
||||||
|
|
||||||
if(CardUtil.getConvertedManaCost(CardFactoryUtil.AI_getCheapestPermanent(playArts, card,
|
|
||||||
false).getManaCost()) < CardUtil.getConvertedManaCost(CardFactoryUtil.AI_getMostExpensivePermanent(
|
|
||||||
handArts, card, false).getManaCost())) {
|
|
||||||
setTargetCard(CardFactoryUtil.AI_getCheapestPermanent(playArts, card, false));
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
Input target = new Input() {
|
|
||||||
|
|
||||||
private static final long serialVersionUID = 4246650335595231655L;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void showMessage() {
|
|
||||||
AllZone.Display.showMessage("Select artifact to return to hand");
|
|
||||||
ButtonUtil.enableOnlyCancel();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void selectButtonCancel() {
|
|
||||||
stop();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void selectCard(Card c, PlayerZone zone) {
|
|
||||||
PlayerZone play = AllZone.getZone(Constant.Zone.Battlefield, card.getController());
|
|
||||||
if(c.isArtifact() && AllZone.GameAction.isCardInZone(c, play)) {
|
|
||||||
PlayerZone hand = AllZone.getZone(Constant.Zone.Hand, card.getController());
|
|
||||||
|
|
||||||
AllZone.GameAction.moveTo(hand, c);
|
|
||||||
AllZone.Stack.add(ability);
|
|
||||||
stop();
|
|
||||||
}
|
|
||||||
}//selectCard()
|
|
||||||
};//Input
|
|
||||||
|
|
||||||
card.addSpellAbility(ability);
|
|
||||||
|
|
||||||
StringBuilder sbDesc = new StringBuilder();
|
|
||||||
sbDesc.append("U, tap, Return an artifact you control to its owner's hand: ");
|
|
||||||
sbDesc.append("You may put an artifact card from your hand onto the battlefield.");
|
|
||||||
ability.setDescription(sbDesc.toString());
|
|
||||||
|
|
||||||
StringBuilder sbStack = new StringBuilder();
|
|
||||||
sbStack.append(card).append("You may put an artifact card from your hand onto the battlefield");
|
|
||||||
ability.setStackDescription(sbStack.toString());
|
|
||||||
|
|
||||||
ability.setAfterPayMana(target);
|
|
||||||
}//*************** END ************ END **************************
|
|
||||||
|
|
||||||
//*************** START *********** START **************************
|
//*************** START *********** START **************************
|
||||||
else if(cardName.equals("Cromat")) {
|
else if(cardName.equals("Cromat")) {
|
||||||
@@ -10009,21 +9910,6 @@ public class CardFactory_Creatures {
|
|||||||
|
|
||||||
//*************** START *********** START **************************
|
//*************** START *********** START **************************
|
||||||
else if(cardName.equals("Lich Lord of Unx")) {
|
else if(cardName.equals("Lich Lord of Unx")) {
|
||||||
/*
|
|
||||||
final SpellAbility ability = new Ability_Tap(card, "U B") {
|
|
||||||
private static final long serialVersionUID = 8909297504020264315L;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void resolve() {
|
|
||||||
CardFactoryUtil.makeToken("Zombie Wizard", "UB 1 1 Zombie Wizard", card, "UB", new String[] {
|
|
||||||
"Creature", "Zombie", "Wizard"}, 1, 1, new String[] {""});
|
|
||||||
}//resolve()
|
|
||||||
};
|
|
||||||
|
|
||||||
ability.setDescription("U B, Tap: Put a 1/1 blue and black Zombie Wizard creature token onto the battlefield.");
|
|
||||||
ability.setStackDescription(card.getName() + " - " + card.getController()
|
|
||||||
+ "puts a 1/1 blue and black Zombie Wizard creature token onto the battlefield.");
|
|
||||||
*/
|
|
||||||
final Ability ability2 = new Ability(card, "U U B B") {
|
final Ability ability2 = new Ability(card, "U U B B") {
|
||||||
@Override
|
@Override
|
||||||
public boolean canPlayAI() {
|
public boolean canPlayAI() {
|
||||||
@@ -10057,8 +9943,6 @@ public class CardFactory_Creatures {
|
|||||||
ability2.setDescription(sb.toString());
|
ability2.setDescription(sb.toString());
|
||||||
|
|
||||||
ability2.setBeforePayMana(CardFactoryUtil.input_targetPlayer(ability2));
|
ability2.setBeforePayMana(CardFactoryUtil.input_targetPlayer(ability2));
|
||||||
|
|
||||||
//card.addSpellAbility(ability);
|
|
||||||
card.addSpellAbility(ability2);
|
card.addSpellAbility(ability2);
|
||||||
}//*************** END ************ END **************************
|
}//*************** END ************ END **************************
|
||||||
|
|
||||||
@@ -10256,30 +10140,6 @@ public class CardFactory_Creatures {
|
|||||||
//*************** END ************ END **************************
|
//*************** END ************ END **************************
|
||||||
|
|
||||||
|
|
||||||
//*************** START *********** START **************************
|
|
||||||
else if(cardName.equals("Magus of the Library")) {
|
|
||||||
final Ability_Tap ability2 = new Ability_Tap(card) {
|
|
||||||
private static final long serialVersionUID = 6567685794684744457L;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean canPlay() {
|
|
||||||
PlayerZone hand = AllZone.getZone(Constant.Zone.Hand, card.getController());
|
|
||||||
return hand.getCards().length == 7 && super.canPlay();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void resolve() {
|
|
||||||
getActivatingPlayer().drawCard();
|
|
||||||
}
|
|
||||||
};//SpellAbility
|
|
||||||
card.addSpellAbility(ability2);
|
|
||||||
ability2.setDescription("tap: Draw a card. Play this ability only if you have exactly 7 cards in hand.");
|
|
||||||
ability2.setStackDescription("Magus of the Library - draw a card.");
|
|
||||||
ability2.setBeforePayMana(new Input_NoCost_TapAbility(ability2));
|
|
||||||
|
|
||||||
}//*************** END ************ END **************************
|
|
||||||
|
|
||||||
|
|
||||||
//*************** START *********** START **************************
|
//*************** START *********** START **************************
|
||||||
else if(cardName.equals("Stern Judge")) {
|
else if(cardName.equals("Stern Judge")) {
|
||||||
final Ability_Tap ability = new Ability_Tap(card) {
|
final Ability_Tap ability = new Ability_Tap(card) {
|
||||||
@@ -10582,19 +10442,6 @@ public class CardFactory_Creatures {
|
|||||||
//*************** START *********** START **************************
|
//*************** START *********** START **************************
|
||||||
else if(cardName.equals("Molten Hydra")) {
|
else if(cardName.equals("Molten Hydra")) {
|
||||||
|
|
||||||
final Ability ability1 = new Ability(card, "1 R R") {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void resolve() {
|
|
||||||
card.addCounter(Counters.P1P1,1);
|
|
||||||
}//resolve()
|
|
||||||
|
|
||||||
};//SpellAbility
|
|
||||||
|
|
||||||
ability1.setDescription("1 R R: put a +1/+1 counter on Molten Hydra. ");
|
|
||||||
ability1.setStackDescription("Molten Hydra gets a +1/+1 counter. ");
|
|
||||||
card.addSpellAbility(ability1);
|
|
||||||
|
|
||||||
final Ability_Tap ability2 = new Ability_Tap(card,"0") {
|
final Ability_Tap ability2 = new Ability_Tap(card,"0") {
|
||||||
private static final long serialVersionUID = 2626619319289064289L;
|
private static final long serialVersionUID = 2626619319289064289L;
|
||||||
|
|
||||||
@@ -10616,7 +10463,6 @@ public class CardFactory_Creatures {
|
|||||||
list.shuffle();
|
list.shuffle();
|
||||||
setTargetCard(list.get(0));
|
setTargetCard(list.get(0));
|
||||||
}
|
}
|
||||||
// card.subtractCounter(Counters.P1P1, total);
|
|
||||||
}//chooseTargetAI()
|
}//chooseTargetAI()
|
||||||
|
|
||||||
CardList getCreature() {
|
CardList getCreature() {
|
||||||
@@ -10690,77 +10536,6 @@ public class CardFactory_Creatures {
|
|||||||
ability2.setStackDescription("Molten Hydra deals damage to number of counters on it to target creature or player.");
|
ability2.setStackDescription("Molten Hydra deals damage to number of counters on it to target creature or player.");
|
||||||
}//*************** END ************ END **************************
|
}//*************** END ************ END **************************
|
||||||
|
|
||||||
/*
|
|
||||||
//*************** START *********** START **************************
|
|
||||||
else if(cardName.equals("Windreaver")) {
|
|
||||||
final SpellAbility a1 = new Ability(card, "U") {
|
|
||||||
@Override
|
|
||||||
public boolean canPlayAI() {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void resolve() {
|
|
||||||
PlayerZone hand = AllZone.getZone(Constant.Zone.Hand, card.getOwner());
|
|
||||||
|
|
||||||
AllZone.getZone(card).remove(card);
|
|
||||||
hand.add(card);
|
|
||||||
|
|
||||||
if(card.isToken()) AllZone.getZone(card).remove(card);
|
|
||||||
else AllZone.GameAction.moveTo(hand, card);
|
|
||||||
|
|
||||||
}
|
|
||||||
};//a1
|
|
||||||
|
|
||||||
//card.clearSpellAbility();
|
|
||||||
card.addSpellAbility(a1);
|
|
||||||
|
|
||||||
StringBuilder sb1 = new StringBuilder();
|
|
||||||
sb1.append(card.getController()).append(" returns Windreaver back to its owner's hand.");
|
|
||||||
a1.setStackDescription(sb1.toString());
|
|
||||||
|
|
||||||
a1.setDescription("U: return Windreaver to its owner's hand.");
|
|
||||||
|
|
||||||
final SpellAbility a2 = new Ability(card, "U") {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void resolve() {
|
|
||||||
|
|
||||||
|
|
||||||
final Command EOT = new Command() {
|
|
||||||
private static final long serialVersionUID = 6437163765161964445L;
|
|
||||||
|
|
||||||
public void execute() {
|
|
||||||
|
|
||||||
int power = card.getNetAttack();
|
|
||||||
int tough = card.getNetDefense();
|
|
||||||
card.addTempAttackBoost(tough - power);
|
|
||||||
card.addTempDefenseBoost(power - tough);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
if(AllZone.GameAction.isCardInPlay(card)) {
|
|
||||||
int power = card.getNetAttack();
|
|
||||||
int tough = card.getNetDefense();
|
|
||||||
card.addTempAttackBoost(tough - power);
|
|
||||||
card.addTempDefenseBoost(power - tough);
|
|
||||||
AllZone.EndOfTurn.addUntil(EOT);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
};//a2
|
|
||||||
|
|
||||||
card.addSpellAbility(a2);
|
|
||||||
|
|
||||||
StringBuilder sb2 = new StringBuilder();
|
|
||||||
sb2.append(card.getController()).append(" switches Windreaver's power and toughness until EOT.");
|
|
||||||
a2.setStackDescription(sb2.toString());
|
|
||||||
|
|
||||||
a2.setDescription("U: Switch Windreaver's power and toughness until end of turn. ");
|
|
||||||
}//*************** END ************ END **************************
|
|
||||||
*/
|
|
||||||
|
|
||||||
//*************** START *********** START **************************
|
//*************** START *********** START **************************
|
||||||
else if(cardName.equals("Academy Rector")) {
|
else if(cardName.equals("Academy Rector")) {
|
||||||
@@ -11682,136 +11457,6 @@ public class CardFactory_Creatures {
|
|||||||
}//*************** END ************ END **************************
|
}//*************** END ************ END **************************
|
||||||
|
|
||||||
|
|
||||||
//*************** START *********** START **************************
|
|
||||||
else if(cardName.equals("Assembly-Worker")) {
|
|
||||||
final SpellAbility[] a2 = new SpellAbility[1];
|
|
||||||
final Command eot2 = new Command() {
|
|
||||||
private static final long serialVersionUID = 6180724472470740160L;
|
|
||||||
|
|
||||||
public void execute() {
|
|
||||||
Card c = a2[0].getTargetCard();
|
|
||||||
if(AllZone.GameAction.isCardInPlay(c)) {
|
|
||||||
c.addTempAttackBoost(-1);
|
|
||||||
c.addTempDefenseBoost(-1);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
a2[0] = new Ability_Tap(card) {
|
|
||||||
private static final long serialVersionUID = 3561450525225198222L;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean canPlayAI() {
|
|
||||||
return getAttacker() != null;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void chooseTargetAI() {
|
|
||||||
setTargetCard(getAttacker());
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* getAttacker() will now filter out non-Assembly-Worker and non-Changelings
|
|
||||||
*/
|
|
||||||
|
|
||||||
public Card getAttacker() {
|
|
||||||
//target creature that is going to attack
|
|
||||||
Combat attackers = ComputerUtil.getAttackers();
|
|
||||||
CardList list = new CardList(attackers.getAttackers());
|
|
||||||
list = list.filter(new CardListFilter() {
|
|
||||||
public boolean addCard(Card c) {
|
|
||||||
return CardFactoryUtil.canTarget(card, c) &&
|
|
||||||
(c.getType().contains("Assembly-Worker") || c.getKeyword().contains("Changeling"));
|
|
||||||
}
|
|
||||||
});
|
|
||||||
// list = list.getType("Assembly-Worker"); // Should return only Assembly-Workers
|
|
||||||
list.remove(card);
|
|
||||||
list.shuffle();
|
|
||||||
|
|
||||||
if (list.size() != 0 &&
|
|
||||||
(AllZone.Phase.getPhase().equals(Constant.Phase.Main1)) &&
|
|
||||||
CardFactoryUtil.canTarget(card, list.get(0))) return list.get(0);
|
|
||||||
else return null;
|
|
||||||
}//getAttacker()
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void resolve() {
|
|
||||||
Card c = a2[0].getTargetCard();
|
|
||||||
if(AllZone.GameAction.isCardInPlay(c) && CardFactoryUtil.canTarget(card, c)) {
|
|
||||||
c.addTempAttackBoost(1);
|
|
||||||
c.addTempDefenseBoost(1);
|
|
||||||
AllZone.EndOfTurn.addUntil(eot2);
|
|
||||||
}
|
|
||||||
}//resolve()
|
|
||||||
};//SpellAbility
|
|
||||||
card.addSpellAbility(a2[0]);
|
|
||||||
a2[0].setDescription("tap: Target Assembly-Worker creature gets +1/+1 until end of turn.");
|
|
||||||
|
|
||||||
/*
|
|
||||||
@SuppressWarnings("unused") // target unused
|
|
||||||
inal Input target = new Input()
|
|
||||||
{
|
|
||||||
private static final long serialVersionUID = 8913477363141356082L;
|
|
||||||
|
|
||||||
public void showMessage()
|
|
||||||
{
|
|
||||||
ButtonUtil.enableOnlyCancel();
|
|
||||||
AllZone.Display.showMessage("Select Assembly-Worker to get +1/+1");
|
|
||||||
}
|
|
||||||
public void selectCard(Card c, PlayerZone zone)
|
|
||||||
{
|
|
||||||
if(!CardFactoryUtil.canTarget(card, c)){
|
|
||||||
AllZone.Display.showMessage("Cannot target this card (Shroud? Protection?).");
|
|
||||||
}
|
|
||||||
else if(c.isCreature() && c.getType().contains("Assembly-Worker"))
|
|
||||||
{
|
|
||||||
card.tap();
|
|
||||||
AllZone.Human_Play.updateObservers();
|
|
||||||
|
|
||||||
a2[0].setTargetCard(c);//since setTargetCard() changes stack description
|
|
||||||
a2[0].setStackDescription(c +" gets +1/+1 until EOT");
|
|
||||||
|
|
||||||
AllZone.InputControl.resetInput();
|
|
||||||
AllZone.Stack.add(a2[0]);
|
|
||||||
}
|
|
||||||
}//selectCard()
|
|
||||||
public void selectButtonCancel()
|
|
||||||
{
|
|
||||||
card.untap();
|
|
||||||
stop();
|
|
||||||
}
|
|
||||||
};//Input target
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
* This input method will allow the human to select both Assembly-Workers and Changelings
|
|
||||||
*/
|
|
||||||
Input runtime = new Input() {
|
|
||||||
private static final long serialVersionUID = -2520339470741575052L;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void showMessage() {
|
|
||||||
PlayerZone comp = AllZone.getZone(Constant.Zone.Battlefield, AllZone.ComputerPlayer);
|
|
||||||
PlayerZone hum = AllZone.getZone(Constant.Zone.Battlefield, AllZone.HumanPlayer);
|
|
||||||
CardList creatures = new CardList();
|
|
||||||
creatures.addAll(comp.getCards());
|
|
||||||
creatures.addAll(hum.getCards());
|
|
||||||
creatures = creatures.filter(new CardListFilter() {
|
|
||||||
public boolean addCard(Card c) {
|
|
||||||
return c.isCreature() && CardFactoryUtil.canTarget(card, c) &&
|
|
||||||
(c.getType().contains("Assembly-Worker") || c.getKeyword().contains("Changeling"));
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
stopSetNext(CardFactoryUtil.input_targetSpecific(a2[0], creatures, "Select target Assembly-Worker", true, false));
|
|
||||||
}
|
|
||||||
};//Input target
|
|
||||||
a2[0].setBeforePayMana(runtime);
|
|
||||||
|
|
||||||
// a2[0].setBeforePayMana(CardFactoryUtil.input_targetType(a2[0], "Assembly-Worker"));
|
|
||||||
}//*************** END ************ END **************************
|
|
||||||
|
|
||||||
|
|
||||||
//*************** START *********** START **************************
|
//*************** START *********** START **************************
|
||||||
else if(cardName.equals("Wood Elves")) {
|
else if(cardName.equals("Wood Elves")) {
|
||||||
final SpellAbility ability = new Ability(card, "0") {
|
final SpellAbility ability = new Ability(card, "0") {
|
||||||
|
|||||||
Reference in New Issue
Block a user