mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-19 12:18:00 +00:00
- Convert Memory Erosion, Mindwrack Liege, Xiahou Dun, the One-Eyed, Loyal Retainers, Order of Whiteclay to AFs
- moveTo Tweaks
This commit is contained in:
@@ -3,6 +3,7 @@ ManaCost:2 W
|
|||||||
Types:Creature Human Advisor
|
Types:Creature Human Advisor
|
||||||
Text:no text
|
Text:no text
|
||||||
PT:1/1
|
PT:1/1
|
||||||
|
A:AB$ChangeZone | Cost$ Sac<1/CARDNAME> | Origin$ Graveyard | Destination$ Battlefield | ValidTgts$ Creature.Legendary+YouCtrl | TgtPrompt$ Select a target legendary creature card from your graveyard | ChangeNum$ 1 | PlayerTurn$ True | ActivatingPhases$ Upkeep->BeginCombat | SpellDescription$ Return target legendary creature card from your graveyard to the battlefield. Activate this ability only during your turn, before attackers are declared.
|
||||||
SVar:Rarity:Uncommon
|
SVar:Rarity:Uncommon
|
||||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/loyal_retainers.jpg
|
SVar:Picture:http://www.wizards.com/global/images/magic/general/loyal_retainers.jpg
|
||||||
SetInfo:PTK|Uncommon|http://magiccards.info/scans/en/p3k/12.jpg
|
SetInfo:PTK|Uncommon|http://magiccards.info/scans/en/p3k/12.jpg
|
||||||
|
|||||||
@@ -1,7 +1,9 @@
|
|||||||
Name:Memory Erosion
|
Name:Memory Erosion
|
||||||
ManaCost:1 U U
|
ManaCost:1 U U
|
||||||
Types:Enchantment
|
Types:Enchantment
|
||||||
Text:Whenever an opponent casts a spell, that player puts the top two cards of his or her library into his or her graveyard.
|
Text:no text
|
||||||
|
T:Mode$ SpellCast | ValidActivatingPlayer$ Opponent | TriggerZones$ Battlefield | Execute$ TrigMill | TriggerDescription$ Whenever an opponent casts a spell, that player puts the top two cards of his or her library into his or her graveyard.
|
||||||
|
SVar:TrigMill:AB$Mill | Cost$ 0 | Defined$ Opponent | NumCards$ 2
|
||||||
SVar:Rarity:Rare
|
SVar:Rarity:Rare
|
||||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/memory_erosion.jpg
|
SVar:Picture:http://www.wizards.com/global/images/magic/general/memory_erosion.jpg
|
||||||
SetInfo:ALA|Rare|http://magiccards.info/scans/en/ala/50.jpg
|
SetInfo:ALA|Rare|http://magiccards.info/scans/en/ala/50.jpg
|
||||||
|
|||||||
@@ -1,10 +1,11 @@
|
|||||||
Name:Mindwrack Liege
|
Name:Mindwrack Liege
|
||||||
ManaCost:3 UR UR UR
|
ManaCost:3 UR UR UR
|
||||||
Types:Creature Horror
|
Types:Creature Horror
|
||||||
Text:UR UR UR UR: You may put a blue or red creature card from your hand onto the battlefield.
|
Text:no text
|
||||||
PT:4/4
|
PT:4/4
|
||||||
K:stPumpAll:Creature.Blue+Other+YouCtrl:1/1:No Condition:Other blue creatures you control get +1/+1.
|
K:stPumpAll:Creature.Blue+Other+YouCtrl:1/1:No Condition:Other blue creatures you control get +1/+1.
|
||||||
K:stPumpAll:Creature.Red+Other+YouCtrl:1/1:No Condition:Other red creatures you control get +1/+1.
|
K:stPumpAll:Creature.Red+Other+YouCtrl:1/1:No Condition:Other red creatures you control get +1/+1.
|
||||||
|
A:AB$ChangeZone | Cost$ UR UR UR UR | Origin$ Hand | Destination$ Battlefield | ChangeType$ Creature.Blue,Creature.Red | ChangeNum$ 1 | SpellDescription$ You may put a blue or red creature card from your hand onto the battlefield.
|
||||||
SVar:PlayMain1:TRUE
|
SVar:PlayMain1:TRUE
|
||||||
SVar:Rarity:Rare
|
SVar:Rarity:Rare
|
||||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/mindwrack_liege.jpg
|
SVar:Picture:http://www.wizards.com/global/images/magic/general/mindwrack_liege.jpg
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ ManaCost:1 W W
|
|||||||
Types:Creature Kithkin Cleric
|
Types:Creature Kithkin Cleric
|
||||||
Text:no text
|
Text:no text
|
||||||
PT:1/4
|
PT:1/4
|
||||||
|
A:AB$ChangeZone | Cost$ 1 W W Untap | Origin$ Graveyard | Destination$ Battlefield | ValidTgts$ Creature.cmcLE3+YouCtrl | TgtPrompt$ Select a creature card with converted mana cost 3 or less from your graveyard | ChangeNum$ 1 | SpellDescription$ Return target creature card with converted mana cost 3 or less from your graveyard to the battlefield.
|
||||||
SVar:Rarity:Rare
|
SVar:Rarity:Rare
|
||||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/order_of_whiteclay.jpg
|
SVar:Picture:http://www.wizards.com/global/images/magic/general/order_of_whiteclay.jpg
|
||||||
SetInfo:SHM|Rare|http://magiccards.info/scans/en/shm/16.jpg
|
SetInfo:SHM|Rare|http://magiccards.info/scans/en/shm/16.jpg
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ Types:Legendary Creature Human Soldier
|
|||||||
Text:no text
|
Text:no text
|
||||||
PT:3/2
|
PT:3/2
|
||||||
K:Horsemanship
|
K:Horsemanship
|
||||||
|
A:AB$ChangeZone | Cost$ Sac<1/CARDNAME> | Origin$ Graveyard | Destination$ Hand | ValidTgts$ Card.Black+YouCtrl | TgtPrompt$ Select a target black card from your graveyard | ChangeNum$ 1 | PlayerTurn$ True | ActivatingPhases$ Upkeep->BeginCombat | SpellDescription$ Return target black card from your graveyard to your hand. Activate this ability only during your turn, before attackers are declared.
|
||||||
SVar:Rarity:Rare
|
SVar:Rarity:Rare
|
||||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/xiahou_dun_the_one_eyed.jpg
|
SVar:Picture:http://www.wizards.com/global/images/magic/general/xiahou_dun_the_one_eyed.jpg
|
||||||
SetInfo:PTK|Rare|http://magiccards.info/scans/en/p3k/92.jpg
|
SetInfo:PTK|Rare|http://magiccards.info/scans/en/p3k/92.jpg
|
||||||
|
|||||||
@@ -427,71 +427,6 @@ public class CardFactory_Creatures {
|
|||||||
}//*************** END ************ END **************************
|
}//*************** END ************ END **************************
|
||||||
|
|
||||||
|
|
||||||
//*************** START *********** START **************************
|
|
||||||
else if(cardName.equals("Order of Whiteclay")) {
|
|
||||||
final SpellAbility a1 = new Ability(card, "1 W W") {
|
|
||||||
@Override
|
|
||||||
public void resolve() {
|
|
||||||
PlayerZone grave = AllZone.getZone(Constant.Zone.Graveyard, card.getController());
|
|
||||||
PlayerZone play = AllZone.getZone(Constant.Zone.Battlefield, card.getController());
|
|
||||||
CardList creats = new CardList(grave.getCards());
|
|
||||||
creats = creats.filter(new CardListFilter() {
|
|
||||||
public boolean addCard(Card c) {
|
|
||||||
return CardUtil.getConvertedManaCost(c.getManaCost()) <= 3;
|
|
||||||
}
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
if(card.getController().equals(AllZone.HumanPlayer)) {
|
|
||||||
Object o = GuiUtils.getChoiceOptional("Choose a creature", creats.toArray());
|
|
||||||
if(o != null) {
|
|
||||||
Card c = (Card) o;
|
|
||||||
grave.remove(c);
|
|
||||||
play.add(c);
|
|
||||||
card.untap();
|
|
||||||
}
|
|
||||||
} else //Computer
|
|
||||||
{
|
|
||||||
Card c = creats.get(0);
|
|
||||||
grave.remove(c);
|
|
||||||
play.add(c);
|
|
||||||
card.untap();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean canPlay() {
|
|
||||||
PlayerZone grave = AllZone.getZone(Constant.Zone.Graveyard, card.getController());
|
|
||||||
CardList creats = new CardList(grave.getCards());
|
|
||||||
creats = creats.filter(new CardListFilter() {
|
|
||||||
|
|
||||||
public boolean addCard(Card c) {
|
|
||||||
return CardUtil.getConvertedManaCost(c.getManaCost()) <= 3;
|
|
||||||
}
|
|
||||||
|
|
||||||
});
|
|
||||||
if(card.isTapped() && !card.hasSickness() && creats.size() > 0 && super.canPlay()) return true;
|
|
||||||
else return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean canPlayAI() {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
};//SpellAbility
|
|
||||||
a1.makeUntapAbility();
|
|
||||||
card.addSpellAbility(a1);
|
|
||||||
a1.setDescription("1 W W, Untap: Return target creature card with converted mana cost 3 or less from your graveyard to the battlefield.");
|
|
||||||
|
|
||||||
StringBuilder sb = new StringBuilder();
|
|
||||||
sb.append(card.getName()).append(" - return target creature card with converted mana cost 3 or less from your graveyard to the battlefield.");
|
|
||||||
a1.setStackDescription(sb.toString());
|
|
||||||
|
|
||||||
a1.setBeforePayMana(new Input_PayManaCost(a1));
|
|
||||||
}//*************** END ************ END **************************
|
|
||||||
|
|
||||||
|
|
||||||
//*************** START *********** START **************************
|
//*************** START *********** START **************************
|
||||||
else if(cardName.equals("Mudbutton Torchrunner")) {
|
else if(cardName.equals("Mudbutton Torchrunner")) {
|
||||||
final SpellAbility ability = new Ability(card, "0") {
|
final SpellAbility ability = new Ability(card, "0") {
|
||||||
@@ -3413,62 +3348,6 @@ public class CardFactory_Creatures {
|
|||||||
}//*************** END ************ END **************************
|
}//*************** END ************ END **************************
|
||||||
|
|
||||||
|
|
||||||
//*************** START *********** START **************************
|
|
||||||
else if(cardName.equals("Mindwrack Liege")) {
|
|
||||||
final SpellAbility ability = new Ability(card, "UR UR UR UR") {
|
|
||||||
private static final long serialVersionUID = 3978560192382921056L;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean canPlayAI() {
|
|
||||||
return getCreature().size() != 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void chooseTargetAI() {
|
|
||||||
card.tap();
|
|
||||||
Card target = CardFactoryUtil.AI_getBestCreature(getCreature());
|
|
||||||
setTargetCard(target);
|
|
||||||
}
|
|
||||||
|
|
||||||
CardList getCreature() {
|
|
||||||
CardList list = new CardList(AllZone.Computer_Hand.getCards());
|
|
||||||
list = list.getType("Creature");
|
|
||||||
CardList list2 = list.getColor("Blue");
|
|
||||||
list2.add(list.getColor("Red"));
|
|
||||||
return list2;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void resolve() {
|
|
||||||
Card c = getTargetCard();
|
|
||||||
PlayerZone hand = AllZone.getZone(Constant.Zone.Hand, card.getController());
|
|
||||||
PlayerZone play = AllZone.getZone(Constant.Zone.Battlefield, card.getController());
|
|
||||||
|
|
||||||
if(AllZone.GameAction.isCardInZone(c, hand)) {
|
|
||||||
hand.remove(c);
|
|
||||||
play.add(c);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
ability.setBeforePayMana(new Input() {
|
|
||||||
private static final long serialVersionUID = -1038409328463518290L;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void showMessage() {
|
|
||||||
Player controller = card.getController();
|
|
||||||
CardList creats = new CardList(AllZone.getZone(Constant.Zone.Hand, controller).getCards());
|
|
||||||
creats = creats.getType("Creature");
|
|
||||||
CardList creats2 = creats.getColor("U");
|
|
||||||
creats2.add(creats.getColor("R"));
|
|
||||||
stopSetNext(CardFactoryUtil.input_targetSpecific(ability, creats2, "Select a creature", false,
|
|
||||||
false));
|
|
||||||
}
|
|
||||||
});
|
|
||||||
card.addSpellAbility(ability);
|
|
||||||
}//*************** END ************ END **************************
|
|
||||||
|
|
||||||
|
|
||||||
//*************** START *********** START **************************
|
//*************** START *********** START **************************
|
||||||
else if (cardName.equals("Disciple of Kangee")) {
|
else if (cardName.equals("Disciple of Kangee")) {
|
||||||
Ability_Cost abCost = new Ability_Cost("U T", cardName, true);
|
Ability_Cost abCost = new Ability_Cost("U T", cardName, true);
|
||||||
@@ -7548,218 +7427,7 @@ public class CardFactory_Creatures {
|
|||||||
};//Command
|
};//Command
|
||||||
card.addComesIntoPlayCommand(intoPlay);
|
card.addComesIntoPlayCommand(intoPlay);
|
||||||
}//*************** END ************ END **************************
|
}//*************** END ************ END **************************
|
||||||
|
|
||||||
//*************** START *********** START **************************
|
|
||||||
else if(cardName.equals("Loyal Retainers")) {
|
|
||||||
final Ability ability = new Ability(card, "0") {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void resolve() {
|
|
||||||
if(AllZone.GameAction.isCardInPlay(card)) {
|
|
||||||
AllZone.GameAction.sacrifice(card);
|
|
||||||
|
|
||||||
PlayerZone play = AllZone.getZone(Constant.Zone.Battlefield, card.getController());
|
|
||||||
PlayerZone grave = AllZone.getZone(Constant.Zone.Graveyard, card.getController());
|
|
||||||
CardList list = new CardList(grave.getCards());
|
|
||||||
list = list.filter(new CardListFilter() {
|
|
||||||
public boolean addCard(Card c) {
|
|
||||||
return c.isCreature() && c.getType().contains("Legendary");
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
if(list.size() > 0) {
|
|
||||||
if(card.getController().equals(AllZone.HumanPlayer)) {
|
|
||||||
Object o = GuiUtils.getChoiceOptional("Select Legendary creature",
|
|
||||||
list.toArray());
|
|
||||||
if(o != null) {
|
|
||||||
Card c = (Card) o;
|
|
||||||
grave.remove(c);
|
|
||||||
play.add(c);
|
|
||||||
}
|
|
||||||
|
|
||||||
} else //computer
|
|
||||||
{
|
|
||||||
Card c = CardFactoryUtil.AI_getBestCreature(list);
|
|
||||||
grave.remove(c);
|
|
||||||
play.add(c);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean canPlay() {
|
|
||||||
PlayerZone grave = AllZone.getZone(Constant.Zone.Graveyard, card.getController());
|
|
||||||
CardList list = new CardList(grave.getCards());
|
|
||||||
list = list.filter(new CardListFilter() {
|
|
||||||
public boolean addCard(Card c) {
|
|
||||||
return c.isCreature() && c.getType().contains("Legendary");
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
SpellAbility sa;
|
|
||||||
for(int i = 0; i < AllZone.Stack.size(); i++) {
|
|
||||||
sa = AllZone.Stack.peek(i);
|
|
||||||
if(sa.getSourceCard().equals(card)) return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
return super.canPlay() && list.size() > 0
|
|
||||||
&& AllZone.Phase.getPhase().equals(Constant.Phase.Main1)
|
|
||||||
&& AllZone.Phase.getPlayerTurn().equals(card.getController());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean canPlayAI() {
|
|
||||||
PlayerZone grave = AllZone.getZone(Constant.Zone.Graveyard, card.getController());
|
|
||||||
CardList list = new CardList(grave.getCards());
|
|
||||||
list = list.filter(new CardListFilter() {
|
|
||||||
public boolean addCard(Card c) {
|
|
||||||
return c.isCreature() && c.getType().contains("Legendary")
|
|
||||||
&& CardUtil.getConvertedManaCost(c.getManaCost()) > 4;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
return list.size() > 0;
|
|
||||||
}
|
|
||||||
};//Ability
|
|
||||||
|
|
||||||
StringBuilder sbDesc = new StringBuilder();
|
|
||||||
sbDesc.append("Sacrifice Loyal Retainers: Return target legendary creature card from your graveyard to the battlefield. ");
|
|
||||||
sbDesc.append("Activate this ability only during your turn, before attackers are declared.");
|
|
||||||
ability.setDescription(sbDesc.toString());
|
|
||||||
|
|
||||||
StringBuilder sbStack = new StringBuilder();
|
|
||||||
sbStack.append(cardName).append(" - Return target legendary creature card from your graveyard to the battlefield.");
|
|
||||||
ability.setStackDescription(sbStack.toString());
|
|
||||||
|
|
||||||
card.addSpellAbility(ability);
|
|
||||||
}//*************** END ************ END **************************
|
|
||||||
|
|
||||||
|
|
||||||
//*************** START *********** START **************************
|
|
||||||
else if(cardName.equals("Xiahou Dun, the One-Eyed")) {
|
|
||||||
final Ability ability = new Ability(card, "0") {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void resolve() {
|
|
||||||
if(AllZone.GameAction.isCardInPlay(card)) {
|
|
||||||
AllZone.GameAction.sacrifice(card);
|
|
||||||
|
|
||||||
PlayerZone hand = AllZone.getZone(Constant.Zone.Hand, card.getController());
|
|
||||||
PlayerZone grave = AllZone.getZone(Constant.Zone.Graveyard, card.getController());
|
|
||||||
CardList list = new CardList(grave.getCards());
|
|
||||||
list = list.filter(AllZoneUtil.black);
|
|
||||||
|
|
||||||
if(list.size() > 0) {
|
|
||||||
if(card.getController().equals(AllZone.HumanPlayer)) {
|
|
||||||
Object o = GuiUtils.getChoiceOptional("Select black card", list.toArray());
|
|
||||||
if(o != null) {
|
|
||||||
Card c = (Card) o;
|
|
||||||
grave.remove(c);
|
|
||||||
hand.add(c);
|
|
||||||
}
|
|
||||||
|
|
||||||
} else //computer
|
|
||||||
{
|
|
||||||
//TODO
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean canPlay() {
|
|
||||||
PlayerZone grave = AllZone.getZone(Constant.Zone.Graveyard, card.getController());
|
|
||||||
CardList list = new CardList(grave.getCards());
|
|
||||||
list = list.filter(AllZoneUtil.black);
|
|
||||||
|
|
||||||
SpellAbility sa;
|
|
||||||
for(int i = 0; i < AllZone.Stack.size(); i++) {
|
|
||||||
sa = AllZone.Stack.peek(i);
|
|
||||||
if(sa.getSourceCard().equals(card)) return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
return super.canPlay() && list.size() > 0
|
|
||||||
&& AllZone.Phase.getPhase().equals(Constant.Phase.Main1)
|
|
||||||
&& AllZone.Phase.getPlayerTurn().equals(card.getController());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean canPlayAI() {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
StringBuilder sbDesc = new StringBuilder();
|
|
||||||
sbDesc.append("Sacrifice Xiahou Dun, the One-Eyed: Return target black card from your graveyard to your hand. ");
|
|
||||||
sbDesc.append("Activate this ability only during your turn, before attackers are declared.");
|
|
||||||
ability.setDescription(sbDesc.toString());
|
|
||||||
|
|
||||||
StringBuilder sbStack = new StringBuilder();
|
|
||||||
sbStack.append(cardName).append(" - Return target black card from your graveyard to your hand.");
|
|
||||||
ability.setStackDescription(sbStack.toString());
|
|
||||||
|
|
||||||
card.addSpellAbility(ability);
|
|
||||||
}//*************** END ************ END **************************
|
|
||||||
|
|
||||||
/*
|
|
||||||
//*************** START *********** START **************************
|
|
||||||
else if(cardName.equals("Fire Bowman")) {
|
|
||||||
final Ability ability = new Ability(card, "0") {
|
|
||||||
@Override
|
|
||||||
public boolean canPlayAI() {
|
|
||||||
return getCreature().size() != 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void chooseTargetAI() {
|
|
||||||
if(AllZone.HumanPlayer.getLife() < 3) setTargetPlayer(AllZone.HumanPlayer);
|
|
||||||
else {
|
|
||||||
CardList list = getCreature();
|
|
||||||
list.shuffle();
|
|
||||||
setTargetCard(list.get(0));
|
|
||||||
}
|
|
||||||
AllZone.GameAction.sacrifice(card);
|
|
||||||
}//chooseTargetAI()
|
|
||||||
|
|
||||||
CardList getCreature() {
|
|
||||||
//toughness of 1
|
|
||||||
CardList list = CardFactoryUtil.AI_getHumanCreature(1, card, true);
|
|
||||||
list = list.filter(new CardListFilter() {
|
|
||||||
public boolean addCard(Card c) {
|
|
||||||
//only get 1/1 flyers or 2/1 creatures
|
|
||||||
return (2 <= c.getNetAttack()) || c.getKeyword().contains("Flying");
|
|
||||||
}
|
|
||||||
});
|
|
||||||
return list;
|
|
||||||
}//getCreature()
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void resolve() {
|
|
||||||
if(getTargetCard() != null) {
|
|
||||||
if(AllZone.GameAction.isCardInPlay(getTargetCard())
|
|
||||||
&& CardFactoryUtil.canTarget(card, getTargetCard())) getTargetCard().addDamage(1,
|
|
||||||
card);
|
|
||||||
} else getTargetPlayer().addDamage(1, card);
|
|
||||||
}//resolve()
|
|
||||||
};//SpellAbility
|
|
||||||
|
|
||||||
card.addSpellAbility(ability);
|
|
||||||
|
|
||||||
StringBuilder sb = new StringBuilder();
|
|
||||||
sb.append("Sacrifice Fire Bowman: Fire Bowman deals 1 damage to target creature or player. ");
|
|
||||||
sb.append("Activate this ability only during your turn, before attackers are declared.");
|
|
||||||
ability.setDescription(sb.toString());
|
|
||||||
|
|
||||||
ability.setBeforePayMana(CardFactoryUtil.input_targetCreaturePlayer(ability, new Command() {
|
|
||||||
|
|
||||||
private static final long serialVersionUID = -3283051501556347775L;
|
|
||||||
|
|
||||||
public void execute() {
|
|
||||||
AllZone.GameAction.sacrifice(card);
|
|
||||||
}
|
|
||||||
}, true, false));
|
|
||||||
}//*************** END ************ END **************************
|
|
||||||
*/
|
|
||||||
|
|
||||||
//*************** START *********** START **************************
|
//*************** START *********** START **************************
|
||||||
else if(cardName.equals("Sygg, River Guide")) {
|
else if(cardName.equals("Sygg, River Guide")) {
|
||||||
|
|||||||
@@ -1516,25 +1516,16 @@ public class GameActionUtil {
|
|||||||
|
|
||||||
}//Thistledown Duo
|
}//Thistledown Duo
|
||||||
|
|
||||||
public static void playCard_Demigod_of_Revenge(Card c) {
|
public static void playCard_Demigod_of_Revenge(final Card c) {
|
||||||
|
// not enough boom stick references in this block of code
|
||||||
if(c.getName().equals("Demigod of Revenge")) {
|
if(c.getName().equals("Demigod of Revenge")) {
|
||||||
Ability ability2 = new Ability(c, "0") {
|
Ability ability2 = new Ability(c, "0") {
|
||||||
@Override
|
@Override
|
||||||
public void resolve() {
|
public void resolve() {
|
||||||
PlayerZone Grave = AllZone.getZone(Constant.Zone.Graveyard, AllZone.Phase.getPlayerTurn());
|
CardList evildead = AllZoneUtil.getPlayerGraveyard(c.getController(), "Demigod of Revenge");
|
||||||
PlayerZone Play = AllZone.getZone(Constant.Zone.Battlefield, AllZone.Phase.getPlayerTurn());
|
|
||||||
CardList evildead = new CardList();
|
for(Card c : evildead){
|
||||||
evildead.addAll(Grave.getCards());
|
AllZone.GameAction.moveToPlay(c);
|
||||||
evildead = evildead.filter(new CardListFilter() {
|
|
||||||
public boolean addCard(Card card) {
|
|
||||||
return (card.getName().contains("Demigod of Revenge"));
|
|
||||||
}
|
|
||||||
});
|
|
||||||
for(int i = 0; i < evildead.size(); i++) {
|
|
||||||
Card c = evildead.get(i);
|
|
||||||
Grave.remove(c);
|
|
||||||
Play.add(c);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}; // ability2
|
}; // ability2
|
||||||
@@ -1737,20 +1728,8 @@ public class GameActionUtil {
|
|||||||
else if(!choice.equals("None")) target = AllZone.HumanPlayer; // check for target of spell/abilities should be here
|
else if(!choice.equals("None")) target = AllZone.HumanPlayer; // check for target of spell/abilities should be here
|
||||||
else target = null;
|
else target = null;
|
||||||
} else target = AllZone.HumanPlayer; // check for target of spell/abilities should be here
|
} else target = AllZone.HumanPlayer; // check for target of spell/abilities should be here
|
||||||
if(!(null == target)) {
|
if(null != target) {
|
||||||
PlayerZone lib = AllZone.getZone(Constant.Zone.Library, target);
|
target.mill(converted);
|
||||||
PlayerZone grave = AllZone.getZone(Constant.Zone.Graveyard, target);
|
|
||||||
CardList libList = new CardList(lib.getCards());
|
|
||||||
|
|
||||||
int max = converted;
|
|
||||||
|
|
||||||
if(libList.size() < max) max = libList.size();
|
|
||||||
|
|
||||||
for(int i = 0; i < max; i++) {
|
|
||||||
Card c = libList.get(i);
|
|
||||||
lib.remove(c);
|
|
||||||
grave.add(c);
|
|
||||||
}
|
|
||||||
} //if
|
} //if
|
||||||
} //resolve
|
} //resolve
|
||||||
}; //ability
|
}; //ability
|
||||||
|
|||||||
Reference in New Issue
Block a user