implement [M3C] Planar Nexus [MH3] Omo, Queen of Vesuva and [UNF] Nearby Planet ; introduce AllNonbasicLandTypes status (#12203)

This commit is contained in:
Evan Kranzler 2024-06-07 12:36:41 -04:00 committed by GitHub
parent 3e18b58cac
commit 08c7d2ab8f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
19 changed files with 659 additions and 5 deletions

View file

@ -323,10 +323,9 @@ public abstract class MageObjectImpl implements MageObject {
if (value == null) {
return false;
}
if (value.getSubTypeSet() == SubTypeSet.CreatureType && isAllCreatureTypes(game)) {
return true;
}
return getSubtype(game).contains(value);
return value.getSubTypeSet() == SubTypeSet.CreatureType && isAllCreatureTypes(game)
|| value.getSubTypeSet() == SubTypeSet.NonBasicLandType && isAllNonbasicLandTypes(game)
|| getSubtype(game).contains(value);
}
@Override
@ -375,6 +374,21 @@ public abstract class MageObjectImpl implements MageObject {
this.getSubtype(game).setIsAllCreatureTypes(value && (this.isTribal(game) || this.isCreature(game)));
}
@Override
public boolean isAllNonbasicLandTypes(Game game) {
return this.getSubtype(game).isAllNonbasicLandTypes();
}
@Override
public void setIsAllNonbasicLandTypes(boolean value) {
this.getSubtype().setIsAllNonbasicLandTypes(value && this.isLand());
}
@Override
public void setIsAllNonbasicLandTypes(Game game, boolean value) {
this.getSubtype(game).setIsAllNonbasicLandTypes(value && this.isLand(game));
}
/**
* Remove power/toughness character defining abilities
*/