mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-18 19:58:00 +00:00
Added Oracle of Mul Daya
This commit is contained in:
@@ -38,6 +38,7 @@ 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
|
||||
oracle_of_mul_daya.jpg http://www.wizards.com/global/images/magic/general/oracle_of_mul_daya.jpg
|
||||
roiling_terrain.jpg http://www.wizards.com/global/images/magic/general/roiling_terrain.jpg
|
||||
tectonic_edge.jpg http://www.wizards.com/global/images/magic/general/tectonic_edge.jpg
|
||||
evolving_wilds.jpg http://www.wizards.com/global/images/magic/general/evolving_wilds.jpg
|
||||
|
||||
@@ -1,3 +1,10 @@
|
||||
Oracle of Mul Daya
|
||||
3 G
|
||||
Creature Elf Shaman
|
||||
You may play an additional land on each of your turns. You may play the top card of your library if it's a land card.
|
||||
2/2
|
||||
Play with the top card of your library revealed.
|
||||
|
||||
Roiling Terrain
|
||||
2 R R
|
||||
Sorcery
|
||||
|
||||
@@ -216,7 +216,8 @@ public class CardFactoryUtil {
|
||||
|
||||
{"Phyrexian Battleflies", Integer.valueOf(2)}, {"Pit Imp", Integer.valueOf(2)},
|
||||
{"Roterothopter", Integer.valueOf(2)}, {"Vampire Bats", Integer.valueOf(2)},
|
||||
{"Fire-Belly Changeling", Integer.valueOf(2)}, {"Azusa, Lost but Seeking", Integer.valueOf(2)}};
|
||||
{"Fire-Belly Changeling", Integer.valueOf(2)}, {"Azusa, Lost but Seeking", Integer.valueOf(2)},
|
||||
{"Oracle of Mul Daya", Integer.valueOf(1)}};
|
||||
|
||||
public static boolean canUseAbility(Card card) {
|
||||
int found = -1;
|
||||
@@ -3686,13 +3687,14 @@ public class CardFactoryUtil {
|
||||
list = list.filter(new CardListFilter() {
|
||||
public boolean addCard(Card c) {
|
||||
return c.getName().equals("Exploration") || c.getName().equals("Azusa, Lost but Seeking")
|
||||
|| c.getName().equals("Fastbond");
|
||||
|| c.getName().equals("Fastbond") || c.getName().equals("Oracle of Mul Daya");
|
||||
}
|
||||
});
|
||||
|
||||
for(Card var:list) {
|
||||
if(var.getName().equals("Exploration")) count++;
|
||||
else if(var.getName().equals("Azusa, Lost but Seeking")) count = count + 2;
|
||||
else if(var.getName().equals("Oracle of Mul Daya")) count = count + 1;
|
||||
else if(var.getName().equals("Fastbond")) count = 100;
|
||||
}
|
||||
|
||||
|
||||
@@ -2412,7 +2412,47 @@ public class CardFactory_Creatures {
|
||||
};
|
||||
card.addComesIntoPlayCommand(intoPlay);
|
||||
}//*************** END ************ END **************************
|
||||
|
||||
|
||||
//*************** START *********** START **************************
|
||||
else if(cardName.equals("Oracle of Mul Daya")) {
|
||||
final SpellAbility ability = new Ability(card, "0") {
|
||||
private static final long serialVersionUID = 2902408812353813L;
|
||||
|
||||
@Override
|
||||
public void resolve() {
|
||||
CardList library = new CardList(AllZone.getZone(Constant.Zone.Library, card.getController()).getCards());
|
||||
if(library.size() > 0) {
|
||||
if(library.get(0).getType().contains("Land")) {
|
||||
PlayerZone play = AllZone.getZone(Constant.Zone.Play, card.getController());
|
||||
AllZone.GameAction.moveTo(play, library.get(0));
|
||||
if(card.getController() == Constant.Player.Human) {
|
||||
AllZone.GameInfo.addHumanCanPlayNumberOfLands(-1);
|
||||
AllZone.GameInfo.setHumanPlayedFirstLandThisTurn(true);
|
||||
}
|
||||
else {
|
||||
AllZone.GameInfo.addComputerCanPlayNumberOfLands(-1);
|
||||
AllZone.GameInfo.setComputerPlayedFirstLandThisTurn(true);
|
||||
}
|
||||
}
|
||||
}
|
||||
}//resolve()
|
||||
|
||||
@Override
|
||||
public boolean canPlay() {
|
||||
CardList library = new CardList(AllZone.getZone(Constant.Zone.Library, card.getController()).getCards());
|
||||
if(library.size() == 0) return false;
|
||||
PlayerZone play = AllZone.getZone(Constant.Zone.Play, card.getController());
|
||||
int PlayLand = 0;
|
||||
if(card.getController() == Constant.Player.Human) PlayLand = AllZone.GameInfo.getHumanCanPlayNumberOfLands();
|
||||
else PlayLand = AllZone.GameInfo.getComputerCanPlayNumberOfLands();
|
||||
|
||||
return (AllZone.GameAction.isCardInZone(card, play) && library.get(0).getType().contains("Land") && PlayLand > 0)
|
||||
&& (AllZone.Stack.size() == 0) && AllZone.GameAction.getLastPlayerToDraw() == card.getController();
|
||||
}
|
||||
};
|
||||
ability.setStackDescription(card.getController() + " - plays land from top of library.");
|
||||
card.addSpellAbility(ability);
|
||||
}//*************** END ************ END **************************
|
||||
|
||||
//*************** START *********** START **************************
|
||||
else if(cardName.equals("Highway Robber") || cardName.equals("Dakmor Ghoul")) {
|
||||
|
||||
@@ -35,6 +35,9 @@ public class PlayerZone_ComesIntoPlay extends DefaultPlayerZone {
|
||||
} else if(c.getName().equals("Azusa, Lost but Seeking")) {
|
||||
if(c.getController().equals(Constant.Player.Human)) AllZone.GameInfo.addHumanCanPlayNumberOfLands(2);
|
||||
else AllZone.GameInfo.addComputerCanPlayNumberOfLands(2);
|
||||
} else if(c.getName().equals("Oracle of Mul Daya")) {
|
||||
if(c.getController().equals(Constant.Player.Human)) AllZone.GameInfo.addHumanCanPlayNumberOfLands(1);
|
||||
else AllZone.GameInfo.addComputerCanPlayNumberOfLands(1);
|
||||
} else if(c.getName().equals("Fastbond")) {
|
||||
if(c.getController().equals(Constant.Player.Human)) AllZone.GameInfo.addHumanCanPlayNumberOfLands(100);
|
||||
else AllZone.GameInfo.addComputerCanPlayNumberOfLands(100);
|
||||
@@ -237,6 +240,9 @@ public class PlayerZone_ComesIntoPlay extends DefaultPlayerZone {
|
||||
} else if(c.getName().equals("Azusa, Lost but Seeking")) {
|
||||
if(c.getController().equals(Constant.Player.Human)) AllZone.GameInfo.addHumanCanPlayNumberOfLands(-2);
|
||||
else AllZone.GameInfo.addComputerCanPlayNumberOfLands(-2);
|
||||
} else if(c.getName().equals("Oracle of Mul Daya")) {
|
||||
if(c.getController().equals(Constant.Player.Human)) AllZone.GameInfo.addHumanCanPlayNumberOfLands(-1);
|
||||
else AllZone.GameInfo.addComputerCanPlayNumberOfLands(-1);
|
||||
} else if(c.getName().equals("Fastbond")) {
|
||||
if(c.getController().equals(Constant.Player.Human)) AllZone.GameInfo.addHumanCanPlayNumberOfLands(-100);
|
||||
else AllZone.GameInfo.addComputerCanPlayNumberOfLands(-100);
|
||||
|
||||
Reference in New Issue
Block a user