forked from External/mage
* Doubling Cube - Added support for possible mana calculation (related to #6698).
This commit is contained in:
parent
27db13605e
commit
c48331f216
15 changed files with 379 additions and 79 deletions
|
|
@ -8,6 +8,7 @@ package mage.abilities.mana;
|
|||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import mage.Mana;
|
||||
import mage.abilities.Ability;
|
||||
import mage.constants.ManaType;
|
||||
import mage.game.Game;
|
||||
|
||||
|
|
@ -25,6 +26,17 @@ public interface ManaAbility {
|
|||
* @return
|
||||
*/
|
||||
List<Mana> getNetMana(Game game);
|
||||
|
||||
/**
|
||||
* Used to check the possible mana production to determine which spells
|
||||
* and/or abilities can be used. (player.getPlayable()).
|
||||
* Only used for abilities were the poolDependant flag is set
|
||||
*
|
||||
* @param game
|
||||
* @param possibleManaInPool The possible mana already produced by other sources for this calculation option
|
||||
* @return
|
||||
*/
|
||||
List<Mana> getNetMana(Game game, Mana possibleManaInPool);
|
||||
|
||||
/**
|
||||
* The type of mana a permanent "could produce" is the type of mana that any
|
||||
|
|
@ -45,4 +57,16 @@ public interface ManaAbility {
|
|||
* @return
|
||||
*/
|
||||
boolean definesMana(Game game);
|
||||
|
||||
/**
|
||||
* Set to true if the ability is dependant from the mana pool. E.g. the more
|
||||
* mana the pool contains the more mana the ability can produce (Doubling
|
||||
* Cube). Therefore the use of that ability after other mana abilities does produce more mana.
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
boolean isPoolDependant();
|
||||
|
||||
ManaAbility setPoolDependant(boolean pooleDependant);
|
||||
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue