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);
This commit is contained in:
Oleg Agafonov 2020-09-13 09:56:55 +04:00
parent 586538a66c
commit 6e0c7e868c
17 changed files with 504 additions and 156 deletions

View file

@ -1,18 +1,15 @@
package mage.abilities.costs;
import mage.abilities.Ability;
import mage.game.Game;
/**
* Cost that can change ability's modes (example: Kicker or Entwine can make all modes selectabled).
*
* @author LevelX2
*/
public interface OptionalAdditionalModeSourceCosts {
void addOptionalAdditionalModeCosts(Ability ability, Game game);
public interface OptionalAdditionalModeSourceCosts extends OptionalAdditionalSourceCosts {
void changeModes(Ability ability, Game game);
String getCastMessageSuffix();
}