mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-20 04:38:00 +00:00
Added:
Adamaro, first to desire Masumaro, first to live Quagnoth Kavu Titan Vampiric Dragon Emperor Crocodile Seedborn Muse
This commit is contained in:
@@ -18275,6 +18275,60 @@ public class CardFactory_Creatures {
|
|||||||
card.addDestroyCommand(destroy);
|
card.addDestroyCommand(destroy);
|
||||||
}//*************** END ************ END **************************
|
}//*************** END ************ END **************************
|
||||||
|
|
||||||
|
//*************** START *********** START **************************
|
||||||
|
else if(cardName.equals("Kavu Titan")) {
|
||||||
|
final SpellAbility kicker = new Spell(card) {
|
||||||
|
private static final long serialVersionUID = -1598664196463358630L;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void resolve() {
|
||||||
|
PlayerZone hand = AllZone.getZone(Constant.Zone.Hand, card.getController());
|
||||||
|
PlayerZone play = AllZone.getZone(Constant.Zone.Play, card.getController());
|
||||||
|
|
||||||
|
card.setKicked(true);
|
||||||
|
hand.remove(card);
|
||||||
|
play.add(card);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean canPlay() {
|
||||||
|
return super.canPlay() && AllZone.Phase.getActivePlayer().equals(card.getController())
|
||||||
|
&& !AllZone.Phase.getPhase().equals("End of Turn")
|
||||||
|
&& !AllZone.GameAction.isCardInPlay(card);
|
||||||
|
}
|
||||||
|
|
||||||
|
};
|
||||||
|
kicker.setKickerAbility(true);
|
||||||
|
kicker.setManaCost("3 G G");
|
||||||
|
kicker.setAdditionalManaCost("2 G");
|
||||||
|
kicker.setDescription("Kicker 2 G");
|
||||||
|
kicker.setStackDescription(card.getName() + " - Creature 5/5 (Kicked)");
|
||||||
|
|
||||||
|
card.addSpellAbility(kicker);
|
||||||
|
|
||||||
|
final Ability ability = new Ability(card, "0") {
|
||||||
|
@Override
|
||||||
|
public void resolve() {
|
||||||
|
card.addCounter(Counters.P1P1, 3);
|
||||||
|
card.addIntrinsicKeyword("Trample");
|
||||||
|
|
||||||
|
card.setKicked(false);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
Command commandComes = new Command() {
|
||||||
|
private static final long serialVersionUID = -2622859088591798773L;
|
||||||
|
|
||||||
|
public void execute() {
|
||||||
|
if(card.isKicked()) {
|
||||||
|
ability.setStackDescription("Kavu Titan gets 3 +1/+1 counters and gains trample.");
|
||||||
|
AllZone.Stack.add(ability);
|
||||||
|
}
|
||||||
|
}//execute()
|
||||||
|
};//CommandComes
|
||||||
|
|
||||||
|
card.addComesIntoPlayCommand(commandComes);
|
||||||
|
}//*************** END ************ END **************************
|
||||||
|
|
||||||
//*************** START *********** START **************************
|
//*************** START *********** START **************************
|
||||||
else if(cardName.equals("Gatekeeper of Malakir")) {
|
else if(cardName.equals("Gatekeeper of Malakir")) {
|
||||||
|
|||||||
@@ -176,6 +176,8 @@ public class GameAction {
|
|||||||
c.getKeyword().contains("If a spell or ability an opponent controls causes you to discard CARDNAME, put it onto the battlefield with two +1/+1 counters on it instead of putting it into your graveyard."))
|
c.getKeyword().contains("If a spell or ability an opponent controls causes you to discard CARDNAME, put it onto the battlefield with two +1/+1 counters on it instead of putting it into your graveyard."))
|
||||||
&& !c.getController().equals(sa.getSourceCard().getController()))
|
&& !c.getController().equals(sa.getSourceCard().getController()))
|
||||||
discard_PutIntoPlayInstead(c);
|
discard_PutIntoPlayInstead(c);
|
||||||
|
else if (c.getKeyword().contains("If a spell or ability an opponent controls causes you to discard CARDNAME, return it to your hand."))
|
||||||
|
;
|
||||||
else
|
else
|
||||||
moveToGraveyard(c);
|
moveToGraveyard(c);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -86,6 +86,7 @@ public class GameActionUtil {
|
|||||||
upkeep_Bringer_of_the_Blue_Dawn();
|
upkeep_Bringer_of_the_Blue_Dawn();
|
||||||
upkeep_Bringer_of_the_White_Dawn();
|
upkeep_Bringer_of_the_White_Dawn();
|
||||||
upkeep_Murkfiend_Liege();
|
upkeep_Murkfiend_Liege();
|
||||||
|
upkeep_Seedborn_Muse();
|
||||||
upkeep_Mirror_Sigil_Sergeant();
|
upkeep_Mirror_Sigil_Sergeant();
|
||||||
//upkeep_Luminous_Angel();
|
//upkeep_Luminous_Angel();
|
||||||
upkeep_Verdant_Force();
|
upkeep_Verdant_Force();
|
||||||
@@ -1030,7 +1031,7 @@ public class GameActionUtil {
|
|||||||
for(int i = 0; i < list.size(); i++) {
|
for(int i = 0; i < list.size(); i++) {
|
||||||
final Card card = list.get(i);
|
final Card card = list.get(i);
|
||||||
final Command untilEOT = new Command() {
|
final Command untilEOT = new Command() {
|
||||||
private static final long serialVersionUID = -4569751606008597903L;
|
private static final long serialVersionUID = -4569751606008597913L;
|
||||||
|
|
||||||
public void execute() {
|
public void execute() {
|
||||||
if(AllZone.GameAction.isCardInPlay(card)) {
|
if(AllZone.GameAction.isCardInPlay(card)) {
|
||||||
@@ -9778,6 +9779,42 @@ public class GameActionUtil {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static void upkeep_Seedborn_Muse()
|
||||||
|
{
|
||||||
|
final String player = AllZone.Phase.getActivePlayer();
|
||||||
|
final String opp = AllZone.GameAction.getOpponent(player);
|
||||||
|
|
||||||
|
CardList list = AllZoneUtil.getPlayerCardsInPlay(opp);
|
||||||
|
list = list.getName("Seedborn Muse");
|
||||||
|
|
||||||
|
Ability ability;
|
||||||
|
for (int i = 0; i < list.size(); i++) {
|
||||||
|
final Card card = list.get(i);
|
||||||
|
|
||||||
|
ability = new Ability(card, "0")
|
||||||
|
{
|
||||||
|
public void resolve()
|
||||||
|
{
|
||||||
|
CardList permanents = AllZoneUtil.getPlayerCardsInPlay(opp);
|
||||||
|
permanents = permanents.filter(new CardListFilter() {
|
||||||
|
public boolean addCard(Card c)
|
||||||
|
{
|
||||||
|
return c.isTapped();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
for (Card crd:permanents)
|
||||||
|
{
|
||||||
|
crd.untap();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
ability.setStackDescription(card + " - Untap all permanents you control during each other player's untap step.");
|
||||||
|
AllZone.Stack.add(ability);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private static void upkeep_Mirror_Sigil_Sergeant()
|
private static void upkeep_Mirror_Sigil_Sergeant()
|
||||||
{
|
{
|
||||||
final String player = AllZone.Phase.getActivePlayer();
|
final String player = AllZone.Phase.getActivePlayer();
|
||||||
@@ -12458,6 +12495,42 @@ public class GameActionUtil {
|
|||||||
}// execute()
|
}// execute()
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
public static Command Emperor_Crocodile = new Command() {
|
||||||
|
private static final long serialVersionUID = -5406532269475480827L;
|
||||||
|
|
||||||
|
@SuppressWarnings("unused")
|
||||||
|
// gloriousAnthemList
|
||||||
|
CardList gloriousAnthemList = new CardList();
|
||||||
|
|
||||||
|
public void execute() {
|
||||||
|
// get all cards
|
||||||
|
|
||||||
|
CardList list = new CardList();
|
||||||
|
list.addAll(AllZone.Human_Play.getCards());
|
||||||
|
list.addAll(AllZone.Computer_Play.getCards());
|
||||||
|
list = list.filter(new CardListFilter() {
|
||||||
|
public boolean addCard(Card c) {
|
||||||
|
return c.getName().equals("Emperor Crocodile");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
for (int i=0;i<list.size();i++) {
|
||||||
|
|
||||||
|
Card c = list.get(i);
|
||||||
|
|
||||||
|
|
||||||
|
//Player only has one creature in play (the crocodile) then it dies.
|
||||||
|
if (AllZoneUtil.getCreaturesInPlay(c.getController()).size() == 1) {
|
||||||
|
AllZone.GameAction.sacrifice(c);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}// execute()
|
||||||
|
};
|
||||||
|
|
||||||
public static Command Fervor = new Command() {
|
public static Command Fervor = new Command() {
|
||||||
private static final long serialVersionUID = -826876381048543684L;
|
private static final long serialVersionUID = -826876381048543684L;
|
||||||
|
|
||||||
@@ -18241,6 +18314,87 @@ public class GameActionUtil {
|
|||||||
|
|
||||||
}; //Maro
|
}; //Maro
|
||||||
|
|
||||||
|
public static Command Masumaro_First_to_Live = new Command() {
|
||||||
|
private static final long serialVersionUID = -8778922687347191964L;
|
||||||
|
|
||||||
|
public void execute() {
|
||||||
|
// get all creatures
|
||||||
|
CardList list = new CardList();
|
||||||
|
list.addAll(AllZone.Human_Play.getCards());
|
||||||
|
list.addAll(AllZone.Computer_Play.getCards());
|
||||||
|
list = list.getName("Masumaro, First to Live");
|
||||||
|
|
||||||
|
for(int i = 0; i < list.size(); i++) {
|
||||||
|
Card c = list.get(i);
|
||||||
|
int k = 0;
|
||||||
|
if(c.getController().equals(
|
||||||
|
Constant.Player.Human)) {
|
||||||
|
k = countHand_Human();
|
||||||
|
} else k = countHand_Computer();
|
||||||
|
c.setBaseAttack(2*k);
|
||||||
|
c.setBaseDefense(2*k);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private int countHand_Human() {
|
||||||
|
PlayerZone Play = AllZone.getZone(
|
||||||
|
Constant.Zone.Hand, Constant.Player.Human);
|
||||||
|
CardList list = new CardList();
|
||||||
|
list.addAll(Play.getCards());
|
||||||
|
return list.size();
|
||||||
|
}
|
||||||
|
|
||||||
|
private int countHand_Computer() {
|
||||||
|
PlayerZone Play = AllZone.getZone(
|
||||||
|
Constant.Zone.Hand, Constant.Player.Computer);
|
||||||
|
CardList list = new CardList();
|
||||||
|
list.addAll(Play.getCards());
|
||||||
|
return list.size();
|
||||||
|
}
|
||||||
|
|
||||||
|
}; //Masumaro, first to live
|
||||||
|
|
||||||
|
|
||||||
|
public static Command Adamaro_First_to_Desire = new Command() {
|
||||||
|
private static final long serialVersionUID = -8778912687347191965L;
|
||||||
|
|
||||||
|
public void execute() {
|
||||||
|
// get all creatures
|
||||||
|
CardList list = new CardList();
|
||||||
|
list.addAll(AllZone.Human_Play.getCards());
|
||||||
|
list.addAll(AllZone.Computer_Play.getCards());
|
||||||
|
list = list.getName("Adamaro, First to Desire");
|
||||||
|
|
||||||
|
for(int i = 0; i < list.size(); i++) {
|
||||||
|
Card c = list.get(i);
|
||||||
|
int k = 0;
|
||||||
|
if(c.getController().equals(
|
||||||
|
Constant.Player.Human)) {
|
||||||
|
k = countHand_Computer();
|
||||||
|
} else k = countHand_Human();
|
||||||
|
c.setBaseAttack(k);
|
||||||
|
c.setBaseDefense(k);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private int countHand_Human() {
|
||||||
|
PlayerZone Play = AllZone.getZone(
|
||||||
|
Constant.Zone.Hand, Constant.Player.Human);
|
||||||
|
CardList list = new CardList();
|
||||||
|
list.addAll(Play.getCards());
|
||||||
|
return list.size();
|
||||||
|
}
|
||||||
|
|
||||||
|
private int countHand_Computer() {
|
||||||
|
PlayerZone Play = AllZone.getZone(
|
||||||
|
Constant.Zone.Hand, Constant.Player.Computer);
|
||||||
|
CardList list = new CardList();
|
||||||
|
list.addAll(Play.getCards());
|
||||||
|
return list.size();
|
||||||
|
}
|
||||||
|
|
||||||
|
}; //Adamaro, first to desire
|
||||||
|
|
||||||
public static Command Overbeing_of_Myth = new Command() {
|
public static Command Overbeing_of_Myth = new Command() {
|
||||||
private static final long serialVersionUID = -2250795040532050455L;
|
private static final long serialVersionUID = -2250795040532050455L;
|
||||||
|
|
||||||
@@ -20892,6 +21046,8 @@ public class GameActionUtil {
|
|||||||
commands.put("Multani_Maro_Sorcerer", Multani_Maro_Sorcerer);
|
commands.put("Multani_Maro_Sorcerer", Multani_Maro_Sorcerer);
|
||||||
commands.put("Molimo_Maro_Sorcerer", Molimo_Maro_Sorcerer);
|
commands.put("Molimo_Maro_Sorcerer", Molimo_Maro_Sorcerer);
|
||||||
commands.put("Maro", Maro);
|
commands.put("Maro", Maro);
|
||||||
|
commands.put("Masumaro_First_to_Live", Masumaro_First_to_Live);
|
||||||
|
commands.put("Adamaro_First_to_Desire", Adamaro_First_to_Desire);
|
||||||
commands.put("Overbeing_of_Myth", Overbeing_of_Myth);
|
commands.put("Overbeing_of_Myth", Overbeing_of_Myth);
|
||||||
commands.put("Guul_Draz_Specter", Guul_Draz_Specter);
|
commands.put("Guul_Draz_Specter", Guul_Draz_Specter);
|
||||||
commands.put("Dakkon", Dakkon);
|
commands.put("Dakkon", Dakkon);
|
||||||
@@ -21063,7 +21219,7 @@ public class GameActionUtil {
|
|||||||
commands.put("Mass_Hysteria", Mass_Hysteria);
|
commands.put("Mass_Hysteria", Mass_Hysteria);
|
||||||
commands.put("Fervor", Fervor);
|
commands.put("Fervor", Fervor);
|
||||||
commands.put("Madrush_Cyclops", Madrush_Cyclops);
|
commands.put("Madrush_Cyclops", Madrush_Cyclops);
|
||||||
|
commands.put("Emperor_Crocodile", Emperor_Crocodile);
|
||||||
commands.put("Sun_Quan", Sun_Quan);
|
commands.put("Sun_Quan", Sun_Quan);
|
||||||
|
|
||||||
commands.put("Rolling_Stones", Rolling_Stones);
|
commands.put("Rolling_Stones", Rolling_Stones);
|
||||||
|
|||||||
@@ -46,6 +46,7 @@ public class StaticEffects
|
|||||||
cardToEffectsList.put("Magnivore", new String[] {"Magnivore"});
|
cardToEffectsList.put("Magnivore", new String[] {"Magnivore"});
|
||||||
cardToEffectsList.put("Tarmogoyf", new String[] {"Tarmogoyf"});
|
cardToEffectsList.put("Tarmogoyf", new String[] {"Tarmogoyf"});
|
||||||
cardToEffectsList.put("Lhurgoyf", new String[] {"Lhurgoyf"});
|
cardToEffectsList.put("Lhurgoyf", new String[] {"Lhurgoyf"});
|
||||||
|
cardToEffectsList.put("Emperor Crocodile", new String[] {"Emperor_Crocodile"});
|
||||||
cardToEffectsList.put("Wolf", new String[] {"Sound_the_Call_Wolf"});
|
cardToEffectsList.put("Wolf", new String[] {"Sound_the_Call_Wolf"});
|
||||||
cardToEffectsList.put("Drove of Elves", new String[] {"Drove_of_Elves"});
|
cardToEffectsList.put("Drove of Elves", new String[] {"Drove_of_Elves"});
|
||||||
cardToEffectsList.put("Crowd of Cinders", new String[] {"Crowd_of_Cinders"});
|
cardToEffectsList.put("Crowd of Cinders", new String[] {"Crowd_of_Cinders"});
|
||||||
@@ -54,6 +55,8 @@ public class StaticEffects
|
|||||||
cardToEffectsList.put("Multani, Maro-Sorcerer", new String[] {"Multani_Maro_Sorcerer"});
|
cardToEffectsList.put("Multani, Maro-Sorcerer", new String[] {"Multani_Maro_Sorcerer"});
|
||||||
cardToEffectsList.put("Molimo, Maro-Sorcerer", new String[] {"Molimo_Maro_Sorcerer"});
|
cardToEffectsList.put("Molimo, Maro-Sorcerer", new String[] {"Molimo_Maro_Sorcerer"});
|
||||||
cardToEffectsList.put("Maro", new String[] {"Maro"});
|
cardToEffectsList.put("Maro", new String[] {"Maro"});
|
||||||
|
cardToEffectsList.put("Masumaro, First to Live", new String[] {"Masumaro_First_to_Live"});
|
||||||
|
cardToEffectsList.put("Adamaro, First to Desire", new String[] {"Adamaro_First_to_Desire"});
|
||||||
cardToEffectsList.put("Overbeing of Myth", new String[] {"Overbeing_of_Myth"});
|
cardToEffectsList.put("Overbeing of Myth", new String[] {"Overbeing_of_Myth"});
|
||||||
cardToEffectsList.put("Guul Draz Specter", new String[] {"Guul_Draz_Specter"});
|
cardToEffectsList.put("Guul Draz Specter", new String[] {"Guul_Draz_Specter"});
|
||||||
cardToEffectsList.put("Dakkon Blackblade", new String[] {"Dakkon"});
|
cardToEffectsList.put("Dakkon Blackblade", new String[] {"Dakkon"});
|
||||||
|
|||||||
Reference in New Issue
Block a user