Simplified Quicksilver Gargantuan

This commit is contained in:
jendave
2011-08-06 14:26:47 +00:00
parent 481d316748
commit c68bd33cd2

View File

@@ -13280,7 +13280,8 @@ public class CardFactory_Creatures {
//*************** START *********** START **************************
else if(cardName.equals("Clone") || cardName.equals("Vesuvan Doppelganger")) {
else if(cardName.equals("Clone") || cardName.equals("Vesuvan Doppelganger")
|| cardName.equals("Quicksilver Gargantuan")) {
final CardFactory cfact = cf;
final Card[] copyTarget = new Card[1];
final Card[] cloned = new Card[1];
@@ -13330,6 +13331,11 @@ public class CardFactory_Creatures {
cloned[0].addExtrinsicKeyword("At the beginning of your upkeep, you may have this creature become a copy of target creature except it doesn't copy that creature's color. If you do, this creature gains this ability.");
cloned[0].addColor("U", cloned[0], false, true);
}
else if (cardName.equals("Quicksilver Gargantuan")) {
cloned[0].setBaseDefense(7);
cloned[0].setBaseAttack(7);
}
PlayerZone play = AllZone.getZone(Constant.Zone.Battlefield, card.getController());
play.add(cloned[0]);
card.setCurrentlyCloningCard(cloned[0]);
@@ -13362,99 +13368,6 @@ public class CardFactory_Creatures {
copy.setStackDescription(cardName+" - enters the battlefield as a copy of selected card.");
copy.setBeforePayMana(runtime);
}//*************** END ************ END **************************
//*************** START *********** START **************************
else if(cardName.equals("Quicksilver Gargantuan")) {
final CardFactory cfact = cf;
final Card[] copyTarget = new Card[1];
final Card[] cloned = new Card[1];
final SpellAbility copyBack = new Ability(card, "0") {
@Override
public void resolve() {
Card orig = cfact.getCard(cloned[0].getCloneOrigin().getName(), card.getController());
PlayerZone dest = AllZone.getZone(cloned[0]);
AllZone.GameAction.moveTo(dest, orig);
dest.remove(cloned[0]);
}
};//SpellAbility
final Command leaves = new Command() {
private static final long serialVersionUID = 8591474793502538215L;
public void execute() {
StringBuilder sb = new StringBuilder();
sb.append(card.getName()).append(" - reverting "+cloned[0].getName()+" to "+card.getName()+".");
copyBack.setStackDescription(sb.toString());
AllZone.Stack.add(copyBack);
}
};
final SpellAbility copy = new Spell(card) {
private static final long serialVersionUID = 4396978456522751312L;
@Override
public void resolve() {
if (card.getController().equals(AllZone.ComputerPlayer)) {
CardList AICreatures = AllZoneUtil.getCreaturesInPlay(AllZone.ComputerPlayer);
CardList PlayerCreatures = AllZoneUtil.getCreaturesInPlay(AllZone.HumanPlayer);
if (!AICreatures.isEmpty()) {
copyTarget[0] = AICreatures.iterator().next();
}
else if (!PlayerCreatures.isEmpty()) {
copyTarget[0] = PlayerCreatures.iterator().next();
}
}
if (copyTarget[0] != null) {
cloned[0] = cfact.getCard(copyTarget[0].getName(), card.getController());
cloned[0].setCloneOrigin(card);
cloned[0].addLeavesPlayCommand(leaves);
cloned[0].setBaseDefense(7);
cloned[0].setBaseAttack(7);
PlayerZone play = AllZone.getZone(Constant.Zone.Battlefield, card.getController());
play.add(cloned[0]);
card.setCurrentlyCloningCard(cloned[0]);
}
}
};//SpellAbility
Input runtime = new Input() {
private static final long serialVersionUID = 7625038074569687330L;
@Override
public void showMessage() {
AllZone.Display.showMessage(cardName+" - Select a creature on the battlefield");
}
@Override
public void selectCard(Card c, PlayerZone z) {
if( z.is(Constant.Zone.Battlefield) && c.isCreature()) {
copyTarget[0] = c;
stopSetNext(new Input_PayManaCost(copy));
}
}
};
card.clearSpellAbility();
card.addSpellAbility(copy);
copy.setStackDescription(cardName+" - enters the battlefield as a copy of selected card.");
copy.setBeforePayMana(runtime);
}//*************** END ************ END **************************
if(hasKeyword(card, "Level up") != -1 && hasKeyword(card, "maxLevel") != -1)
{