Started to implement a solution for effects that change words in rule text.

This commit is contained in:
LevelX2 2017-09-03 07:31:36 +02:00
parent e3f6a6b418
commit 66c69e51a3
14 changed files with 441 additions and 40 deletions

View file

@ -1,10 +1,15 @@
package mage;
import java.io.Serializable;
import java.util.EnumSet;
import java.util.List;
import java.util.UUID;
import mage.abilities.Abilities;
import mage.abilities.Ability;
import mage.abilities.costs.mana.ManaCost;
import mage.abilities.costs.mana.ManaCosts;
import mage.abilities.keyword.ChangelingAbility;
import mage.abilities.text.TextPart;
import mage.cards.Card;
import mage.cards.FrameStyle;
import mage.constants.CardType;
@ -14,10 +19,6 @@ import mage.game.Game;
import mage.game.events.ZoneChangeEvent;
import mage.util.SubTypeList;
import java.io.Serializable;
import java.util.EnumSet;
import java.util.UUID;
public interface MageObject extends MageItem, Serializable {
String getName();
@ -58,7 +59,6 @@ public interface MageObject extends MageItem, Serializable {
int getStartingLoyalty();
void adjustCosts(Ability ability, Game game);
void adjustTargets(Ability ability, Game game);
@ -85,7 +85,6 @@ public interface MageObject extends MageItem, Serializable {
void setZoneChangeCounter(int value, Game game);
default boolean isCreature() {
return getCardType().contains(CardType.CREATURE);
}
@ -163,7 +162,6 @@ public interface MageObject extends MageItem, Serializable {
return false;
}
default boolean shareSubtypes(Card otherCard, Game game) {
if (otherCard == null) {
@ -191,7 +189,15 @@ public interface MageObject extends MageItem, Serializable {
void setIsAllCreatureTypes(boolean value);
default void addCardTypes(EnumSet<CardType> cardType){
default void addCardTypes(EnumSet<CardType> cardType) {
getCardType().addAll(cardType);
}
List<TextPart> getTextParts();
TextPart addTextPart(TextPart textPart);
default void changeSubType(SubType fromSubType, SubType toSubType) {
}
}