mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-20 12:48:00 +00:00
- Fixes for Flashback so it properly removes the card from the game.
- Added Retrieve to AF_Fetch for Retrieving cards from your graveyard. - Converted Hammer of Bogardan, Eternal Dragon, Undead Gladiator to AF_Retrieve - Added Soldevi Digger and Reassembling Skeleton
This commit is contained in:
@@ -11081,99 +11081,7 @@ public class CardFactory_Creatures {
|
||||
|
||||
card.addComesIntoPlayCommand(fetchBasicLand);
|
||||
}//*************** END ************ END **************************
|
||||
|
||||
|
||||
//*************** START *********** START **************************
|
||||
else if(cardName.equals("Eternal Dragon")) {
|
||||
final Ability ability = new Ability(card, "3 W W") {
|
||||
|
||||
private static final long serialVersionUID = -5633265048009L;
|
||||
|
||||
@Override
|
||||
public void resolve() {
|
||||
PlayerZone grave = AllZone.getZone(Constant.Zone.Graveyard, card.getController());
|
||||
PlayerZone hand = AllZone.getZone(Constant.Zone.Hand, card.getController());
|
||||
|
||||
grave.remove(card);
|
||||
hand.add(card);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean canPlay() {
|
||||
PlayerZone grave = AllZone.getZone(Constant.Zone.Graveyard, card.getController());
|
||||
PlayerZone hand = AllZone.getZone(Constant.Zone.Hand, card.getController());
|
||||
|
||||
return AllZone.GameAction.isCardInZone(card, grave) && AllZone.Phase.isPlayerTurn(card.getController()) && hand.size() > 0;
|
||||
}
|
||||
};//Ability
|
||||
|
||||
card.addSpellAbility(ability);
|
||||
ability.setFlashBackAbility(true);
|
||||
card.setUnearth(true);
|
||||
ability.setDescription("3 W W: Return Eternal Dragon from your graveyard to your hand. Activate this ability only during your upkeep.");
|
||||
|
||||
StringBuilder sb = new StringBuilder();
|
||||
sb.append(card.getName()).append(" returns from the graveyard to hand");
|
||||
ability.setStackDescription(sb.toString());
|
||||
}//*************** END ************ END **************************
|
||||
|
||||
|
||||
//*************** START *********** START **************************
|
||||
else if(cardName.equals("Undead Gladiator")) {
|
||||
final Ability ability = new Ability(card, "1 B") {
|
||||
|
||||
private static final long serialVersionUID = -56339412048009L;
|
||||
|
||||
@Override
|
||||
public void resolve() {
|
||||
PlayerZone grave = AllZone.getZone(Constant.Zone.Graveyard, card.getController());
|
||||
PlayerZone hand = AllZone.getZone(Constant.Zone.Hand, card.getController());
|
||||
|
||||
grave.remove(card);
|
||||
hand.add(card);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean canPlay() {
|
||||
PlayerZone grave = AllZone.getZone(Constant.Zone.Graveyard, card.getController());
|
||||
PlayerZone hand = AllZone.getZone(Constant.Zone.Hand, card.getController());
|
||||
|
||||
return AllZone.GameAction.isCardInZone(card, grave) && AllZone.Phase.isPlayerTurn(card.getController()) && hand.size() > 0;
|
||||
}
|
||||
};//Ability
|
||||
|
||||
Input target = new Input() {
|
||||
|
||||
private static final long serialVersionUID = 42466124531655L;
|
||||
|
||||
@Override
|
||||
public void showMessage() {
|
||||
AllZone.Display.showMessage("Select a card to discard");
|
||||
ButtonUtil.enableOnlyCancel();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void selectCard(Card c, PlayerZone zone) {
|
||||
PlayerZone Player_Hand = AllZone.getZone(Constant.Zone.Hand, card.getController());
|
||||
if(AllZone.GameAction.isCardInZone(c, Player_Hand)) {
|
||||
c.getController().discard(c,ability);
|
||||
AllZone.Stack.add(ability);
|
||||
stopSetNext(new ComputerAI_StackNotEmpty());
|
||||
}
|
||||
}//selectCard()
|
||||
};//Input
|
||||
|
||||
card.addSpellAbility(ability);
|
||||
ability.setFlashBackAbility(true);
|
||||
card.setUnearth(true);
|
||||
ability.setDescription("1 B, Discard a card: Return Undead Gladiator from your graveyard to your hand. Activate this ability only during your upkeep.");
|
||||
|
||||
StringBuilder sb = new StringBuilder();
|
||||
sb.append(card.getName()).append(" returns from the graveyard to hand");
|
||||
ability.setStackDescription(sb.toString());
|
||||
ability.setAfterPayMana(target);
|
||||
}//*************** END ************ END **************************
|
||||
|
||||
|
||||
//*************** START *********** START **************************
|
||||
if(cardName.equals("Doomed Necromancer")) {
|
||||
|
||||
Reference in New Issue
Block a user