foul-magics/Mage/src/main/java/mage/abilities/keyword/MultikickerAbility.java
Oleg Agafonov 6e0c7e868c Additional and alternative costs improved:
* Now player must choose additional costs before ability's modes;
* Fixed broken kicker ability from ZNR (see comments from d4ca287f0f);
* Improved compatibility of additional cost with cost modification effects (fixed that optional multi-costs doesn't affected by cost modification);
* Improved compatibility of additional cost with alternative cost (some cards ignores additional cost on alternative usage, e.g. on play free);
2020-09-13 09:57:17 +04:00

43 lines
No EOL
1.4 KiB
Java

package mage.abilities.keyword;
import mage.abilities.condition.common.KickedCondition;
import mage.abilities.costs.Cost;
import mage.abilities.costs.OptionalAdditionalCost;
/**
*
* 20121001 702.31c Multikicker is a variant of the kicker ability. "Multikicker [cost]" means
* "You may pay an additional [cost] any number of times as you cast this spell."
* A multikicker cost is a kicker cost.
*
* @author LevelX2
*/
public class MultikickerAbility extends KickerAbility {
protected static final String MultikickerKeyword = "Multikicker";
protected static final String MultikickerReminder = "You may pay an additional {cost} any number of times as you cast this spell.";
public MultikickerAbility(String manaString) {
super(MultikickerKeyword, MultikickerReminder);
OptionalAdditionalCost multikickerCost = this.addKickerCost(manaString);
multikickerCost.setRepeatable(true);
}
public MultikickerAbility(Cost cost) {
super(MultikickerKeyword, MultikickerReminder);
OptionalAdditionalCost multikickerCost =this.addKickerCost(cost);
multikickerCost.setRepeatable(true);
}
public MultikickerAbility(final MultikickerAbility ability) {
super(ability);
}
@Override
public MultikickerAbility copy() {
return new MultikickerAbility(this);
}
}