[BRC] Implement Rootpath Purifier (ready for review) (#10363)

* refactor check supertype methods

* change supertype to list to match card type

* refactor various subtype methods

* implement mageobjectattribute for supertype

* a few fixes

* [BRC] Implement Rootpath Purifier

* a few extra fixes

* more fixes

* add test for purifier
This commit is contained in:
Evan Kranzler 2023-05-13 10:48:07 -04:00 committed by GitHub
parent a850e3660b
commit 024c3081df
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
98 changed files with 489 additions and 238 deletions

View file

@ -11,7 +11,6 @@ import mage.abilities.costs.mana.ManaCosts;
import mage.abilities.costs.mana.ManaCostsImpl;
import mage.abilities.effects.ContinuousEffect;
import mage.abilities.effects.Effect;
import mage.cards.Card;
import mage.cards.FrameStyle;
import mage.cards.repository.TokenInfo;
import mage.cards.repository.TokenRepository;
@ -21,19 +20,19 @@ import mage.constants.SubType;
import mage.constants.SuperType;
import mage.game.Game;
import mage.game.events.ZoneChangeEvent;
import mage.util.GameLog;
import mage.util.RandomUtil;
import mage.util.SubTypes;
import java.lang.reflect.Constructor;
import java.util.*;
import java.util.Collections;
import java.util.List;
import java.util.UUID;
/**
* @author spjspj
*/
public abstract class Plane extends CommandObjectImpl {
private static final List<CardType> emptyList = Collections.unmodifiableList(new ArrayList<>());
private static final ObjectColor emptyColor = new ObjectColor();
private static final ManaCosts emptyCost = new ManaCostsImpl<>();
@ -144,7 +143,7 @@ public abstract class Plane extends CommandObjectImpl {
@Override
public List<CardType> getCardType(Game game) {
return emptyList;
return Collections.emptyList();
}
@Override
@ -163,8 +162,8 @@ public abstract class Plane extends CommandObjectImpl {
}
@Override
public EnumSet<SuperType> getSuperType() {
return EnumSet.noneOf(SuperType.class);
public List<SuperType> getSuperType(Game game) {
return Collections.emptyList();
}
@Override