mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-17 19:28:01 +00:00
Added the cards Entangling Vines and Glimmerdust Nap and their LQ pic urls. I had to hard-code these cards as I do not thoink that these two can be done strictly via keywords.
This commit is contained in:
@@ -38,6 +38,8 @@ snow_covered_mountain.jpg http://www.wizards.com/global/images/magic/gene
|
||||
snow_covered_mountain1.jpg http://www.wizards.com/global/images/magic/general/snow_covered_mountain.jpg
|
||||
snow_covered_mountain2.jpg http://www.magickartenmarkt.de/img/cards/Ice_Age/snow_covered_mountain.jpg
|
||||
snow_covered_mountain3.jpg http://www.magickartenmarkt.de/img/cards/Ice_Age/snow_covered_mountain.jpg
|
||||
entangling_vines.jpg http://www.wizards.com/global/images/magic/general/entangling_vines.jpg
|
||||
glimmerdust_nap.jpg http://www.wizards.com/global/images/magic/general/glimmerdust_nap.jpg
|
||||
genesis.jpg http://www.wizards.com/global/images/magic/general/genesis.jpg
|
||||
flight_of_fancy.jpg http://www.wizards.com/global/images/magic/general/flight_of_fancy.jpg
|
||||
elvish_vanguard.jpg http://www.wizards.com/global/images/magic/general/elvish_vanguard.jpg
|
||||
|
||||
@@ -1,3 +1,15 @@
|
||||
Entangling Vines
|
||||
3 G
|
||||
Enchantment Aura
|
||||
Enchanted creature doesn't untap during its controller's untap step.
|
||||
Enchant tapped creature
|
||||
|
||||
Glimmerdust Nap
|
||||
2 U
|
||||
Enchantment Aura
|
||||
Enchanted creature doesn't untap during its controller's untap step.
|
||||
Enchant tapped creature
|
||||
|
||||
Basalt Monolith
|
||||
3
|
||||
Artifact
|
||||
|
||||
@@ -1148,6 +1148,108 @@ class CardFactory_Auras {
|
||||
spell.setBeforePayMana(CardFactoryUtil.input_targetCreature(spell));
|
||||
}//*************** END ************ END **************************
|
||||
|
||||
//*************** START *********** START **************************
|
||||
else if (cardName.equals("Entangling Vines") || cardName.equals("Glimmerdust Nap")) {
|
||||
|
||||
final SpellAbility spell = new Spell(card) {
|
||||
private static final long serialVersionUID = 843412563175285562L;
|
||||
|
||||
@Override
|
||||
public boolean canPlayAI() {
|
||||
|
||||
CardList list = new CardList(AllZone.Human_Play.getCards()); // Target human creature
|
||||
list = list.filter(new CardListFilter() {
|
||||
public boolean addCard(Card c) {
|
||||
return c.isCreature() && c.isTapped() && CardFactoryUtil.canTarget(card, c) &&
|
||||
!c.getKeyword().contains("CARDNAME doesn't untap during your untap step.");
|
||||
}
|
||||
});
|
||||
|
||||
if (list.isEmpty()) {
|
||||
return false;
|
||||
} else {
|
||||
CardListUtil.sortAttack(list);
|
||||
CardListUtil.sortFlying(list);
|
||||
setTargetCard(list.get(0));
|
||||
}
|
||||
return true;
|
||||
}//canPlayAI()
|
||||
|
||||
@Override
|
||||
public void resolve() {
|
||||
PlayerZone play = AllZone.getZone(Constant.Zone.Play, card.getController());
|
||||
play.add(card);
|
||||
|
||||
Card c = getTargetCard();
|
||||
|
||||
if (AllZone.GameAction.isCardInPlay(c) && CardFactoryUtil.canTarget(card, c)) card.enchantCard(c);
|
||||
|
||||
}//resolve()
|
||||
};//SpellAbility
|
||||
card.clearSpellAbility();
|
||||
card.addSpellAbility(spell);
|
||||
|
||||
Command onEnchant = new Command() {
|
||||
private static final long serialVersionUID = -8694692627290877222L;
|
||||
|
||||
public void execute() {
|
||||
if (card.isEnchanting()) {
|
||||
Card crd = card.getEnchanting().get(0);
|
||||
if (! crd.getKeyword().contains("CARDNAME doesn't untap during your untap step."))
|
||||
crd.addExtrinsicKeyword("CARDNAME doesn't untap during your untap step.");
|
||||
}
|
||||
}//execute()
|
||||
};//Command
|
||||
|
||||
Command onUnEnchant = new Command() {
|
||||
private static final long serialVersionUID = -8271629765371049921L;
|
||||
|
||||
public void execute() {
|
||||
if(card.isEnchanting()) {
|
||||
Card crd = card.getEnchanting().get(0);
|
||||
crd.removeExtrinsicKeyword("CARDNAME doesn't untap during your untap step.");
|
||||
}
|
||||
|
||||
}//execute()
|
||||
};//Command
|
||||
|
||||
Command onLeavesPlay = new Command() {
|
||||
private static final long serialVersionUID = -8694692627290877222L;
|
||||
|
||||
public void execute() {
|
||||
if(card.isEnchanting()) {
|
||||
Card crd = card.getEnchanting().get(0);
|
||||
card.unEnchantCard(crd);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
Input runtime = new Input() {
|
||||
private static final long serialVersionUID = 5974269912215230241L;
|
||||
|
||||
@Override
|
||||
public void showMessage() {
|
||||
PlayerZone comp = AllZone.getZone(Constant.Zone.Play, Constant.Player.Computer);
|
||||
PlayerZone hum = AllZone.getZone(Constant.Zone.Play, Constant.Player.Human);
|
||||
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() && c.isTapped() && CardFactoryUtil.canTarget(card, c);
|
||||
}
|
||||
});
|
||||
|
||||
stopSetNext(CardFactoryUtil.input_targetSpecific(spell, creatures, "Select target tapped creature", true, false));
|
||||
}
|
||||
};
|
||||
card.addEnchantCommand(onEnchant);
|
||||
card.addUnEnchantCommand(onUnEnchant);
|
||||
card.addLeavesPlayCommand(onLeavesPlay);
|
||||
|
||||
spell.setBeforePayMana(runtime);
|
||||
}//*************** END ************ END **************************
|
||||
|
||||
|
||||
|
||||
// ************************************************************************
|
||||
|
||||
Reference in New Issue
Block a user