Disciple of Kangee

I think that I have completed the Disciple of Kangee card. Target creature now gains flying and becomes blue until end of turn. I ran some tests and now realize that I am not sure if I understand the implementation.
Currently, I can change a white creature into a white and blue creature with a gold border. Is this correct?
Or should the blue replace the white until end of turn?
Currently, I can change a white creature into a white and blue creature with a gold border. Is this correct?
Or should the blue replace the white until end of turn?
- Code: Select all
Disciple of Kangee
2 W
Creature Wizard
no text
2/2
- Code: Select all
//*************** START *********** START **************************
else if(cardName.equals("Disciple of Kangee"))
{
final SpellAbility ability = new Ability_Tap(card, "U")
{
private static final long serialVersionUID = -5169389637917649036L;
public boolean canPlayAI()
{
if(CardFactoryUtil.AI_doesCreatureAttack(card))
return false;
return CardFactoryUtil.AI_getHumanCreature("Flying", card, false).isEmpty() &&
(getCreature().size() != 0);
}
public void chooseTargetAI()
{
card.tap();
Card target = CardFactoryUtil.AI_getBestCreature(getCreature());
setTargetCard(target);
}
CardList getCreature()
{
CardList list = new CardList(AllZone.Computer_Play.getCards());
list = list.filter(new CardListFilter()
{
public boolean addCard(Card c)
{
return c.isCreature() && (!CardFactoryUtil.AI_doesCreatureAttack(c)) &&
(! c.getKeyword().contains("Flying")) && CardFactoryUtil.canTarget(card, c);
}
});
list.remove(card);
return list;
}//getCreature()
public void resolve()
{
if(AllZone.GameAction.isCardInPlay(getTargetCard()) && CardFactoryUtil.canTarget(card, getTargetCard()) )
{
final Card[] creature = new Card[1];
final Command EOT = new Command()
{
private static final long serialVersionUID = -1899153704584793548L;
public void execute()
{
if(AllZone.GameAction.isCardInPlay(creature[0]))
{
creature[0].removeExtrinsicKeyword("Flying");
creature[0].removeExtrinsicKeyword(creature[0].getName() + " is blue.");
}
}
};
creature[0] = getTargetCard();
creature[0].addExtrinsicKeyword("Flying");
if(!creature[0].getManaCost().equals("U"))
{
creature[0].addExtrinsicKeyword(creature[0].getName() + " is blue.");
}
AllZone.EndOfTurn.addUntil(EOT);
}//if (card is in play)
}//resolve()
};//SpellAbility
card.addSpellAbility(ability);
ability.setDescription("U, tap: Target creature gains flying and becomes blue until end of turn.");
ability.setBeforePayMana(CardFactoryUtil.input_targetCreature(ability));
}//*************** END ************ END **************************