rename classes (#10383)

This commit is contained in:
Evan Kranzler 2023-05-17 18:49:30 -04:00 committed by GitHub
parent d199640fb5
commit 60e488cf05
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
123 changed files with 356 additions and 378 deletions

View file

@ -515,12 +515,12 @@ public class DownloadPicturesService extends DefaultBoundedRangeModel implements
url.setType2(isType2); url.setType2(isType2);
allCardsUrls.add(url); allCardsUrls.add(url);
} }
if (card.isModalDoubleFacesCard()) { if (card.isModalDoubleFacedCard()) {
if (card.getModalDoubleFacesSecondSideName() == null || card.getModalDoubleFacesSecondSideName().trim().isEmpty()) { if (card.getModalDoubleFacedSecondSideName() == null || card.getModalDoubleFacedSecondSideName().trim().isEmpty()) {
throw new IllegalStateException("MDF card can't have empty name."); throw new IllegalStateException("MDF card can't have empty name.");
} }
CardDownloadData cardDownloadData = new CardDownloadData( CardDownloadData cardDownloadData = new CardDownloadData(
card.getModalDoubleFacesSecondSideName(), card.getModalDoubleFacedSecondSideName(),
card.getSetCode(), card.getSetCode(),
card.getCardNumber(), card.getCardNumber(),
card.usesVariousArt(), card.usesVariousArt(),

View file

@ -109,7 +109,7 @@ public class CardView extends SimpleCardView {
protected List<String> rightSplitRules; protected List<String> rightSplitRules;
protected String rightSplitTypeLine; protected String rightSplitTypeLine;
protected boolean isModalDoubleFacesCard; protected boolean isModalDoubleFacedCard;
protected ArtRect artRect = ArtRect.NORMAL; protected ArtRect artRect = ArtRect.NORMAL;
@ -217,7 +217,7 @@ public class CardView extends SimpleCardView {
this.rightSplitRules = cardView.rightSplitRules == null ? null : new ArrayList<>(cardView.rightSplitRules); this.rightSplitRules = cardView.rightSplitRules == null ? null : new ArrayList<>(cardView.rightSplitRules);
this.rightSplitTypeLine = cardView.rightSplitTypeLine; this.rightSplitTypeLine = cardView.rightSplitTypeLine;
this.isModalDoubleFacesCard = cardView.isModalDoubleFacesCard; this.isModalDoubleFacedCard = cardView.isModalDoubleFacedCard;
this.artRect = cardView.artRect; this.artRect = cardView.artRect;
this.targets = cardView.targets == null ? null : new ArrayList<>(cardView.targets); this.targets = cardView.targets == null ? null : new ArrayList<>(cardView.targets);
@ -373,9 +373,9 @@ public class CardView extends SimpleCardView {
fullCardName = card.getName(); // split card contains full name as normal fullCardName = card.getName(); // split card contains full name as normal
this.manaCostLeftStr = String.join("", splitCard.getLeftHalfCard().getManaCostSymbols()); this.manaCostLeftStr = String.join("", splitCard.getLeftHalfCard().getManaCostSymbols());
this.manaCostRightStr = String.join("", splitCard.getRightHalfCard().getManaCostSymbols()); this.manaCostRightStr = String.join("", splitCard.getRightHalfCard().getManaCostSymbols());
} else if (card instanceof ModalDoubleFacesCard) { } else if (card instanceof ModalDoubleFacedCard) {
this.isModalDoubleFacesCard = true; this.isModalDoubleFacedCard = true;
ModalDoubleFacesCard mainCard = ((ModalDoubleFacesCard) card); ModalDoubleFacedCard mainCard = ((ModalDoubleFacedCard) card);
fullCardName = mainCard.getLeftHalfCard().getName() + MockCard.MODAL_DOUBLE_FACES_NAME_SEPARATOR + mainCard.getRightHalfCard().getName(); fullCardName = mainCard.getLeftHalfCard().getName() + MockCard.MODAL_DOUBLE_FACES_NAME_SEPARATOR + mainCard.getRightHalfCard().getName();
this.manaCostLeftStr = String.join("", mainCard.getLeftHalfCard().getManaCostSymbols()); this.manaCostLeftStr = String.join("", mainCard.getLeftHalfCard().getManaCostSymbols());
this.manaCostRightStr = String.join("", mainCard.getRightHalfCard().getManaCostSymbols()); this.manaCostRightStr = String.join("", mainCard.getRightHalfCard().getManaCostSymbols());
@ -508,9 +508,9 @@ public class CardView extends SimpleCardView {
this.alternateName = card.getFlipCardName(); this.alternateName = card.getFlipCardName();
} }
if (card instanceof ModalDoubleFacesCard) { if (card instanceof ModalDoubleFacedCard) {
this.transformable = true; // enable GUI day/night button this.transformable = true; // enable GUI day/night button
ModalDoubleFacesCard mdfCard = (ModalDoubleFacesCard) card; ModalDoubleFacedCard mdfCard = (ModalDoubleFacedCard) card;
this.secondCardFace = new CardView(mdfCard.getRightHalfCard(), game); this.secondCardFace = new CardView(mdfCard.getRightHalfCard(), game);
this.alternateName = mdfCard.getRightHalfCard().getName(); this.alternateName = mdfCard.getRightHalfCard().getName();
} }

View file

@ -206,9 +206,9 @@ public class TinyLeaders extends Constructed {
if (card instanceof SplitCard) { if (card instanceof SplitCard) {
costs.add(((SplitCard) card).getLeftHalfCard().getManaValue()); costs.add(((SplitCard) card).getLeftHalfCard().getManaValue());
costs.add(((SplitCard) card).getRightHalfCard().getManaValue()); costs.add(((SplitCard) card).getRightHalfCard().getManaValue());
} else if (card instanceof ModalDoubleFacesCard) { } else if (card instanceof ModalDoubleFacedCard) {
costs.add(((ModalDoubleFacesCard) card).getLeftHalfCard().getManaValue()); costs.add(((ModalDoubleFacedCard) card).getLeftHalfCard().getManaValue());
costs.add(((ModalDoubleFacesCard) card).getRightHalfCard().getManaValue()); costs.add(((ModalDoubleFacedCard) card).getRightHalfCard().getManaValue());
} else { } else {
costs.add(card.getManaValue()); costs.add(card.getManaValue());
} }

View file

@ -1257,10 +1257,10 @@ public class HumanPlayer extends PlayerImpl {
MageObject object = game.getObject(response.getUUID()); MageObject object = game.getObject(response.getUUID());
// mdf cards // mdf cards
if (object instanceof ModalDoubleFacesCardHalf) { if (object instanceof ModalDoubleFacedCardHalf) {
if (!Zone.BATTLEFIELD.equals(game.getState().getZone(object.getId())) if (!Zone.BATTLEFIELD.equals(game.getState().getZone(object.getId()))
&& !Zone.STACK.equals(game.getState().getZone(object.getId()))) { && !Zone.STACK.equals(game.getState().getZone(object.getId()))) {
return ((ModalDoubleFacesCardHalf) object).getMainCard().getId(); return ((ModalDoubleFacedCardHalf) object).getMainCard().getId();
} }
} }
@ -2217,7 +2217,7 @@ public class HumanPlayer extends PlayerImpl {
if (mainCard != null && !Zone.BATTLEFIELD.equals(game.getState().getZone(mainCard.getId()))) { if (mainCard != null && !Zone.BATTLEFIELD.equals(game.getState().getZone(mainCard.getId()))) {
if (mainCard instanceof SplitCard if (mainCard instanceof SplitCard
|| mainCard instanceof AdventureCard || mainCard instanceof AdventureCard
|| mainCard instanceof ModalDoubleFacesCard) { || mainCard instanceof ModalDoubleFacedCard) {
return false; return false;
} }
} }

View file

@ -9,7 +9,7 @@ import mage.abilities.effects.common.TapSourceUnlessPaysEffect;
import mage.abilities.mana.BlackManaAbility; import mage.abilities.mana.BlackManaAbility;
import mage.cards.Card; import mage.cards.Card;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
import mage.filter.FilterCard; import mage.filter.FilterCard;
@ -25,7 +25,7 @@ import java.util.stream.Collectors;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class AgadeemsAwakening extends ModalDoubleFacesCard { public final class AgadeemsAwakening extends ModalDoubleFacedCard {
public AgadeemsAwakening(UUID ownerId, CardSetInfo setInfo) { public AgadeemsAwakening(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -5,7 +5,7 @@ import mage.abilities.common.EntersBattlefieldTappedAbility;
import mage.abilities.keyword.TrampleAbility; import mage.abilities.keyword.TrampleAbility;
import mage.abilities.mana.RedManaAbility; import mage.abilities.mana.RedManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
@ -14,7 +14,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class AkoumWarrior extends ModalDoubleFacesCard { public final class AkoumWarrior extends ModalDoubleFacedCard {
public AkoumWarrior(UUID ownerId, CardSetInfo setInfo) { public AkoumWarrior(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -31,7 +31,7 @@ import java.util.UUID;
/** /**
* @author jeffwadsworth * @author jeffwadsworth
*/ */
public final class AlrundGodOfTheCosmos extends ModalDoubleFacesCard { public final class AlrundGodOfTheCosmos extends ModalDoubleFacedCard {
public AlrundGodOfTheCosmos(UUID ownerId, CardSetInfo setInfo) { public AlrundGodOfTheCosmos(UUID ownerId, CardSetInfo setInfo) {
super( super(

View file

@ -12,8 +12,8 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.Cards; import mage.cards.Cards;
import mage.cards.CardsImpl; import mage.cards.CardsImpl;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.cards.ModalDoubleFacesCardHalf; import mage.cards.ModalDoubleFacedCardHalf;
import mage.choices.Choice; import mage.choices.Choice;
import mage.choices.ChoiceImpl; import mage.choices.ChoiceImpl;
import mage.constants.AsThoughEffectType; import mage.constants.AsThoughEffectType;
@ -115,8 +115,8 @@ class AminatousAuguryEffect extends OneShotEffect {
// TODO staticFilters must be configured to check the main card face (Ex: MDFC card like Sea Gate Restoration does not count as a land if face up) // TODO staticFilters must be configured to check the main card face (Ex: MDFC card like Sea Gate Restoration does not count as a land if face up)
for (Card card : cardsToCast.getCards(game)) { for (Card card : cardsToCast.getCards(game)) {
// ex: Sea Gate Restoration bug #9956 // ex: Sea Gate Restoration bug #9956
if (card instanceof ModalDoubleFacesCard) { if (card instanceof ModalDoubleFacedCard) {
ModalDoubleFacesCardHalf leftHalfCard = ((ModalDoubleFacesCard) card).getLeftHalfCard(); ModalDoubleFacedCardHalf leftHalfCard = ((ModalDoubleFacedCard) card).getLeftHalfCard();
if (leftHalfCard != null if (leftHalfCard != null
&& !leftHalfCard.isLand(game)) { && !leftHalfCard.isLand(game)) {
AminatousAuguryCastFromExileEffect effect = new AminatousAuguryCastFromExileEffect(); AminatousAuguryCastFromExileEffect effect = new AminatousAuguryCastFromExileEffect();

View file

@ -10,7 +10,7 @@ import mage.abilities.effects.common.continuous.BoostSourceEffect;
import mage.abilities.hint.common.LandsYouControlHint; import mage.abilities.hint.common.LandsYouControlHint;
import mage.abilities.keyword.TrampleAbility; import mage.abilities.keyword.TrampleAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.*; import mage.constants.*;
import mage.filter.StaticFilters; import mage.filter.StaticFilters;
import mage.game.Game; import mage.game.Game;
@ -24,7 +24,7 @@ import java.util.UUID;
* *
* @author htrajan * @author htrajan
*/ */
public final class AugmenterPugilist extends ModalDoubleFacesCard { public final class AugmenterPugilist extends ModalDoubleFacedCard {
public AugmenterPugilist(UUID ownerId, CardSetInfo setInfo) { public AugmenterPugilist(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -4,7 +4,7 @@ import mage.abilities.common.EntersBattlefieldTappedAbility;
import mage.abilities.effects.common.ReturnFromGraveyardToHandTargetEffect; import mage.abilities.effects.common.ReturnFromGraveyardToHandTargetEffect;
import mage.abilities.mana.GreenManaAbility; import mage.abilities.mana.GreenManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
import mage.target.common.TargetCardInYourGraveyard; import mage.target.common.TargetCardInYourGraveyard;
@ -14,7 +14,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class BalaGedRecovery extends ModalDoubleFacesCard { public final class BalaGedRecovery extends ModalDoubleFacedCard {
public BalaGedRecovery(UUID ownerId, CardSetInfo setInfo) { public BalaGedRecovery(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -2,12 +2,10 @@ package mage.cards.b;
import java.util.UUID; import java.util.UUID;
import mage.abilities.mana.BlackManaAbility;
import mage.abilities.mana.BlueManaAbility; import mage.abilities.mana.BlueManaAbility;
import mage.abilities.mana.GreenManaAbility; import mage.abilities.mana.GreenManaAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
@ -15,7 +13,7 @@ import mage.constants.SubType;
* *
* @author TheElk801 * @author TheElk801
*/ */
public final class BarkchannelPathway extends ModalDoubleFacesCard { public final class BarkchannelPathway extends ModalDoubleFacedCard {
public BarkchannelPathway(UUID ownerId, CardSetInfo setInfo) { public BarkchannelPathway(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -4,7 +4,7 @@ import mage.abilities.common.EntersBattlefieldTappedAbility;
import mage.abilities.effects.common.continuous.BoostOpponentsEffect; import mage.abilities.effects.common.continuous.BoostOpponentsEffect;
import mage.abilities.mana.BlueManaAbility; import mage.abilities.mana.BlueManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.Duration; import mage.constants.Duration;
import mage.constants.SubType; import mage.constants.SubType;
@ -14,7 +14,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class BeyeenVeil extends ModalDoubleFacesCard { public final class BeyeenVeil extends ModalDoubleFacedCard {
public BeyeenVeil(UUID ownerId, CardSetInfo setInfo) { public BeyeenVeil(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -10,7 +10,7 @@ import mage.abilities.effects.OneShotEffect;
import mage.abilities.effects.common.ExileTopXMayPlayUntilEndOfTurnEffect; import mage.abilities.effects.common.ExileTopXMayPlayUntilEndOfTurnEffect;
import mage.abilities.keyword.BoastAbility; import mage.abilities.keyword.BoastAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.*; import mage.constants.*;
import mage.game.Game; import mage.game.Game;
import mage.players.Player; import mage.players.Player;
@ -20,7 +20,7 @@ import java.util.UUID;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
public final class BirgiGodOfStorytelling extends ModalDoubleFacesCard { public final class BirgiGodOfStorytelling extends ModalDoubleFacedCard {
public BirgiGodOfStorytelling(UUID ownerId, CardSetInfo setInfo) { public BirgiGodOfStorytelling(UUID ownerId, CardSetInfo setInfo) {
super( super(

View file

@ -9,7 +9,7 @@ import mage.abilities.effects.common.continuous.BoostSourceEffect;
import mage.abilities.keyword.MenaceAbility; import mage.abilities.keyword.MenaceAbility;
import mage.abilities.mana.BlackManaAbility; import mage.abilities.mana.BlackManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.Duration; import mage.constants.Duration;
import mage.constants.SubType; import mage.constants.SubType;
@ -19,7 +19,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class BlackbloomRogue extends ModalDoubleFacesCard { public final class BlackbloomRogue extends ModalDoubleFacedCard {
public BlackbloomRogue(UUID ownerId, CardSetInfo setInfo) { public BlackbloomRogue(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -10,7 +10,7 @@ import mage.abilities.effects.common.LookLibraryAndPickControllerEffect;
import mage.abilities.effects.common.continuous.BoostControlledEffect; import mage.abilities.effects.common.continuous.BoostControlledEffect;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.Cards; import mage.cards.Cards;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.*; import mage.constants.*;
import mage.filter.common.FilterCreaturePermanent; import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.Predicates; import mage.filter.predicate.Predicates;
@ -22,7 +22,7 @@ import java.util.UUID;
/** /**
* @author weirddan455 * @author weirddan455
*/ */
public final class BlexVexingPest extends ModalDoubleFacesCard { public final class BlexVexingPest extends ModalDoubleFacedCard {
private static final FilterCreaturePermanent filter private static final FilterCreaturePermanent filter
= new FilterCreaturePermanent("Pests, Bats, Insects, Snakes, and Spiders"); = new FilterCreaturePermanent("Pests, Bats, Insects, Snakes, and Spiders");

View file

@ -3,7 +3,7 @@ package mage.cards.b;
import mage.abilities.mana.BlackManaAbility; import mage.abilities.mana.BlackManaAbility;
import mage.abilities.mana.RedManaAbility; import mage.abilities.mana.RedManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
@ -12,7 +12,7 @@ import java.util.UUID;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
public final class BlightstepPathway extends ModalDoubleFacesCard { public final class BlightstepPathway extends ModalDoubleFacedCard {
public BlightstepPathway(UUID ownerId, CardSetInfo setInfo) { public BlightstepPathway(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -3,7 +3,7 @@ package mage.cards.b;
import mage.abilities.mana.GreenManaAbility; import mage.abilities.mana.GreenManaAbility;
import mage.abilities.mana.WhiteManaAbility; import mage.abilities.mana.WhiteManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
@ -12,7 +12,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class BranchloftPathway extends ModalDoubleFacesCard { public final class BranchloftPathway extends ModalDoubleFacedCard {
public BranchloftPathway(UUID ownerId, CardSetInfo setInfo) { public BranchloftPathway(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -3,7 +3,7 @@ package mage.cards.b;
import mage.abilities.mana.BlackManaAbility; import mage.abilities.mana.BlackManaAbility;
import mage.abilities.mana.WhiteManaAbility; import mage.abilities.mana.WhiteManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
@ -12,7 +12,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class BrightclimbPathway extends ModalDoubleFacesCard { public final class BrightclimbPathway extends ModalDoubleFacedCard {
public BrightclimbPathway(UUID ownerId, CardSetInfo setInfo) { public BrightclimbPathway(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -3,7 +3,7 @@ package mage.cards.c;
import mage.abilities.mana.BlackManaAbility; import mage.abilities.mana.BlackManaAbility;
import mage.abilities.mana.BlueManaAbility; import mage.abilities.mana.BlueManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
@ -12,7 +12,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class ClearwaterPathway extends ModalDoubleFacesCard { public final class ClearwaterPathway extends ModalDoubleFacedCard {
public ClearwaterPathway(UUID ownerId, CardSetInfo setInfo) { public ClearwaterPathway(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -28,7 +28,7 @@ import java.util.stream.Collectors;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
public final class CosimaGodOfTheVoyage extends ModalDoubleFacesCard { public final class CosimaGodOfTheVoyage extends ModalDoubleFacedCard {
private static final FilterPermanent filter = new FilterControlledPermanent(SubType.VEHICLE, "a Vehicle you control"); private static final FilterPermanent filter = new FilterControlledPermanent(SubType.VEHICLE, "a Vehicle you control");

View file

@ -4,7 +4,7 @@ import mage.abilities.keyword.TransformAbility;
import mage.abilities.mana.GreenManaAbility; import mage.abilities.mana.GreenManaAbility;
import mage.abilities.mana.RedManaAbility; import mage.abilities.mana.RedManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
@ -13,7 +13,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class CragcrownPathway extends ModalDoubleFacesCard { public final class CragcrownPathway extends ModalDoubleFacedCard {
public CragcrownPathway(UUID ownerId, CardSetInfo setInfo) { public CragcrownPathway(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -3,7 +3,7 @@ package mage.cards.d;
import mage.abilities.mana.BlackManaAbility; import mage.abilities.mana.BlackManaAbility;
import mage.abilities.mana.GreenManaAbility; import mage.abilities.mana.GreenManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
@ -12,7 +12,7 @@ import java.util.UUID;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
public final class DarkborePathway extends ModalDoubleFacesCard { public final class DarkborePathway extends ModalDoubleFacedCard {
public DarkborePathway(UUID ownerId, CardSetInfo setInfo) { public DarkborePathway(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -77,9 +77,9 @@ class DeceiverOfFormEffect extends OneShotEffect {
for (Permanent permanent : game.getBattlefield().getAllActivePermanents(StaticFilters.FILTER_PERMANENT_CREATURE, controller.getId(), game)) { for (Permanent permanent : game.getBattlefield().getAllActivePermanents(StaticFilters.FILTER_PERMANENT_CREATURE, controller.getId(), game)) {
if (!permanent.getId().equals(sourceObject.getId())) { if (!permanent.getId().equals(sourceObject.getId())) {
// handle MDFC // handle MDFC
if (cardFromTop instanceof ModalDoubleFacesCard if (cardFromTop instanceof ModalDoubleFacedCard
&& ((ModalDoubleFacesCard) cardFromTop).getLeftHalfCard().isCreature(game)) { && ((ModalDoubleFacedCard) cardFromTop).getLeftHalfCard().isCreature(game)) {
copyFromCard = ((ModalDoubleFacesCard) cardFromTop).getLeftHalfCard(); copyFromCard = ((ModalDoubleFacedCard) cardFromTop).getLeftHalfCard();
} }
Permanent newBluePrint = null; Permanent newBluePrint = null;
newBluePrint = new PermanentCard(copyFromCard, source.getControllerId(), game); newBluePrint = new PermanentCard(copyFromCard, source.getControllerId(), game);

View file

@ -8,7 +8,7 @@ import mage.abilities.effects.common.ReturnToHandTargetEffect;
import mage.abilities.keyword.FlyingAbility; import mage.abilities.keyword.FlyingAbility;
import mage.cards.CardImpl; import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.cards.SplitCard; import mage.cards.SplitCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SpellAbilityType; import mage.constants.SpellAbilityType;
@ -69,8 +69,8 @@ class DoubleHeaderPredicate implements Predicate<MageObject> {
String name = input.getName(); String name = input.getName();
if (input instanceof SplitCard) { if (input instanceof SplitCard) {
return hasTwoWords(((SplitCard) input).getLeftHalfCard().getName()) || hasTwoWords(((SplitCard) input).getRightHalfCard().getName()); return hasTwoWords(((SplitCard) input).getLeftHalfCard().getName()) || hasTwoWords(((SplitCard) input).getRightHalfCard().getName());
} else if (input instanceof ModalDoubleFacesCard) { } else if (input instanceof ModalDoubleFacedCard) {
return hasTwoWords(((ModalDoubleFacesCard) input).getLeftHalfCard().getName()) || hasTwoWords(((ModalDoubleFacesCard) input).getRightHalfCard().getName()); return hasTwoWords(((ModalDoubleFacedCard) input).getLeftHalfCard().getName()) || hasTwoWords(((ModalDoubleFacedCard) input).getRightHalfCard().getName());
} else if (input instanceof Spell && ((Spell) input).getSpellAbility().getSpellAbilityType() == SpellAbilityType.SPLIT_FUSED) { } else if (input instanceof Spell && ((Spell) input).getSpellAbility().getSpellAbilityType() == SpellAbilityType.SPLIT_FUSED) {
SplitCard card = (SplitCard) ((Spell) input).getCard(); SplitCard card = (SplitCard) ((Spell) input).getCard();
return hasTwoWords(card.getLeftHalfCard().getName()) || hasTwoWords(card.getRightHalfCard().getName()); return hasTwoWords(card.getLeftHalfCard().getName()) || hasTwoWords(card.getRightHalfCard().getName());

View file

@ -182,8 +182,8 @@ class DraugrNecromancerSpendAnyManaEffect extends AsThoughEffectImpl implements
cardState = game.getLastKnownInformationCard(card.getId(), Zone.EXILED); cardState = game.getLastKnownInformationCard(card.getId(), Zone.EXILED);
} else if (card instanceof AdventureCard) { } else if (card instanceof AdventureCard) {
cardState = game.getLastKnownInformationCard(card.getId(), Zone.EXILED); cardState = game.getLastKnownInformationCard(card.getId(), Zone.EXILED);
} else if (card instanceof ModalDoubleFacesCard) { } else if (card instanceof ModalDoubleFacedCard) {
cardState = game.getLastKnownInformationCard(((ModalDoubleFacesCard) card).getLeftHalfCard().getId(), Zone.EXILED); cardState = game.getLastKnownInformationCard(((ModalDoubleFacedCard) card).getLeftHalfCard().getId(), Zone.EXILED);
} else { } else {
cardState = game.getLastKnownInformationCard(card.getId(), Zone.EXILED); cardState = game.getLastKnownInformationCard(card.getId(), Zone.EXILED);
} }

View file

@ -89,13 +89,13 @@ class DreamDevourerAddAbilityEffect extends ContinuousEffectImpl {
String leftHalfCost = CardUtil.reduceCost(((SplitCard) card).getLeftHalfCard().getManaCost(), 2).getText(); String leftHalfCost = CardUtil.reduceCost(((SplitCard) card).getLeftHalfCard().getManaCost(), 2).getText();
String rightHalfCost = CardUtil.reduceCost(((SplitCard) card).getRightHalfCard().getManaCost(), 2).getText(); String rightHalfCost = CardUtil.reduceCost(((SplitCard) card).getRightHalfCard().getManaCost(), 2).getText();
foretellAbility = new ForetellAbility(card, leftHalfCost, rightHalfCost); foretellAbility = new ForetellAbility(card, leftHalfCost, rightHalfCost);
} else if (card instanceof ModalDoubleFacesCard) { } else if (card instanceof ModalDoubleFacedCard) {
ModalDoubleFacesCardHalf leftHalfCard = ((ModalDoubleFacesCard) card).getLeftHalfCard(); ModalDoubleFacedCardHalf leftHalfCard = ((ModalDoubleFacedCard) card).getLeftHalfCard();
// If front side of MDFC is land, do nothing as Dream Devourer does not apply to lands // If front side of MDFC is land, do nothing as Dream Devourer does not apply to lands
// MDFC cards in hand are considered lands if front side is land // MDFC cards in hand are considered lands if front side is land
if (!leftHalfCard.isLand(game)) { if (!leftHalfCard.isLand(game)) {
String leftHalfCost = CardUtil.reduceCost(leftHalfCard.getManaCost(), 2).getText(); String leftHalfCost = CardUtil.reduceCost(leftHalfCard.getManaCost(), 2).getText();
ModalDoubleFacesCardHalf rightHalfCard = ((ModalDoubleFacesCard) card).getRightHalfCard(); ModalDoubleFacedCardHalf rightHalfCard = ((ModalDoubleFacedCard) card).getRightHalfCard();
if (rightHalfCard.isLand(game)) { if (rightHalfCard.isLand(game)) {
foretellAbility = new ForetellAbility(card, leftHalfCost); foretellAbility = new ForetellAbility(card, leftHalfCost);
} else { } else {

View file

@ -86,13 +86,13 @@ class EdginLarcenousLutenistEffect extends ContinuousEffectImpl {
String leftHalfCost = CardUtil.reduceCost(((SplitCard) card).getLeftHalfCard().getManaCost(), 2).getText(); String leftHalfCost = CardUtil.reduceCost(((SplitCard) card).getLeftHalfCard().getManaCost(), 2).getText();
String rightHalfCost = CardUtil.reduceCost(((SplitCard) card).getRightHalfCard().getManaCost(), 2).getText(); String rightHalfCost = CardUtil.reduceCost(((SplitCard) card).getRightHalfCard().getManaCost(), 2).getText();
foretellAbility = new ForetellAbility(card, leftHalfCost, rightHalfCost); foretellAbility = new ForetellAbility(card, leftHalfCost, rightHalfCost);
} else if (card instanceof ModalDoubleFacesCard) { } else if (card instanceof ModalDoubleFacedCard) {
ModalDoubleFacesCardHalf leftHalfCard = ((ModalDoubleFacesCard) card).getLeftHalfCard(); ModalDoubleFacedCardHalf leftHalfCard = ((ModalDoubleFacedCard) card).getLeftHalfCard();
// If front side of MDFC is land, do nothing as Dream Devourer does not apply to lands // If front side of MDFC is land, do nothing as Dream Devourer does not apply to lands
// MDFC cards in hand are considered lands if front side is land // MDFC cards in hand are considered lands if front side is land
if (!leftHalfCard.isLand(game)) { if (!leftHalfCard.isLand(game)) {
String leftHalfCost = CardUtil.reduceCost(leftHalfCard.getManaCost(), 2).getText(); String leftHalfCost = CardUtil.reduceCost(leftHalfCard.getManaCost(), 2).getText();
ModalDoubleFacesCardHalf rightHalfCard = ((ModalDoubleFacesCard) card).getRightHalfCard(); ModalDoubleFacedCardHalf rightHalfCard = ((ModalDoubleFacedCard) card).getRightHalfCard();
if (rightHalfCard.isLand(game)) { if (rightHalfCard.isLand(game)) {
foretellAbility = new ForetellAbility(card, leftHalfCost); foretellAbility = new ForetellAbility(card, leftHalfCost);
} else { } else {

View file

@ -13,7 +13,7 @@ import mage.abilities.effects.common.MillCardsControllerEffect;
import mage.abilities.effects.common.SacrificeSourceEffect; import mage.abilities.effects.common.SacrificeSourceEffect;
import mage.abilities.keyword.DeathtouchAbility; import mage.abilities.keyword.DeathtouchAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.*; import mage.constants.*;
import mage.filter.StaticFilters; import mage.filter.StaticFilters;
import mage.target.common.TargetCardInYourGraveyard; import mage.target.common.TargetCardInYourGraveyard;
@ -23,7 +23,7 @@ import java.util.UUID;
/** /**
* @author weirddan455 * @author weirddan455
*/ */
public final class EgonGodOfDeath extends ModalDoubleFacesCard { public final class EgonGodOfDeath extends ModalDoubleFacedCard {
public EgonGodOfDeath(UUID ownerId, CardSetInfo setInfo) { public EgonGodOfDeath(UUID ownerId, CardSetInfo setInfo) {
super( super(

View file

@ -8,7 +8,7 @@ import mage.abilities.effects.common.continuous.GainAbilityAllEffect;
import mage.abilities.keyword.IndestructibleAbility; import mage.abilities.keyword.IndestructibleAbility;
import mage.abilities.mana.WhiteManaAbility; import mage.abilities.mana.WhiteManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.Duration; import mage.constants.Duration;
import mage.constants.SubType; import mage.constants.SubType;
@ -22,7 +22,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class EmeriasCall extends ModalDoubleFacesCard { public final class EmeriasCall extends ModalDoubleFacedCard {
private static final FilterPermanent filter private static final FilterPermanent filter
= new FilterControlledCreaturePermanent("Non-Angel creatures you control"); = new FilterControlledCreaturePermanent("Non-Angel creatures you control");

View file

@ -20,7 +20,7 @@ import java.util.UUID;
/** /**
* @author weirddan455 * @author weirddan455
*/ */
public final class EsikaGodOfTheTree extends ModalDoubleFacesCard { public final class EsikaGodOfTheTree extends ModalDoubleFacedCard {
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("legendary creatures"); private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("legendary creatures");

View file

@ -4,10 +4,8 @@ import java.util.UUID;
import mage.MageInt; import mage.MageInt;
import mage.MageObjectReference; import mage.MageObjectReference;
import mage.abilities.Ability; import mage.abilities.Ability;
import mage.abilities.TriggeredAbilityImpl;
import mage.abilities.common.EntersBattlefieldOrAttacksSourceTriggeredAbility; import mage.abilities.common.EntersBattlefieldOrAttacksSourceTriggeredAbility;
import mage.abilities.effects.ContinuousEffect; import mage.abilities.effects.ContinuousEffect;
import mage.abilities.effects.Effect;
import mage.abilities.effects.OneShotEffect; import mage.abilities.effects.OneShotEffect;
import mage.abilities.keyword.FlyingAbility; import mage.abilities.keyword.FlyingAbility;
import mage.abilities.keyword.ForetellAbility; import mage.abilities.keyword.ForetellAbility;
@ -15,17 +13,15 @@ import mage.cards.AdventureCard;
import mage.cards.Card; import mage.cards.Card;
import mage.cards.CardImpl; import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.cards.ModalDoubleFacesCardHalf; import mage.cards.ModalDoubleFacedCardHalf;
import mage.cards.SplitCard; import mage.cards.SplitCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.Outcome; import mage.constants.Outcome;
import mage.constants.SubType; import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.FilterCard; import mage.filter.FilterCard;
import mage.game.Game; import mage.game.Game;
import mage.game.events.GameEvent; import mage.game.events.GameEvent;
import mage.game.permanent.Permanent;
import mage.players.Player; import mage.players.Player;
import mage.target.common.TargetCardInHand; import mage.target.common.TargetCardInHand;
import mage.util.CardUtil; import mage.util.CardUtil;
@ -105,12 +101,12 @@ class EtherealValkyrieEffect extends OneShotEffect {
game.getState().setValue(exileCard.getMainCard().getId().toString() + "Foretell Cost", leftHalfCost); game.getState().setValue(exileCard.getMainCard().getId().toString() + "Foretell Cost", leftHalfCost);
game.getState().setValue(exileCard.getMainCard().getId().toString() + "Foretell Split Cost", rightHalfCost); game.getState().setValue(exileCard.getMainCard().getId().toString() + "Foretell Split Cost", rightHalfCost);
foretellAbility = new ForetellAbility(exileCard, leftHalfCost, rightHalfCost); foretellAbility = new ForetellAbility(exileCard, leftHalfCost, rightHalfCost);
} else if (exileCard instanceof ModalDoubleFacesCard) { } else if (exileCard instanceof ModalDoubleFacedCard) {
ModalDoubleFacesCardHalf leftHalfCard = ((ModalDoubleFacesCard) exileCard).getLeftHalfCard(); ModalDoubleFacedCardHalf leftHalfCard = ((ModalDoubleFacedCard) exileCard).getLeftHalfCard();
if (!leftHalfCard.isLand(game)) { // Only MDFC cards with a left side a land have a land on the right side too if (!leftHalfCard.isLand(game)) { // Only MDFC cards with a left side a land have a land on the right side too
String leftHalfCost = CardUtil.reduceCost(leftHalfCard.getManaCost(), 2).getText(); String leftHalfCost = CardUtil.reduceCost(leftHalfCard.getManaCost(), 2).getText();
game.getState().setValue(exileCard.getMainCard().getId().toString() + "Foretell Cost", leftHalfCost); game.getState().setValue(exileCard.getMainCard().getId().toString() + "Foretell Cost", leftHalfCost);
ModalDoubleFacesCardHalf rightHalfCard = ((ModalDoubleFacesCard) exileCard).getRightHalfCard(); ModalDoubleFacedCardHalf rightHalfCard = ((ModalDoubleFacedCard) exileCard).getRightHalfCard();
if (rightHalfCard.isLand(game)) { if (rightHalfCard.isLand(game)) {
foretellAbility = new ForetellAbility(exileCard, leftHalfCost); foretellAbility = new ForetellAbility(exileCard, leftHalfCost);
} else { } else {

View file

@ -174,8 +174,8 @@ class EvelynTheCovetousManaEffect extends AsThoughEffectImpl implements AsThough
&& EvelynTheCovetousWatcher.checkExile(affectedControllerId, card, game, 0); && EvelynTheCovetousWatcher.checkExile(affectedControllerId, card, game, 0);
} }
CardState cardState; CardState cardState;
if (card instanceof ModalDoubleFacesCard) { if (card instanceof ModalDoubleFacedCard) {
cardState = game.getLastKnownInformationCard(((ModalDoubleFacesCard) card).getLeftHalfCard().getId(), Zone.EXILED); cardState = game.getLastKnownInformationCard(((ModalDoubleFacedCard) card).getLeftHalfCard().getId(), Zone.EXILED);
} else { } else {
cardState = game.getLastKnownInformationCard(card.getId(), Zone.EXILED); cardState = game.getLastKnownInformationCard(card.getId(), Zone.EXILED);
} }

View file

@ -113,8 +113,8 @@ class UrzasHotTubPredicate implements Predicate<MageObject> {
String name = input.getName(); String name = input.getName();
if (input instanceof SplitCard) { if (input instanceof SplitCard) {
return sharesWordWithName(((SplitCard) input).getLeftHalfCard().getName()) || sharesWordWithName(((SplitCard) input).getRightHalfCard().getName()); return sharesWordWithName(((SplitCard) input).getLeftHalfCard().getName()) || sharesWordWithName(((SplitCard) input).getRightHalfCard().getName());
} else if (input instanceof ModalDoubleFacesCard) { } else if (input instanceof ModalDoubleFacedCard) {
return sharesWordWithName(((ModalDoubleFacesCard) input).getLeftHalfCard().getName()) || sharesWordWithName(((ModalDoubleFacesCard) input).getRightHalfCard().getName()); return sharesWordWithName(((ModalDoubleFacedCard) input).getLeftHalfCard().getName()) || sharesWordWithName(((ModalDoubleFacedCard) input).getRightHalfCard().getName());
} else if (input instanceof Spell && ((Spell) input).getSpellAbility().getSpellAbilityType() == SpellAbilityType.SPLIT_FUSED) { } else if (input instanceof Spell && ((Spell) input).getSpellAbility().getSpellAbilityType() == SpellAbilityType.SPLIT_FUSED) {
SplitCard card = (SplitCard) ((Spell) input).getCard(); SplitCard card = (SplitCard) ((Spell) input).getCard();
return sharesWordWithName(card.getLeftHalfCard().getName()) || sharesWordWithName(card.getRightHalfCard().getName()); return sharesWordWithName(card.getLeftHalfCard().getName()) || sharesWordWithName(card.getRightHalfCard().getName());

View file

@ -12,7 +12,7 @@ import mage.abilities.effects.common.SacrificeOpponentsEffect;
import mage.abilities.effects.common.cost.CostModificationEffectImpl; import mage.abilities.effects.common.cost.CostModificationEffectImpl;
import mage.abilities.keyword.DoubleStrikeAbility; import mage.abilities.keyword.DoubleStrikeAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.*; import mage.constants.*;
import mage.filter.FilterCard; import mage.filter.FilterCard;
import mage.filter.StaticFilters; import mage.filter.StaticFilters;
@ -28,7 +28,7 @@ import java.util.UUID;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
public final class ExtusOriqOverlord extends ModalDoubleFacesCard { public final class ExtusOriqOverlord extends ModalDoubleFacedCard {
private static final FilterCard filter private static final FilterCard filter
= new FilterCreatureCard("nonlegendary creature card from your graveyard"); = new FilterCreatureCard("nonlegendary creature card from your graveyard");

View file

@ -129,9 +129,9 @@ class EyeOfTheStormEffect1 extends OneShotEffect {
if (card instanceof SplitCard) { if (card instanceof SplitCard) {
copiedCards.add(((SplitCard) card).getLeftHalfCard()); copiedCards.add(((SplitCard) card).getLeftHalfCard());
copiedCards.add(((SplitCard) card).getRightHalfCard()); copiedCards.add(((SplitCard) card).getRightHalfCard());
} else if (card instanceof ModalDoubleFacesCard) { } else if (card instanceof ModalDoubleFacedCard) {
copiedCards.add(((ModalDoubleFacesCard) card).getLeftHalfCard()); copiedCards.add(((ModalDoubleFacedCard) card).getLeftHalfCard());
copiedCards.add(((ModalDoubleFacesCard) card).getRightHalfCard()); copiedCards.add(((ModalDoubleFacedCard) card).getRightHalfCard());
} else { } else {
copiedCards.add(card); copiedCards.add(card);
} }

View file

@ -13,7 +13,7 @@ import mage.abilities.effects.common.ExileSpellEffect;
import mage.abilities.effects.common.continuous.BoostSourceEffect; import mage.abilities.effects.common.continuous.BoostSourceEffect;
import mage.abilities.mana.ActivatedManaAbilityImpl; import mage.abilities.mana.ActivatedManaAbilityImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.*; import mage.constants.*;
import mage.game.Game; import mage.game.Game;
import mage.game.events.GameEvent; import mage.game.events.GameEvent;
@ -27,7 +27,7 @@ import java.util.UUID;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
public final class FlamescrollCelebrant extends ModalDoubleFacesCard { public final class FlamescrollCelebrant extends ModalDoubleFacedCard {
public FlamescrollCelebrant(UUID ownerId, CardSetInfo setInfo) { public FlamescrollCelebrant(UUID ownerId, CardSetInfo setInfo) {
super( super(

View file

@ -8,7 +8,7 @@ import mage.abilities.common.EntersBattlefieldTappedAbility;
import mage.abilities.effects.common.CopyPermanentEffect; import mage.abilities.effects.common.CopyPermanentEffect;
import mage.abilities.mana.BlueManaAbility; import mage.abilities.mana.BlueManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
import mage.filter.StaticFilters; import mage.filter.StaticFilters;
@ -20,7 +20,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class GlasspoolMimic extends ModalDoubleFacesCard { public final class GlasspoolMimic extends ModalDoubleFacedCard {
public GlasspoolMimic(UUID ownerId, CardSetInfo setInfo) { public GlasspoolMimic(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -96,9 +96,9 @@ class GodEternalKefnetDrawCardReplacementEffect extends ReplacementEffectImpl {
if (blueprint instanceof SplitCard) { if (blueprint instanceof SplitCard) {
((SplitCard) blueprint).getLeftHalfCard().addAbility(new SimpleStaticAbility(Zone.ALL, new SpellCostReductionSourceEffect(2))); ((SplitCard) blueprint).getLeftHalfCard().addAbility(new SimpleStaticAbility(Zone.ALL, new SpellCostReductionSourceEffect(2)));
((SplitCard) blueprint).getRightHalfCard().addAbility(new SimpleStaticAbility(Zone.ALL, new SpellCostReductionSourceEffect(2))); ((SplitCard) blueprint).getRightHalfCard().addAbility(new SimpleStaticAbility(Zone.ALL, new SpellCostReductionSourceEffect(2)));
} else if (blueprint instanceof ModalDoubleFacesCard) { } else if (blueprint instanceof ModalDoubleFacedCard) {
((ModalDoubleFacesCard) blueprint).getLeftHalfCard().addAbility(new SimpleStaticAbility(Zone.ALL, new SpellCostReductionSourceEffect(2))); ((ModalDoubleFacedCard) blueprint).getLeftHalfCard().addAbility(new SimpleStaticAbility(Zone.ALL, new SpellCostReductionSourceEffect(2)));
((ModalDoubleFacesCard) blueprint).getRightHalfCard().addAbility(new SimpleStaticAbility(Zone.ALL, new SpellCostReductionSourceEffect(2))); ((ModalDoubleFacedCard) blueprint).getRightHalfCard().addAbility(new SimpleStaticAbility(Zone.ALL, new SpellCostReductionSourceEffect(2)));
} else { } else {
blueprint.addAbility(new SimpleStaticAbility(Zone.ALL, new SpellCostReductionSourceEffect(2))); blueprint.addAbility(new SimpleStaticAbility(Zone.ALL, new SpellCostReductionSourceEffect(2)));
} }

View file

@ -10,7 +10,7 @@ import mage.abilities.hint.ConditionHint;
import mage.abilities.hint.Hint; import mage.abilities.hint.Hint;
import mage.abilities.mana.BlackManaAbility; import mage.abilities.mana.BlackManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
import mage.constants.SuperType; import mage.constants.SuperType;
@ -26,7 +26,7 @@ import java.util.UUID;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
public final class HagraMauling extends ModalDoubleFacesCard { public final class HagraMauling extends ModalDoubleFacedCard {
private static final Hint hint = new ConditionHint( private static final Hint hint = new ConditionHint(
HagraMaulingCondition.instance, "An opponent controls no basic lands" HagraMaulingCondition.instance, "An opponent controls no basic lands"

View file

@ -15,7 +15,7 @@ import mage.abilities.keyword.EquipAbility;
import mage.abilities.keyword.VigilanceAbility; import mage.abilities.keyword.VigilanceAbility;
import mage.cards.Card; import mage.cards.Card;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.*; import mage.constants.*;
import mage.filter.FilterPermanent; import mage.filter.FilterPermanent;
import mage.filter.StaticFilters; import mage.filter.StaticFilters;
@ -38,7 +38,7 @@ import java.util.UUID;
/** /**
* @author weirddan455 * @author weirddan455
*/ */
public final class HalvarGodOfBattle extends ModalDoubleFacesCard { public final class HalvarGodOfBattle extends ModalDoubleFacedCard {
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent(); private static final FilterCreaturePermanent filter = new FilterCreaturePermanent();
private static final FilterPermanent filter2 = new FilterPermanent("aura or equipment attached to a creature you control"); private static final FilterPermanent filter2 = new FilterPermanent("aura or equipment attached to a creature you control");

View file

@ -3,7 +3,7 @@ package mage.cards.h;
import mage.abilities.mana.BlueManaAbility; import mage.abilities.mana.BlueManaAbility;
import mage.abilities.mana.WhiteManaAbility; import mage.abilities.mana.WhiteManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
@ -12,7 +12,7 @@ import java.util.UUID;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
public final class HengegatePathway extends ModalDoubleFacesCard { public final class HengegatePathway extends ModalDoubleFacedCard {
public HengegatePathway(UUID ownerId, CardSetInfo setInfo) { public HengegatePathway(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -67,7 +67,7 @@ class InvasionOfPyruleaEffect extends OneShotEffect {
player.scry(3, source, game); player.scry(3, source, game);
Card card = player.getLibrary().getFromTop(game); Card card = player.getLibrary().getFromTop(game);
player.revealCards(source, new CardsImpl(card), game); player.revealCards(source, new CardsImpl(card), game);
if (card != null && (card.isLand(game) || card instanceof ModalDoubleFacesCard || card.getSecondCardFace() != null)) { if (card != null && (card.isLand(game) || card instanceof ModalDoubleFacedCard || card.getSecondCardFace() != null)) {
player.drawCards(1, source, game); player.drawCards(1, source, game);
} }
return true; return true;

View file

@ -15,7 +15,7 @@ import mage.abilities.hint.common.LandsYouControlHint;
import mage.cards.Card; import mage.cards.Card;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.CardsImpl; import mage.cards.CardsImpl;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.*; import mage.constants.*;
import mage.filter.StaticFilters; import mage.filter.StaticFilters;
import mage.game.Game; import mage.game.Game;
@ -28,7 +28,7 @@ import java.util.UUID;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
public final class JadziOracleOfArcavios extends ModalDoubleFacesCard { public final class JadziOracleOfArcavios extends ModalDoubleFacedCard {
private static final Condition condition = new PermanentsOnTheBattlefieldCondition( private static final Condition condition = new PermanentsOnTheBattlefieldCondition(
StaticFilters.FILTER_CONTROLLED_PERMANENT_LAND, ComparisonType.MORE_THAN, 7 StaticFilters.FILTER_CONTROLLED_PERMANENT_LAND, ComparisonType.MORE_THAN, 7

View file

@ -165,9 +165,9 @@ class JestersScepterCost extends CostImpl {
if (card instanceof SplitCard) { if (card instanceof SplitCard) {
game.getState().setValue(source.getSourceId() + "_nameOfExiledCardPayment", ((SplitCard) card).getLeftHalfCard().getName()); game.getState().setValue(source.getSourceId() + "_nameOfExiledCardPayment", ((SplitCard) card).getLeftHalfCard().getName());
game.getState().setValue(source.getSourceId() + "_nameOfExiledCardPayment2", ((SplitCard) card).getRightHalfCard().getName()); game.getState().setValue(source.getSourceId() + "_nameOfExiledCardPayment2", ((SplitCard) card).getRightHalfCard().getName());
} else if (card instanceof ModalDoubleFacesCard) { } else if (card instanceof ModalDoubleFacedCard) {
game.getState().setValue(source.getSourceId() + "_nameOfExiledCardPayment", ((ModalDoubleFacesCard) card).getLeftHalfCard().getName()); game.getState().setValue(source.getSourceId() + "_nameOfExiledCardPayment", ((ModalDoubleFacedCard) card).getLeftHalfCard().getName());
game.getState().setValue(source.getSourceId() + "_nameOfExiledCardPayment2", ((ModalDoubleFacesCard) card).getRightHalfCard().getName()); game.getState().setValue(source.getSourceId() + "_nameOfExiledCardPayment2", ((ModalDoubleFacedCard) card).getRightHalfCard().getName());
} else { } else {
game.getState().setValue(source.getSourceId() + "_nameOfExiledCardPayment", card.getName()); game.getState().setValue(source.getSourceId() + "_nameOfExiledCardPayment", card.getName());
} }

View file

@ -12,7 +12,7 @@ import mage.abilities.effects.ReplacementEffectImpl;
import mage.abilities.effects.common.UntapAllControllerEffect; import mage.abilities.effects.common.UntapAllControllerEffect;
import mage.cards.Card; import mage.cards.Card;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.*; import mage.constants.*;
import mage.filter.FilterPermanent; import mage.filter.FilterPermanent;
import mage.filter.common.FilterPermanentCard; import mage.filter.common.FilterPermanentCard;
@ -28,7 +28,7 @@ import java.util.UUID;
/** /**
* @author weirddan455 * @author weirddan455
*/ */
public final class JornGodOfWinter extends ModalDoubleFacesCard { public final class JornGodOfWinter extends ModalDoubleFacedCard {
private static final FilterPermanent filter = new FilterPermanent(); private static final FilterPermanent filter = new FilterPermanent();
private static final FilterPermanentCard filter2 = new FilterPermanentCard("snow permanent card from your graveyard"); private static final FilterPermanentCard filter2 = new FilterPermanentCard("snow permanent card from your graveyard");

View file

@ -5,7 +5,7 @@ import mage.abilities.costs.mana.GenericManaCost;
import mage.abilities.effects.common.CounterUnlessPaysEffect; import mage.abilities.effects.common.CounterUnlessPaysEffect;
import mage.abilities.mana.BlueManaAbility; import mage.abilities.mana.BlueManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
import mage.target.TargetSpell; import mage.target.TargetSpell;
@ -15,7 +15,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class JwariDisruption extends ModalDoubleFacesCard { public final class JwariDisruption extends ModalDoubleFacedCard {
public JwariDisruption(UUID ownerId, CardSetInfo setInfo) { public JwariDisruption(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -7,7 +7,7 @@ import mage.abilities.effects.common.DamageTargetEffect;
import mage.abilities.hint.ValueHint; import mage.abilities.hint.ValueHint;
import mage.abilities.mana.WhiteManaAbility; import mage.abilities.mana.WhiteManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
import mage.filter.StaticFilters; import mage.filter.StaticFilters;
@ -18,7 +18,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class KabiraTakedown extends ModalDoubleFacesCard { public final class KabiraTakedown extends ModalDoubleFacedCard {
private static final DynamicValue xValue private static final DynamicValue xValue
= new PermanentsOnBattlefieldCount(StaticFilters.FILTER_CONTROLLED_CREATURES); = new PermanentsOnBattlefieldCount(StaticFilters.FILTER_CONTROLLED_CREATURES);

View file

@ -6,7 +6,7 @@ import mage.abilities.common.LandfallAbility;
import mage.abilities.effects.common.continuous.BoostSourceEffect; import mage.abilities.effects.common.continuous.BoostSourceEffect;
import mage.abilities.mana.GreenManaAbility; import mage.abilities.mana.GreenManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.Duration; import mage.constants.Duration;
import mage.constants.SubType; import mage.constants.SubType;
@ -16,7 +16,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class KazanduMammoth extends ModalDoubleFacesCard { public final class KazanduMammoth extends ModalDoubleFacedCard {
public KazanduMammoth(UUID ownerId, CardSetInfo setInfo) { public KazanduMammoth(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -6,7 +6,7 @@ import mage.abilities.dynamicvalue.common.SacrificeCostCreaturesPower;
import mage.abilities.effects.common.DamageTargetEffect; import mage.abilities.effects.common.DamageTargetEffect;
import mage.abilities.mana.RedManaAbility; import mage.abilities.mana.RedManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
import mage.target.common.TargetAnyTarget; import mage.target.common.TargetAnyTarget;
@ -19,7 +19,7 @@ import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class KazuulsFury extends ModalDoubleFacesCard { public final class KazuulsFury extends ModalDoubleFacedCard {
public KazuulsFury(UUID ownerId, CardSetInfo setInfo) { public KazuulsFury(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -4,7 +4,7 @@ import mage.abilities.common.EntersBattlefieldTappedAbility;
import mage.abilities.effects.common.FightTargetsEffect; import mage.abilities.effects.common.FightTargetsEffect;
import mage.abilities.mana.GreenManaAbility; import mage.abilities.mana.GreenManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
import mage.filter.StaticFilters; import mage.filter.StaticFilters;
@ -16,7 +16,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class KhalniAmbush extends ModalDoubleFacesCard { public final class KhalniAmbush extends ModalDoubleFacedCard {
public KhalniAmbush(UUID ownerId, CardSetInfo setInfo) { public KhalniAmbush(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -29,7 +29,7 @@ import java.util.stream.Collectors;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
public final class KianneDeanOfSubstance extends ModalDoubleFacesCard { public final class KianneDeanOfSubstance extends ModalDoubleFacedCard {
public KianneDeanOfSubstance(UUID ownerId, CardSetInfo setInfo) { public KianneDeanOfSubstance(UUID ownerId, CardSetInfo setInfo) {
super( super(

View file

@ -21,7 +21,7 @@ import mage.abilities.mana.ConditionalColoredManaAbility;
import mage.abilities.mana.builder.ConditionalManaBuilder; import mage.abilities.mana.builder.ConditionalManaBuilder;
import mage.abilities.mana.conditional.CreatureCastManaCondition; import mage.abilities.mana.conditional.CreatureCastManaCondition;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.*; import mage.constants.*;
import mage.filter.common.FilterCreatureCard; import mage.filter.common.FilterCreatureCard;
import mage.filter.common.FilterCreaturePermanent; import mage.filter.common.FilterCreaturePermanent;
@ -33,7 +33,7 @@ import java.util.UUID;
/** /**
* @author weirddan455 * @author weirddan455
*/ */
public final class KolvoriGodOfKinship extends ModalDoubleFacesCard { public final class KolvoriGodOfKinship extends ModalDoubleFacedCard {
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent(); private static final FilterCreaturePermanent filter = new FilterCreaturePermanent();
private static final FilterCreatureCard filter2 = new FilterCreatureCard("a legendary creature card"); private static final FilterCreatureCard filter2 = new FilterCreatureCard("a legendary creature card");

View file

@ -4,7 +4,7 @@ import mage.abilities.common.EntersBattlefieldTappedAbility;
import mage.abilities.effects.common.continuous.BoostControlledEffect; import mage.abilities.effects.common.continuous.BoostControlledEffect;
import mage.abilities.mana.WhiteManaAbility; import mage.abilities.mana.WhiteManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.Duration; import mage.constants.Duration;
import mage.constants.SubType; import mage.constants.SubType;
@ -14,7 +14,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class MakindiStampede extends ModalDoubleFacesCard { public final class MakindiStampede extends ModalDoubleFacedCard {
public MakindiStampede(UUID ownerId, CardSetInfo setInfo) { public MakindiStampede(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -7,7 +7,7 @@ import mage.abilities.effects.common.ReturnSourceFromGraveyardToBattlefieldEffec
import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; import mage.abilities.effects.common.continuous.GainAbilityTargetEffect;
import mage.abilities.mana.BlackManaAbility; import mage.abilities.mana.BlackManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.Duration; import mage.constants.Duration;
import mage.constants.SubType; import mage.constants.SubType;
@ -18,7 +18,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class MalakirRebirth extends ModalDoubleFacesCard { public final class MalakirRebirth extends ModalDoubleFacedCard {
public MalakirRebirth(UUID ownerId, CardSetInfo setInfo) { public MalakirRebirth(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -14,7 +14,7 @@ import mage.abilities.effects.common.counter.AddCountersAllEffect;
import mage.abilities.keyword.HasteAbility; import mage.abilities.keyword.HasteAbility;
import mage.cards.Card; import mage.cards.Card;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.*; import mage.constants.*;
import mage.counters.CounterType; import mage.counters.CounterType;
import mage.filter.StaticFilters; import mage.filter.StaticFilters;
@ -35,7 +35,7 @@ import static mage.constants.Outcome.Benefit;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
public final class MilaCraftyCompanion extends ModalDoubleFacesCard { public final class MilaCraftyCompanion extends ModalDoubleFacedCard {
public MilaCraftyCompanion(UUID ownerId, CardSetInfo setInfo) { public MilaCraftyCompanion(UUID ownerId, CardSetInfo setInfo) {
super( super(

View file

@ -135,9 +135,9 @@ class EverythingIsColorlessEffect extends ContinuousEffectImpl {
game.getState().getCreateMageObjectAttribute(card, game).getColor().setColor(colorless); game.getState().getCreateMageObjectAttribute(card, game).getColor().setColor(colorless);
// mdf cards // mdf cards
if (card instanceof ModalDoubleFacesCard) { if (card instanceof ModalDoubleFacedCard) {
ModalDoubleFacesCardHalf leftHalfCard = ((ModalDoubleFacesCard) card).getLeftHalfCard(); ModalDoubleFacedCardHalf leftHalfCard = ((ModalDoubleFacedCard) card).getLeftHalfCard();
ModalDoubleFacesCardHalf rightHalfCard = ((ModalDoubleFacesCard) card).getRightHalfCard(); ModalDoubleFacedCardHalf rightHalfCard = ((ModalDoubleFacedCard) card).getRightHalfCard();
game.getState().getCreateMageObjectAttribute(leftHalfCard, game).getColor().setColor(colorless); game.getState().getCreateMageObjectAttribute(leftHalfCard, game).getColor().setColor(colorless);
game.getState().getCreateMageObjectAttribute(rightHalfCard, game).getColor().setColor(colorless); game.getState().getCreateMageObjectAttribute(rightHalfCard, game).getColor().setColor(colorless);
} }

View file

@ -3,7 +3,7 @@ package mage.cards.n;
import mage.abilities.mana.RedManaAbility; import mage.abilities.mana.RedManaAbility;
import mage.abilities.mana.WhiteManaAbility; import mage.abilities.mana.WhiteManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
@ -12,7 +12,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class NeedlevergePathway extends ModalDoubleFacesCard { public final class NeedlevergePathway extends ModalDoubleFacedCard {
public NeedlevergePathway(UUID ownerId, CardSetInfo setInfo) { public NeedlevergePathway(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -3,9 +3,8 @@ package mage.cards.o;
import mage.abilities.common.EntersBattlefieldTappedAbility; import mage.abilities.common.EntersBattlefieldTappedAbility;
import mage.abilities.effects.common.DestroyAllEffect; import mage.abilities.effects.common.DestroyAllEffect;
import mage.abilities.mana.WhiteManaAbility; import mage.abilities.mana.WhiteManaAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
import mage.filter.StaticFilters; import mage.filter.StaticFilters;
@ -15,7 +14,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class OnduInversion extends ModalDoubleFacesCard { public final class OnduInversion extends ModalDoubleFacedCard {
public OnduInversion(UUID ownerId, CardSetInfo setInfo) { public OnduInversion(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -108,9 +108,9 @@ class PaintersServantEffect extends ContinuousEffectImpl {
game.getState().getCreateMageObjectAttribute(card, game).getColor().addColor(color); game.getState().getCreateMageObjectAttribute(card, game).getColor().addColor(color);
// mdf cards // mdf cards
if (card instanceof ModalDoubleFacesCard) { if (card instanceof ModalDoubleFacedCard) {
ModalDoubleFacesCardHalf leftHalfCard = ((ModalDoubleFacesCard) card).getLeftHalfCard(); ModalDoubleFacedCardHalf leftHalfCard = ((ModalDoubleFacedCard) card).getLeftHalfCard();
ModalDoubleFacesCardHalf rightHalfCard = ((ModalDoubleFacesCard) card).getRightHalfCard(); ModalDoubleFacedCardHalf rightHalfCard = ((ModalDoubleFacedCard) card).getRightHalfCard();
game.getState().getCreateMageObjectAttribute(leftHalfCard, game).getColor().addColor(color); game.getState().getCreateMageObjectAttribute(leftHalfCard, game).getColor().addColor(color);
game.getState().getCreateMageObjectAttribute(rightHalfCard, game).getColor().addColor(color); game.getState().getCreateMageObjectAttribute(rightHalfCard, game).getColor().addColor(color);
} }

View file

@ -129,9 +129,9 @@ class PanopticMirrorCastEffect extends OneShotEffect {
if (card instanceof SplitCard) { if (card instanceof SplitCard) {
cards.add(((SplitCard) card).getLeftHalfCard()); cards.add(((SplitCard) card).getLeftHalfCard());
cards.add(((SplitCard) card).getRightHalfCard()); cards.add(((SplitCard) card).getRightHalfCard());
} else if (card instanceof ModalDoubleFacesCard) { } else if (card instanceof ModalDoubleFacedCard) {
cards.add(((ModalDoubleFacesCard) card).getLeftHalfCard()); cards.add(((ModalDoubleFacedCard) card).getLeftHalfCard());
cards.add(((ModalDoubleFacesCard) card).getRightHalfCard()); cards.add(((ModalDoubleFacedCard) card).getRightHalfCard());
} else { } else {
cards.add(card); cards.add(card);
} }

View file

@ -4,7 +4,7 @@ import mage.abilities.common.EntersBattlefieldTappedAbility;
import mage.abilities.effects.common.discard.DiscardCardYouChooseTargetEffect; import mage.abilities.effects.common.discard.DiscardCardYouChooseTargetEffect;
import mage.abilities.mana.BlackManaAbility; import mage.abilities.mana.BlackManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.ComparisonType; import mage.constants.ComparisonType;
import mage.constants.SubType; import mage.constants.SubType;
@ -17,7 +17,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class PelakkaPredation extends ModalDoubleFacesCard { public final class PelakkaPredation extends ModalDoubleFacedCard {
private static final FilterCard filter = new FilterCard("a card from it with mana value 3 or greater"); private static final FilterCard filter = new FilterCard("a card from it with mana value 3 or greater");

View file

@ -9,7 +9,7 @@ import mage.abilities.dynamicvalue.common.ControllerGotLifeCount;
import mage.abilities.effects.OneShotEffect; import mage.abilities.effects.OneShotEffect;
import mage.abilities.effects.common.*; import mage.abilities.effects.common.*;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.Outcome; import mage.constants.Outcome;
import mage.constants.SubType; import mage.constants.SubType;
@ -29,7 +29,7 @@ import java.util.UUID;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
public final class PestilentCauldron extends ModalDoubleFacesCard { public final class PestilentCauldron extends ModalDoubleFacedCard {
private static final FilterCard filter private static final FilterCard filter
= new FilterCard("creature, land, and/or planeswalker cards from your graveyard"); = new FilterCard("creature, land, and/or planeswalker cards from your graveyard");

View file

@ -16,7 +16,7 @@ import mage.abilities.effects.common.continuous.BoostAllEffect;
import mage.cards.Card; import mage.cards.Card;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.CardsImpl; import mage.cards.CardsImpl;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.*; import mage.constants.*;
import mage.filter.StaticFilters; import mage.filter.StaticFilters;
import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.common.FilterControlledCreaturePermanent;
@ -32,7 +32,7 @@ import java.util.UUID;
/** /**
* @author htrajan * @author htrajan
*/ */
public final class PlarggDeanOfChaos extends ModalDoubleFacesCard { public final class PlarggDeanOfChaos extends ModalDoubleFacedCard {
private static final FilterCreaturePermanent tappedFilter = new FilterCreaturePermanent("tapped creatures you control"); private static final FilterCreaturePermanent tappedFilter = new FilterCreaturePermanent("tapped creatures you control");
private static final FilterCreaturePermanent untappedFilter = new FilterCreaturePermanent("untapped creatures you control"); private static final FilterCreaturePermanent untappedFilter = new FilterCreaturePermanent("untapped creatures you control");

View file

@ -14,7 +14,7 @@ import mage.abilities.keyword.FlyingAbility;
import mage.abilities.keyword.VigilanceAbility; import mage.abilities.keyword.VigilanceAbility;
import mage.cards.Card; import mage.cards.Card;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.*; import mage.constants.*;
import mage.filter.FilterPermanent; import mage.filter.FilterPermanent;
import mage.filter.common.FilterLandPermanent; import mage.filter.common.FilterLandPermanent;
@ -30,7 +30,7 @@ import java.util.UUID;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
public final class ReidaneGodOfTheWorthy extends ModalDoubleFacesCard { public final class ReidaneGodOfTheWorthy extends ModalDoubleFacedCard {
private static final FilterPermanent filter = new FilterLandPermanent("snow lands your opponents control"); private static final FilterPermanent filter = new FilterLandPermanent("snow lands your opponents control");

View file

@ -3,7 +3,7 @@ package mage.cards.r;
import mage.abilities.mana.BlueManaAbility; import mage.abilities.mana.BlueManaAbility;
import mage.abilities.mana.RedManaAbility; import mage.abilities.mana.RedManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
@ -12,7 +12,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class RiverglidePathway extends ModalDoubleFacesCard { public final class RiverglidePathway extends ModalDoubleFacedCard {
public RiverglidePathway(UUID ownerId, CardSetInfo setInfo) { public RiverglidePathway(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -16,7 +16,7 @@ import mage.abilities.hint.Hint;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.Cards; import mage.cards.Cards;
import mage.cards.CardsImpl; import mage.cards.CardsImpl;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.*; import mage.constants.*;
import mage.filter.FilterCard; import mage.filter.FilterCard;
import mage.filter.StaticFilters; import mage.filter.StaticFilters;
@ -38,7 +38,7 @@ import java.util.stream.Collectors;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
public final class RowanScholarOfSparks extends ModalDoubleFacesCard { public final class RowanScholarOfSparks extends ModalDoubleFacedCard {
private static final FilterCard filter = new FilterInstantOrSorceryCard("instant and sorcery spells"); private static final FilterCard filter = new FilterInstantOrSorceryCard("instant and sorcery spells");

View file

@ -11,7 +11,7 @@ import mage.abilities.effects.common.TapSourceUnlessPaysEffect;
import mage.abilities.effects.common.continuous.MaximumHandSizeControllerEffect; import mage.abilities.effects.common.continuous.MaximumHandSizeControllerEffect;
import mage.abilities.mana.BlueManaAbility; import mage.abilities.mana.BlueManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.Duration; import mage.constants.Duration;
import mage.constants.SubType; import mage.constants.SubType;
@ -21,7 +21,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class SeaGateRestoration extends ModalDoubleFacesCard { public final class SeaGateRestoration extends ModalDoubleFacedCard {
private static final DynamicValue xValue = new AdditiveDynamicValue(CardsInControllerHandCount.instance, StaticValue.get(1)); private static final DynamicValue xValue = new AdditiveDynamicValue(CardsInControllerHandCount.instance, StaticValue.get(1));

View file

@ -3,9 +3,8 @@ package mage.cards.s;
import mage.abilities.common.EntersBattlefieldTappedAbility; import mage.abilities.common.EntersBattlefieldTappedAbility;
import mage.abilities.effects.common.continuous.GainProtectionFromColorTargetEffect; import mage.abilities.effects.common.continuous.GainProtectionFromColorTargetEffect;
import mage.abilities.mana.WhiteManaAbility; import mage.abilities.mana.WhiteManaAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.Duration; import mage.constants.Duration;
import mage.constants.SubType; import mage.constants.SubType;
@ -16,7 +15,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class SejiriShelter extends ModalDoubleFacesCard { public final class SejiriShelter extends ModalDoubleFacedCard {
public SejiriShelter(UUID ownerId, CardSetInfo setInfo) { public SejiriShelter(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -8,7 +8,7 @@ import mage.abilities.effects.common.DestroyAllEffect;
import mage.abilities.effects.common.continuous.GainAbilityControlledEffect; import mage.abilities.effects.common.continuous.GainAbilityControlledEffect;
import mage.abilities.keyword.IndestructibleAbility; import mage.abilities.keyword.IndestructibleAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.Duration; import mage.constants.Duration;
import mage.constants.Outcome; import mage.constants.Outcome;
@ -28,7 +28,7 @@ import java.util.UUID;
/** /**
* @author htrajan * @author htrajan
*/ */
public final class SelflessGlyphweaver extends ModalDoubleFacesCard { public final class SelflessGlyphweaver extends ModalDoubleFacedCard {
public SelflessGlyphweaver(UUID ownerId, CardSetInfo setInfo) { public SelflessGlyphweaver(UUID ownerId, CardSetInfo setInfo) {
super( super(

View file

@ -11,7 +11,7 @@ import mage.abilities.effects.common.counter.AddCountersTargetEffect;
import mage.abilities.keyword.FlyingAbility; import mage.abilities.keyword.FlyingAbility;
import mage.abilities.keyword.VigilanceAbility; import mage.abilities.keyword.VigilanceAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
import mage.constants.SuperType; import mage.constants.SuperType;
@ -31,7 +31,7 @@ import java.util.UUID;
/** /**
* @author htrajan * @author htrajan
*/ */
public final class ShaileDeanOfRadiance extends ModalDoubleFacesCard { public final class ShaileDeanOfRadiance extends ModalDoubleFacedCard {
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("another target creature"); private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("another target creature");
private static final FilterPermanent shaileFilter = new FilterControlledCreaturePermanent("creature that entered the battlefield under your control this turn"); private static final FilterPermanent shaileFilter = new FilterControlledCreaturePermanent("creature that entered the battlefield under your control this turn");

View file

@ -12,7 +12,7 @@ import mage.abilities.effects.common.DamageMultiEffect;
import mage.abilities.effects.common.TapSourceUnlessPaysEffect; import mage.abilities.effects.common.TapSourceUnlessPaysEffect;
import mage.abilities.mana.RedManaAbility; import mage.abilities.mana.RedManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
import mage.game.Game; import mage.game.Game;
@ -25,7 +25,7 @@ import java.util.UUID;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
public final class ShatterskullSmashing extends ModalDoubleFacesCard { public final class ShatterskullSmashing extends ModalDoubleFacedCard {
private static final DynamicValue xValue = new MultipliedValue(ManacostVariableValue.REGULAR, 2); private static final DynamicValue xValue = new MultipliedValue(ManacostVariableValue.REGULAR, 2);

View file

@ -4,7 +4,7 @@ import mage.abilities.common.EntersBattlefieldTappedAbility;
import mage.abilities.effects.common.LookLibraryAndPickControllerEffect; import mage.abilities.effects.common.LookLibraryAndPickControllerEffect;
import mage.abilities.mana.BlueManaAbility; import mage.abilities.mana.BlueManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.PutCards; import mage.constants.PutCards;
import mage.constants.SubType; import mage.constants.SubType;
@ -15,7 +15,7 @@ import java.util.UUID;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
public final class SilundiVision extends ModalDoubleFacesCard { public final class SilundiVision extends ModalDoubleFacedCard {
public SilundiVision(UUID ownerId, CardSetInfo setInfo) { public SilundiVision(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -5,9 +5,8 @@ import mage.abilities.common.EntersBattlefieldTappedAbility;
import mage.abilities.common.EntersBattlefieldTriggeredAbility; import mage.abilities.common.EntersBattlefieldTriggeredAbility;
import mage.abilities.effects.common.GainLifeEffect; import mage.abilities.effects.common.GainLifeEffect;
import mage.abilities.mana.WhiteManaAbility; import mage.abilities.mana.WhiteManaAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
@ -16,7 +15,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class SkyclaveCleric extends ModalDoubleFacesCard { public final class SkyclaveCleric extends ModalDoubleFacedCard {
public SkyclaveCleric(UUID ownerId, CardSetInfo setInfo) { public SkyclaveCleric(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -7,7 +7,7 @@ import mage.abilities.effects.common.continuous.GainControlTargetEffect;
import mage.abilities.keyword.HasteAbility; import mage.abilities.keyword.HasteAbility;
import mage.abilities.mana.RedManaAbility; import mage.abilities.mana.RedManaAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.Duration; import mage.constants.Duration;
import mage.constants.SubType; import mage.constants.SubType;
@ -18,7 +18,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class SongMadTreachery extends ModalDoubleFacesCard { public final class SongMadTreachery extends ModalDoubleFacedCard {
public SongMadTreachery(UUID ownerId, CardSetInfo setInfo) { public SongMadTreachery(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -4,9 +4,8 @@ import mage.abilities.common.EntersBattlefieldTappedAbility;
import mage.abilities.effects.common.DamageTargetEffect; import mage.abilities.effects.common.DamageTargetEffect;
import mage.abilities.effects.common.ExileTargetIfDiesEffect; import mage.abilities.effects.common.ExileTargetIfDiesEffect;
import mage.abilities.mana.RedManaAbility; import mage.abilities.mana.RedManaAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
import mage.target.common.TargetAnyTarget; import mage.target.common.TargetAnyTarget;
@ -16,7 +15,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class SpikefieldHazard extends ModalDoubleFacesCard { public final class SpikefieldHazard extends ModalDoubleFacedCard {
public SpikefieldHazard(UUID ownerId, CardSetInfo setInfo) { public SpikefieldHazard(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -3,9 +3,8 @@ package mage.cards.t;
import mage.MageInt; import mage.MageInt;
import mage.abilities.common.EntersBattlefieldTappedAbility; import mage.abilities.common.EntersBattlefieldTappedAbility;
import mage.abilities.mana.GreenManaAbility; import mage.abilities.mana.GreenManaAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
@ -14,7 +13,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class TangledFlorahedron extends ModalDoubleFacesCard { public final class TangledFlorahedron extends ModalDoubleFacedCard {
public TangledFlorahedron(UUID ownerId, CardSetInfo setInfo) { public TangledFlorahedron(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -10,7 +10,7 @@ import mage.abilities.effects.common.UntapSourceEffect;
import mage.abilities.keyword.MenaceAbility; import mage.abilities.keyword.MenaceAbility;
import mage.cards.Card; import mage.cards.Card;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.choices.Choice; import mage.choices.Choice;
import mage.choices.ChoiceImpl; import mage.choices.ChoiceImpl;
import mage.constants.*; import mage.constants.*;
@ -31,7 +31,7 @@ import java.util.UUID;
/** /**
* @author jeffwadsworth * @author jeffwadsworth
*/ */
public final class TergridGodOfFright extends ModalDoubleFacesCard { public final class TergridGodOfFright extends ModalDoubleFacedCard {
public TergridGodOfFright(UUID ownerId, CardSetInfo setInfo) { public TergridGodOfFright(UUID ownerId, CardSetInfo setInfo) {
super( super(

View file

@ -8,10 +8,7 @@ import mage.abilities.effects.common.continuous.EachSpellYouCastHasReplicateEffe
import mage.abilities.effects.keyword.ScryEffect; import mage.abilities.effects.keyword.ScryEffect;
import mage.cards.CardImpl; import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCardHalf;
import mage.cards.SplitCardHalf;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.Zone;
import mage.filter.FilterSpell; import mage.filter.FilterSpell;
import mage.filter.predicate.Predicate; import mage.filter.predicate.Predicate;
import mage.game.Game; import mage.game.Game;

View file

@ -18,7 +18,7 @@ import mage.abilities.effects.common.continuous.GainAbilityWithAttachmentEffect;
import mage.abilities.keyword.EquipAbility; import mage.abilities.keyword.EquipAbility;
import mage.abilities.keyword.TrampleAbility; import mage.abilities.keyword.TrampleAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.*; import mage.constants.*;
import mage.filter.StaticFilters; import mage.filter.StaticFilters;
import mage.filter.common.FilterAnyTarget; import mage.filter.common.FilterAnyTarget;
@ -38,7 +38,7 @@ import java.util.UUID;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
public final class ToralfGodOfFury extends ModalDoubleFacesCard { public final class ToralfGodOfFury extends ModalDoubleFacedCard {
private static final Condition condition private static final Condition condition
= new AttachedToMatchesFilterCondition(StaticFilters.FILTER_PERMANENT_LEGENDARY); = new AttachedToMatchesFilterCondition(StaticFilters.FILTER_PERMANENT_LEGENDARY);

View file

@ -9,7 +9,7 @@ import mage.abilities.effects.common.DamageTargetEffect;
import mage.abilities.keyword.WardAbility; import mage.abilities.keyword.WardAbility;
import mage.cards.Card; import mage.cards.Card;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.*; import mage.constants.*;
import mage.counters.CounterType; import mage.counters.CounterType;
import mage.filter.FilterPermanent; import mage.filter.FilterPermanent;
@ -29,7 +29,7 @@ import static mage.constants.Outcome.Benefit;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
public final class TorrentSculptor extends ModalDoubleFacesCard { public final class TorrentSculptor extends ModalDoubleFacedCard {
public TorrentSculptor(UUID ownerId, CardSetInfo setInfo) { public TorrentSculptor(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -24,7 +24,7 @@ import java.util.UUID;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
public final class TurntimberSymbiosis extends ModalDoubleFacesCard { public final class TurntimberSymbiosis extends ModalDoubleFacedCard {
public TurntimberSymbiosis(UUID ownerId, CardSetInfo setInfo) { public TurntimberSymbiosis(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -6,9 +6,8 @@ import mage.abilities.common.SpellCastControllerTriggeredAbility;
import mage.abilities.effects.common.continuous.GainAbilitySourceEffect; import mage.abilities.effects.common.continuous.GainAbilitySourceEffect;
import mage.abilities.keyword.FlyingAbility; import mage.abilities.keyword.FlyingAbility;
import mage.abilities.mana.BlueManaAbility; import mage.abilities.mana.BlueManaAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.Duration; import mage.constants.Duration;
import mage.constants.SubType; import mage.constants.SubType;
@ -19,7 +18,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class UmaraWizard extends ModalDoubleFacesCard { public final class UmaraWizard extends ModalDoubleFacedCard {
public UmaraWizard(UUID ownerId, CardSetInfo setInfo) { public UmaraWizard(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -92,8 +92,8 @@ class UrzasHotTubPredicate implements Predicate<MageObject> {
String name = input.getName(); String name = input.getName();
if (input instanceof SplitCard) { if (input instanceof SplitCard) {
return sharesWordWithName(((SplitCard) input).getLeftHalfCard().getName()) || sharesWordWithName(((SplitCard) input).getRightHalfCard().getName()); return sharesWordWithName(((SplitCard) input).getLeftHalfCard().getName()) || sharesWordWithName(((SplitCard) input).getRightHalfCard().getName());
} else if (input instanceof ModalDoubleFacesCard) { } else if (input instanceof ModalDoubleFacedCard) {
return sharesWordWithName(((ModalDoubleFacesCard) input).getLeftHalfCard().getName()) || sharesWordWithName(((ModalDoubleFacesCard) input).getRightHalfCard().getName()); return sharesWordWithName(((ModalDoubleFacedCard) input).getLeftHalfCard().getName()) || sharesWordWithName(((ModalDoubleFacedCard) input).getRightHalfCard().getName());
} else if (input instanceof Spell && ((Spell) input).getSpellAbility().getSpellAbilityType() == SpellAbilityType.SPLIT_FUSED) { } else if (input instanceof Spell && ((Spell) input).getSpellAbility().getSpellAbilityType() == SpellAbilityType.SPLIT_FUSED) {
SplitCard card = (SplitCard) ((Spell) input).getCard(); SplitCard card = (SplitCard) ((Spell) input).getCard();
return sharesWordWithName(card.getLeftHalfCard().getName()) || sharesWordWithName(card.getRightHalfCard().getName()); return sharesWordWithName(card.getLeftHalfCard().getName()) || sharesWordWithName(card.getRightHalfCard().getName());

View file

@ -33,7 +33,7 @@ import java.util.UUID;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
public final class UvildaDeanOfPerfection extends ModalDoubleFacesCard { public final class UvildaDeanOfPerfection extends ModalDoubleFacedCard {
public UvildaDeanOfPerfection(UUID ownerId, CardSetInfo setInfo) { public UvildaDeanOfPerfection(UUID ownerId, CardSetInfo setInfo) {
super( super(

View file

@ -19,7 +19,7 @@ import java.util.UUID;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
public final class ValakutAwakening extends ModalDoubleFacesCard { public final class ValakutAwakening extends ModalDoubleFacedCard {
public ValakutAwakening(UUID ownerId, CardSetInfo setInfo) { public ValakutAwakening(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -14,7 +14,7 @@ import mage.abilities.keyword.LifelinkAbility;
import mage.abilities.keyword.MenaceAbility; import mage.abilities.keyword.MenaceAbility;
import mage.abilities.keyword.TrampleAbility; import mage.abilities.keyword.TrampleAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.*; import mage.constants.*;
import mage.counters.CounterType; import mage.counters.CounterType;
import mage.filter.StaticFilters; import mage.filter.StaticFilters;
@ -29,7 +29,7 @@ import java.util.UUID;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
public final class ValentinDeanOfTheVein extends ModalDoubleFacesCard { public final class ValentinDeanOfTheVein extends ModalDoubleFacedCard {
public ValentinDeanOfTheVein(UUID ownerId, CardSetInfo setInfo) { public ValentinDeanOfTheVein(UUID ownerId, CardSetInfo setInfo) {
super( super(

View file

@ -17,7 +17,7 @@ import mage.abilities.effects.common.GetEmblemEffect;
import mage.cards.Card; import mage.cards.Card;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.Cards; import mage.cards.Cards;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.*; import mage.constants.*;
import mage.filter.FilterCard; import mage.filter.FilterCard;
import mage.filter.StaticFilters; import mage.filter.StaticFilters;
@ -42,7 +42,7 @@ import java.util.UUID;
/** /**
* @author jeffwadsworth * @author jeffwadsworth
*/ */
public final class ValkiGodOfLies extends ModalDoubleFacesCard { public final class ValkiGodOfLies extends ModalDoubleFacedCard {
public ValkiGodOfLies(UUID ownerId, CardSetInfo setInfo) { public ValkiGodOfLies(UUID ownerId, CardSetInfo setInfo) {
super( super(

View file

@ -3,9 +3,8 @@ package mage.cards.v;
import mage.abilities.common.EntersBattlefieldTappedAbility; import mage.abilities.common.EntersBattlefieldTappedAbility;
import mage.abilities.effects.common.counter.AddCountersTargetEffect; import mage.abilities.effects.common.counter.AddCountersTargetEffect;
import mage.abilities.mana.GreenManaAbility; import mage.abilities.mana.GreenManaAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
import mage.counters.CounterType; import mage.counters.CounterType;
@ -16,7 +15,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class VastwoodFortification extends ModalDoubleFacesCard { public final class VastwoodFortification extends ModalDoubleFacedCard {
public VastwoodFortification(UUID ownerId, CardSetInfo setInfo) { public VastwoodFortification(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -22,7 +22,7 @@ import java.util.UUID;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
public final class WanderingArchaic extends ModalDoubleFacesCard { public final class WanderingArchaic extends ModalDoubleFacedCard {
public WanderingArchaic(UUID ownerId, CardSetInfo setInfo) { public WanderingArchaic(UUID ownerId, CardSetInfo setInfo) {
super( super(

View file

@ -86,8 +86,8 @@ class ZiatorasEnvoyEffect extends OneShotEffect {
// TODO: factor this out and reuse for other cards // TODO: factor this out and reuse for other cards
if (player.canPlayLand()) { if (player.canPlayLand()) {
Set<Card> landSet = new HashSet<>(); Set<Card> landSet = new HashSet<>();
if (card instanceof ModalDoubleFacesCard) { if (card instanceof ModalDoubleFacedCard) {
ModalDoubleFacesCard mdfc = (ModalDoubleFacesCard) card; ModalDoubleFacedCard mdfc = (ModalDoubleFacedCard) card;
if (mdfc.getLeftHalfCard().isLand(game)) { if (mdfc.getLeftHalfCard().isLand(game)) {
landSet.add(mdfc.getLeftHalfCard()); landSet.add(mdfc.getLeftHalfCard());
} }

View file

@ -4,9 +4,8 @@ import mage.abilities.common.EntersBattlefieldTappedAbility;
import mage.abilities.effects.common.GainLifeEffect; import mage.abilities.effects.common.GainLifeEffect;
import mage.abilities.effects.common.LoseLifeOpponentsEffect; import mage.abilities.effects.common.LoseLifeOpponentsEffect;
import mage.abilities.mana.BlackManaAbility; import mage.abilities.mana.BlackManaAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
@ -15,7 +14,7 @@ import java.util.UUID;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public final class ZofConsumption extends ModalDoubleFacesCard { public final class ZofConsumption extends ModalDoubleFacedCard {
public ZofConsumption(UUID ownerId, CardSetInfo setInfo) { public ZofConsumption(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, super(ownerId, setInfo,

View file

@ -478,7 +478,7 @@ public class CommandersCastTest extends CardTestCommander4PlayersWithAIHelps {
} }
@Test @Test
public void test_ModalDoubleFacesCard_1() { public void test_ModalDoubleFacedCard_1() {
// Player order: A -> D -> C -> B // Player order: A -> D -> C -> B
// use case: // use case:
@ -533,7 +533,7 @@ public class CommandersCastTest extends CardTestCommander4PlayersWithAIHelps {
} }
@Test @Test
public void test_ModalDoubleFacesCard_CanReturnAfterKillAndCommanderControlCondition() { public void test_ModalDoubleFacedCard_CanReturnAfterKillAndCommanderControlCondition() {
// Player order: A -> D -> C -> B // Player order: A -> D -> C -> B
// Cosima, God of the Voyage, {2}{U}, creature, 2/4 // Cosima, God of the Voyage, {2}{U}, creature, 2/4

View file

@ -4,7 +4,7 @@ import mage.abilities.MageSingleton;
import mage.abilities.keyword.FlyingAbility; import mage.abilities.keyword.FlyingAbility;
import mage.cards.AdventureCard; import mage.cards.AdventureCard;
import mage.cards.Card; import mage.cards.Card;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.cards.SplitCard; import mage.cards.SplitCard;
import mage.cards.repository.CardRepository; import mage.cards.repository.CardRepository;
import mage.constants.PhaseStep; import mage.constants.PhaseStep;
@ -716,10 +716,10 @@ public class CopySpellTest extends CardTestPlayerBase {
@Test @Test
public void test_SimpleCopy_MDFC() { public void test_SimpleCopy_MDFC() {
ModalDoubleFacesCard sourceCard = (ModalDoubleFacesCard) CardRepository.instance.findCard("Agadeem's Awakening").getCard(); ModalDoubleFacedCard sourceCard = (ModalDoubleFacedCard) CardRepository.instance.findCard("Agadeem's Awakening").getCard();
ModalDoubleFacesCard originalCard = (ModalDoubleFacesCard) CardRepository.instance.findCard("Agadeem's Awakening").getCard(); ModalDoubleFacedCard originalCard = (ModalDoubleFacedCard) CardRepository.instance.findCard("Agadeem's Awakening").getCard();
prepareZoneAndZCC(originalCard); prepareZoneAndZCC(originalCard);
ModalDoubleFacesCard copiedCard = (ModalDoubleFacesCard) currentGame.copyCard(originalCard, null, playerA.getId()); ModalDoubleFacedCard copiedCard = (ModalDoubleFacedCard) currentGame.copyCard(originalCard, null, playerA.getId());
// main // main
Assert.assertNotEquals("main - id must be different", originalCard.getId(), copiedCard.getId()); Assert.assertNotEquals("main - id must be different", originalCard.getId(), copiedCard.getId());
Assert.assertEquals("main - rules must be same", originalCard.getRules(), copiedCard.getRules()); Assert.assertEquals("main - rules must be same", originalCard.getRules(), copiedCard.getRules());

View file

@ -1,4 +1,4 @@
package org.mage.test.cards.cost.modaldoublefaces; package org.mage.test.cards.cost.modaldoublefaced;
import mage.constants.PhaseStep; import mage.constants.PhaseStep;
import mage.constants.Zone; import mage.constants.Zone;
@ -8,7 +8,7 @@ import org.mage.test.serverside.base.CardTestCommanderDuelBase;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public class ModalDoubleFacesCardsInCommanderTest extends CardTestCommanderDuelBase { public class ModalDoubleFacedCardsInCommanderTest extends CardTestCommanderDuelBase {
@Test @Test
public void test_Triggers_MustAddTriggersOneTimeOnly() { public void test_Triggers_MustAddTriggersOneTimeOnly() {

View file

@ -1,8 +1,8 @@
package org.mage.test.cards.cost.modaldoublefaces; package org.mage.test.cards.cost.modaldoublefaced;
import mage.abilities.keyword.HasteAbility; import mage.abilities.keyword.HasteAbility;
import mage.cards.Card; import mage.cards.Card;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.constants.PhaseStep; import mage.constants.PhaseStep;
import mage.constants.SubType; import mage.constants.SubType;
import mage.constants.Zone; import mage.constants.Zone;
@ -18,7 +18,7 @@ import org.mage.test.serverside.base.CardTestPlayerBase;
/** /**
* @author JayDi85 * @author JayDi85
*/ */
public class ModalDoubleFacesCardsTest extends CardTestPlayerBase { public class ModalDoubleFacedCardsTest extends CardTestPlayerBase {
@Test @Test
public void test_Playable_AsCreature() { public void test_Playable_AsCreature() {
@ -417,8 +417,8 @@ public class ModalDoubleFacesCardsTest extends CardTestPlayerBase {
.findFirst() .findFirst()
.orElse(null); .orElse(null);
Assert.assertNotNull(card); Assert.assertNotNull(card);
Assert.assertTrue("must be mdf card", card instanceof ModalDoubleFacesCard); Assert.assertTrue("must be mdf card", card instanceof ModalDoubleFacedCard);
ModalDoubleFacesCard mdfCard = (ModalDoubleFacesCard) card; ModalDoubleFacedCard mdfCard = (ModalDoubleFacedCard) card;
Assert.assertEquals("card must be on exile", Zone.EXILED, currentGame.getState().getZone(mdfCard.getId())); Assert.assertEquals("card must be on exile", Zone.EXILED, currentGame.getState().getZone(mdfCard.getId()));
Assert.assertEquals("left part must be on exile", Zone.EXILED, currentGame.getState().getZone(mdfCard.getLeftHalfCard().getId())); Assert.assertEquals("left part must be on exile", Zone.EXILED, currentGame.getState().getZone(mdfCard.getLeftHalfCard().getId()));
Assert.assertEquals("right part must be on exile", Zone.EXILED, currentGame.getState().getZone(mdfCard.getRightHalfCard().getId())); Assert.assertEquals("right part must be on exile", Zone.EXILED, currentGame.getState().getZone(mdfCard.getRightHalfCard().getId()));

View file

@ -37,7 +37,7 @@ public class ReleaseToTheWindTest extends CardTestPlayerBase {
} }
@Test @Test
public void test_Exile_ModalDoubleFacesCard() { public void test_Exile_ModalDoubleFacedCard() {
// Exile target nonland permanent. For as long as that card remains exiled, its owner may cast it without paying its mana cost. // Exile target nonland permanent. For as long as that card remains exiled, its owner may cast it without paying its mana cost.
addCard(Zone.HAND, playerA, "Release to the Wind"); // {2}{U} addCard(Zone.HAND, playerA, "Release to the Wind"); // {2}{U}
addCard(Zone.BATTLEFIELD, playerA, "Island", 3); addCard(Zone.BATTLEFIELD, playerA, "Island", 3);

View file

@ -5,7 +5,7 @@ import mage.abilities.Ability;
import mage.abilities.keyword.PartnerWithAbility; import mage.abilities.keyword.PartnerWithAbility;
import mage.cards.Card; import mage.cards.Card;
import mage.cards.ExpansionSet; import mage.cards.ExpansionSet;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.cards.repository.CardInfo; import mage.cards.repository.CardInfo;
import mage.cards.repository.CardScanner; import mage.cards.repository.CardScanner;
import mage.constants.Rarity; import mage.constants.Rarity;
@ -314,7 +314,7 @@ public class BoosterGenerationTest extends MageTestBase {
); );
assertEquals( assertEquals(
"Booster must contain exactly 1 MDFC", 1, "Booster must contain exactly 1 MDFC", 1,
booster.stream().filter(ModalDoubleFacesCard.class::isInstance).count() booster.stream().filter(ModalDoubleFacedCard.class::isInstance).count()
); );
} }
} }
@ -390,7 +390,7 @@ public class BoosterGenerationTest extends MageTestBase {
fail("Booster can't have more than three snow lands"); fail("Booster can't have more than three snow lands");
} }
long mdfcCount = booster.stream().filter(ModalDoubleFacesCard.class::isInstance).count(); long mdfcCount = booster.stream().filter(ModalDoubleFacedCard.class::isInstance).count();
assertTrue("Booster can't have more than one MDFC", mdfcCount < 2); assertTrue("Booster can't have more than one MDFC", mdfcCount < 2);
foundMDFC |= mdfcCount > 0; foundMDFC |= mdfcCount > 0;

View file

@ -1871,7 +1871,7 @@ public class VerifyCardDataTest {
Card card = CardImpl.createCard(cardInfo.getClassName(), testSet); Card card = CardImpl.createCard(cardInfo.getClassName(), testSet);
System.out.println(); System.out.println();
System.out.println(card.getName() + " " + card.getManaCost().getText()); System.out.println(card.getName() + " " + card.getManaCost().getText());
if (card instanceof SplitCard || card instanceof ModalDoubleFacesCard) { if (card instanceof SplitCard || card instanceof ModalDoubleFacedCard) {
card.getAbilities().getRules(card.getName()).forEach(this::printAbilityText); card.getAbilities().getRules(card.getName()).forEach(this::printAbilityText);
} else { } else {
card.getRules().forEach(this::printAbilityText); card.getRules().forEach(this::printAbilityText);

View file

@ -3,7 +3,7 @@ package mage.abilities.effects;
import mage.abilities.Ability; import mage.abilities.Ability;
import mage.abilities.ActivatedAbility; import mage.abilities.ActivatedAbility;
import mage.cards.Card; import mage.cards.Card;
import mage.cards.ModalDoubleFacesCard; import mage.cards.ModalDoubleFacedCard;
import mage.cards.SplitCard; import mage.cards.SplitCard;
import mage.constants.*; import mage.constants.*;
import mage.game.Game; import mage.game.Game;
@ -94,9 +94,9 @@ public abstract class AsThoughEffectImpl extends ContinuousEffectImpl implements
player.setCastSourceIdWithAlternateMana(leftCard.getId(), null, leftCard.getSpellAbility().getCosts()); player.setCastSourceIdWithAlternateMana(leftCard.getId(), null, leftCard.getSpellAbility().getCosts());
Card rightCard = ((SplitCard) card).getRightHalfCard(); Card rightCard = ((SplitCard) card).getRightHalfCard();
player.setCastSourceIdWithAlternateMana(rightCard.getId(), null, rightCard.getSpellAbility().getCosts()); player.setCastSourceIdWithAlternateMana(rightCard.getId(), null, rightCard.getSpellAbility().getCosts());
} else if (card instanceof ModalDoubleFacesCard) { } else if (card instanceof ModalDoubleFacedCard) {
Card leftCard = ((ModalDoubleFacesCard) card).getLeftHalfCard(); Card leftCard = ((ModalDoubleFacedCard) card).getLeftHalfCard();
Card rightCard = ((ModalDoubleFacesCard) card).getRightHalfCard(); Card rightCard = ((ModalDoubleFacedCard) card).getRightHalfCard();
// some MDFC's are land. IE: sea gate restoration // some MDFC's are land. IE: sea gate restoration
if (!leftCard.isLand(game)) { if (!leftCard.isLand(game)) {
player.setCastSourceIdWithAlternateMana(leftCard.getId(), null, leftCard.getSpellAbility().getCosts()); player.setCastSourceIdWithAlternateMana(leftCard.getId(), null, leftCard.getSpellAbility().getCosts());

View file

@ -24,7 +24,6 @@ import mage.game.stack.Spell;
import mage.players.ManaPoolItem; import mage.players.ManaPoolItem;
import mage.players.Player; import mage.players.Player;
import mage.target.common.TargetCardInHand; import mage.target.common.TargetCardInHand;
import mage.util.CardUtil;
import mage.util.trace.TraceInfo; import mage.util.trace.TraceInfo;
import org.apache.log4j.Logger; import org.apache.log4j.Logger;
@ -541,7 +540,7 @@ public class ContinuousEffects implements Serializable {
} else if (!type.needPlayCardAbility() && objectToCheck instanceof AdventureCardSpell) { } else if (!type.needPlayCardAbility() && objectToCheck instanceof AdventureCardSpell) {
// adventure spell uses alternative characteristics for spell/stack, all other cases must use main card // adventure spell uses alternative characteristics for spell/stack, all other cases must use main card
idToCheck = ((AdventureCardSpell) objectToCheck).getMainCard().getId(); idToCheck = ((AdventureCardSpell) objectToCheck).getMainCard().getId();
} else if (!type.needPlayCardAbility() && objectToCheck instanceof ModalDoubleFacesCardHalf) { } else if (!type.needPlayCardAbility() && objectToCheck instanceof ModalDoubleFacedCardHalf) {
// each mdf side uses own characteristics to check for playing, all other cases must use main card // each mdf side uses own characteristics to check for playing, all other cases must use main card
// rules: // rules:
// "If an effect allows you to play a land or cast a spell from among a group of cards, // "If an effect allows you to play a land or cast a spell from among a group of cards,
@ -549,7 +548,7 @@ public class ContinuousEffects implements Serializable {
// of that effect. For example, if Sejiri Shelter / Sejiri Glacier is in your graveyard // of that effect. For example, if Sejiri Shelter / Sejiri Glacier is in your graveyard
// and an effect allows you to play lands from your graveyard, you could play Sejiri Glacier. // and an effect allows you to play lands from your graveyard, you could play Sejiri Glacier.
// That effect doesn't allow you to cast Sejiri Shelter." // That effect doesn't allow you to cast Sejiri Shelter."
idToCheck = ((ModalDoubleFacesCardHalf) objectToCheck).getMainCard().getId(); idToCheck = ((ModalDoubleFacedCardHalf) objectToCheck).getMainCard().getId();
} else { } else {
idToCheck = objectId; idToCheck = objectId;
} }

Some files were not shown because too many files have changed in this diff Show more