Mutavault, Dragon Blood, Thran Dynamo

I am still in the process of tackling my to-make cardList
, so here's what I've been working on:
First, Mutavault(I think I promised that to someone in card requests):

First, Mutavault(I think I promised that to someone in card requests):
- Code: Select all
if(cardName.equals("Mutavault"))
{
final Command eot1 = new Command()
{
private static final long serialVersionUID = 5106629534549783845L;
public void execute()
{
Card c = card;
c.setBaseAttack(0);
c.setBaseDefense(0);
c.removeIntrinsicKeyword("Changeling");
c.removeType("Creature");
}
};
final SpellAbility a1 = new Ability(card, "1")
{
public boolean canPlayAI()
{
return false;
}
public void resolve()
{
Card c = card;
c.setBaseAttack(2);
c.setBaseDefense(2);
//to prevent like duplication like "Changeling Changeling Creature Creature"
if(! c.getIntrinsicKeyword().contains("Changeling"))
{
c.addIntrinsicKeyword("Changeling");
c.addType("Creature");
}
AllZone.EndOfTurn.addUntil(eot1);
}
};//SpellAbility
card.clearSpellAbility();
card.addSpellAbility(a1);
a1.setDescription("1: Mutavault becomes a 2/2 creature with all creature types until end of turn. It's still a land.");
a1.setStackDescription(card +" becomes a 2/2 creature with changeling until EOT");
Command paid1 = new Command() {
private static final long serialVersionUID = -601119544294387668L;
public void execute() {AllZone.Stack.add(a1);}
};
a1.setBeforePayMana(new Input_PayManaCost_Ability(a1.getManaCost(), paid1));
}
- Code: Select all
if(cardName.equals("Dragon Blood"))
{
Ability_Tap ability = new Ability_Tap(card, "3")
{
/**
*
*/
private static final long serialVersionUID = 1L;
public void resolve()
{
if(getTargetCard() != null && getTargetCard().isCreature())
getTargetCard().addCounter(Counters.P1P1,1);
}
public boolean canPlayAI()
{
CardList list = new CardList(AllZone.Computer_Play.getCards());
setTargetCard(CardFactoryUtil.AI_getBestCreature(list));
return (getTargetCard() != null);
}
};
ability.setBeforePayMana(CardFactoryUtil.input_targetCreature(ability));
ability.setDescription("3, T: Put a +1/+1 counter on target creature.");
ability.setStackDescription(card+": put a +1/+1 counter on target Creature.");
card.addSpellAbility(ability);
}
- Code: Select all
Thran Dynamo
4
Artifact
no text
tap: add 3
Dragon Blood
3
Artifact
no text
Mutavault
no cost
Land
no text
tap: add 1