mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-20 20:58:03 +00:00
Fixed the aura Fear and moved it's changed entry to top of cards.txt file.
This commit is contained in:
@@ -1,3 +1,9 @@
|
||||
Fear
|
||||
B B
|
||||
Enchantment Aura
|
||||
Enchanted creature has fear.
|
||||
Enchant creature
|
||||
|
||||
Fire-Field Ogre
|
||||
1 U B R
|
||||
Creature Ogre Mutant
|
||||
@@ -9521,13 +9527,6 @@ Enchanted creature has shroud.
|
||||
Enchant creature
|
||||
enPump:Shroud
|
||||
|
||||
Fear
|
||||
B B
|
||||
Enchantment Aura
|
||||
Enchanted creature has fear.
|
||||
Enchant creature
|
||||
enPump:Fear
|
||||
|
||||
Battle Mastery
|
||||
2 W
|
||||
Enchantment Aura
|
||||
|
||||
@@ -1263,6 +1263,123 @@ class CardFactory_Auras {
|
||||
spell.setBeforePayMana(CardFactoryUtil.input_targetCreature(spell));
|
||||
}//*************** END ************ END **************************
|
||||
|
||||
//**************************************************************
|
||||
// This card can't be converted to keyword, problem with Fear *
|
||||
//*************** START *********** START **********************
|
||||
else if (cardName.equals("Fear")) {
|
||||
final SpellAbility spell = new Spell(card) {
|
||||
private static final long serialVersionUID = -6430665444443363057L;
|
||||
|
||||
@Override
|
||||
public boolean canPlayAI() {
|
||||
CardList list = new CardList(AllZone.Computer_Play.getCards());
|
||||
list = list.getType("Creature");
|
||||
|
||||
if (list.isEmpty()) return false;
|
||||
|
||||
//else (is there a Rabid Wombat or a Uril, the Miststalker to target?)
|
||||
|
||||
CardList auraMagnetList = new CardList(AllZone.Computer_Play.getCards());
|
||||
auraMagnetList = auraMagnetList.filter(new CardListFilter() {
|
||||
public boolean addCard(Card c) {
|
||||
return c.isCreature() && (c.getName().equals("Rabid Wombat") || c.getName().equals("Uril, the Miststalker"));
|
||||
}
|
||||
});
|
||||
if (! auraMagnetList.isEmpty()) { // AI has a special target creature(s) to enchant
|
||||
auraMagnetList.shuffle();
|
||||
for (int i = 0; i < auraMagnetList.size(); i++) {
|
||||
if (CardFactoryUtil.canTarget(card, auraMagnetList.get(i))) {
|
||||
setTargetCard(auraMagnetList.get(i)); // Target only Rabid Wombat or Uril, the Miststalker
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* else target another creature
|
||||
* Do not enchant card with Defender or Fear or enchant card already enchanted
|
||||
*/
|
||||
CardListUtil.sortAttack(list);
|
||||
CardListUtil.sortFlying(list);
|
||||
|
||||
for (int i = 0; i < list.size(); i++) {
|
||||
if (CardFactoryUtil.canTarget(card, list.get(i)) &&
|
||||
!list.get(i).getKeyword().contains("Fear") &&
|
||||
!list.get(i).getKeyword().contains("Defender") &&
|
||||
!list.get(i).isEnchanted()) {
|
||||
setTargetCard(list.get(i));
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}//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);
|
||||
System.out.println("Enchanted: " + getTargetCard());
|
||||
}
|
||||
}//resolve()
|
||||
};//SpellAbility
|
||||
card.clearSpellAbility();
|
||||
card.addSpellAbility(spell);
|
||||
|
||||
Command onEnchant = new Command() {
|
||||
|
||||
private static final long serialVersionUID = 2754287307356877714L;
|
||||
|
||||
public void execute() {
|
||||
if (card.isEnchanting()) {
|
||||
Card crd = card.getEnchanting().get(0);
|
||||
if (!crd.getIntrinsicKeyword().contains("Fear")) {
|
||||
crd.addExtrinsicKeyword("Fear");
|
||||
}
|
||||
}
|
||||
}//execute()
|
||||
};//Command
|
||||
|
||||
|
||||
Command onUnEnchant = new Command() {
|
||||
|
||||
private static final long serialVersionUID = 2007362030422979630L;
|
||||
|
||||
public void execute() {
|
||||
if(card.isEnchanting()) {
|
||||
Card crd = card.getEnchanting().get(0);
|
||||
|
||||
crd.removeExtrinsicKeyword("Fear");
|
||||
}
|
||||
|
||||
}//execute()
|
||||
};//Command
|
||||
|
||||
Command onLeavesPlay = new Command() {
|
||||
|
||||
private static final long serialVersionUID = -8020540432500093584L;
|
||||
|
||||
public void execute() {
|
||||
if (card.isEnchanting()) {
|
||||
Card crd = card.getEnchanting().get(0);
|
||||
card.unEnchantCard(crd);
|
||||
}
|
||||
}//execute()
|
||||
};//Command
|
||||
|
||||
card.addEnchantCommand(onEnchant);
|
||||
card.addUnEnchantCommand(onUnEnchant);
|
||||
card.addLeavesPlayCommand(onLeavesPlay);
|
||||
|
||||
spell.setBeforePayMana(CardFactoryUtil.input_targetCreature(spell));
|
||||
}//*************** END ************ END **************************
|
||||
|
||||
//*************** START *********** START **************************
|
||||
else if (cardName.equals("Entangling Vines") || cardName.equals("Glimmerdust Nap") ||
|
||||
cardName.equals("Melancholy") || cardName.equals("Mystic Restraints") ||
|
||||
|
||||
Reference in New Issue
Block a user