Some changes to the convoke ability.

This commit is contained in:
LevelX2 2012-12-03 15:28:26 +01:00
parent a6ac24c403
commit c8ae5fb9ca
4 changed files with 6 additions and 14 deletions

View file

@ -54,7 +54,7 @@ public class KavuPrimarch extends CardImpl<KavuPrimarch> {
this.toughness = new MageInt(3);
// Convoke (Each creature you tap while casting this spell reduces its cost by {1} or by one mana of that creature's color.)
this.addAbility(ConvokeAbility.getInstance());
this.addAbility(new ConvokeAbility());
// Kicker {4} (You may pay an additional {4} as you cast this spell.)
this.getSpellAbility().addOptionalCost(new KickerManaCost("{4}"));

View file

@ -58,7 +58,7 @@ public class AutochthonWurm extends CardImpl<AutochthonWurm> {
this.toughness = new MageInt(14);
// Convoke (Each creature you tap while casting this spell reduces its cost by {1} or by one mana of that creature's color.)
this.addAbility(ConvokeAbility.getInstance());
this.addAbility(new ConvokeAbility());
// Trample
this.addAbility(TrampleAbility.getInstance());

View file

@ -46,7 +46,7 @@ public class Overwhelm extends CardImpl<Overwhelm> {
this.expansionSetCode = "RAV";
// Convoke (Each creature you tap while casting this spell reduces its cost by {1} or by one mana of that creature's color.)
this.addAbility(ConvokeAbility.getInstance());
this.addAbility(new ConvokeAbility());
// Creatures you control get +3/+3 until end of turn.
this.getSpellAbility().addEffect(new BoostControlledEffect(3, 3, Duration.EndOfTurn));

View file

@ -88,31 +88,23 @@ import mage.util.CardUtil;
public class ConvokeAbility extends SimpleStaticAbility implements AdjustingSourceCosts {
private static ConvokeAbility fINSTANCE = new ConvokeAbility();
private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent();
static {
filter.add(Predicates.not(new TappedPredicate()));
}
private ConvokeAbility() {
public ConvokeAbility() {
super(Zone.STACK, null);
this.setRuleAtTheTop(true);
}
public static ConvokeAbility getInstance() {
if (fINSTANCE == null) {
fINSTANCE = new ConvokeAbility();
}
return fINSTANCE;
}
public ConvokeAbility(final ConvokeAbility ability) {
super(ability);
}
@Override
public SimpleStaticAbility copy() {
return fINSTANCE;
public ConvokeAbility copy() {
return new ConvokeAbility(this);
}
@Override