(Ready to merge) Update cephalid to octopus, KLD block cat dragons (#12456)

* update cephalid to octopus

* update KLD block cat dragons
This commit is contained in:
Evan Kranzler 2024-06-12 12:11:34 -04:00 committed by GitHub
parent b85d2883e3
commit 3ae1f0d7fb
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
28 changed files with 49 additions and 48 deletions

View file

@ -28,23 +28,23 @@ import java.util.UUID;
*/
public final class AboshanCephalidEmperor extends CardImpl {
static final FilterControlledPermanent filter1 = new FilterControlledPermanent("untapped Cephalid you control");
static final FilterControlledPermanent filter1 = new FilterControlledPermanent("untapped Octopus you control");
static final FilterCreaturePermanent filter2 = new FilterCreaturePermanent("creatures without flying");
static {
filter1.add(SubType.CEPHALID.getPredicate());
filter1.add(SubType.OCTOPUS.getPredicate());
filter2.add(Predicates.not(new AbilityPredicate(FlyingAbility.class)));
}
public AboshanCephalidEmperor(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{4}{U}{U}");
this.supertype.add(SuperType.LEGENDARY);
this.subtype.add(SubType.CEPHALID, SubType.NOBLE);
this.subtype.add(SubType.OCTOPUS, SubType.NOBLE);
this.power = new MageInt(3);
this.toughness = new MageInt(3);
// Tap an untapped Cephalid you control: Tap target permanent.
// Tap an untapped Octopus you control: Tap target permanent.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TapTargetEffect(), new TapTargetCost(new TargetControlledPermanent(1, filter1)));
ability.addTarget(new TargetPermanent());
this.addAbility(ability);

View file

@ -27,7 +27,7 @@ public final class BackstreetBruiser extends CardImpl {
public BackstreetBruiser(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{U}");
this.subtype.add(SubType.CEPHALID);
this.subtype.add(SubType.OCTOPUS);
this.subtype.add(SubType.ROGUE);
this.power = new MageInt(3);
this.toughness = new MageInt(3);

View file

@ -21,7 +21,7 @@ public final class BorGullet extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{3}{U}{B}");
this.subtype.add(SubType.HORROR);
this.subtype.add(SubType.CEPHALID);
this.subtype.add(SubType.OCTOPUS);
this.power = new MageInt(4);
this.toughness = new MageInt(4);

View file

@ -34,7 +34,7 @@ public final class CallousOppressor extends CardImpl {
public CallousOppressor(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{U}{U}");
this.subtype.add(SubType.CEPHALID);
this.subtype.add(SubType.OCTOPUS);
this.power = new MageInt(1);
this.toughness = new MageInt(2);

View file

@ -17,7 +17,7 @@ public final class CephalidAristocrat extends CardImpl {
public CephalidAristocrat(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{4}{U}");
this.subtype.add(SubType.CEPHALID, SubType.NOBLE);
this.subtype.add(SubType.OCTOPUS, SubType.NOBLE);
this.power = new MageInt(3);
this.toughness = new MageInt(3);

View file

@ -23,7 +23,7 @@ public final class CephalidBroker extends CardImpl {
public CephalidBroker(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{U}");
this.subtype.add(SubType.CEPHALID);
this.subtype.add(SubType.OCTOPUS);
this.power = new MageInt(2);
this.toughness = new MageInt(2);

View file

@ -27,7 +27,7 @@ public final class CephalidConstable extends CardImpl {
public CephalidConstable(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{U}{U}");
this.subtype.add(SubType.CEPHALID);
this.subtype.add(SubType.OCTOPUS);
this.subtype.add(SubType.WIZARD);
this.power = new MageInt(1);
this.toughness = new MageInt(1);

View file

@ -27,7 +27,7 @@ public final class CephalidFacetaker extends CardImpl {
public CephalidFacetaker(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{U}");
this.subtype.add(SubType.CEPHALID);
this.subtype.add(SubType.OCTOPUS);
this.subtype.add(SubType.ROGUE);
this.power = new MageInt(1);
this.toughness = new MageInt(4);

View file

@ -28,7 +28,7 @@ public final class CephalidIllusionist extends CardImpl {
public CephalidIllusionist(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{U}");
this.subtype.add(SubType.CEPHALID);
this.subtype.add(SubType.OCTOPUS);
this.subtype.add(SubType.WIZARD);
this.power = new MageInt(1);

View file

@ -24,7 +24,7 @@ public final class CephalidInkshrouder extends CardImpl {
public CephalidInkshrouder(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{U}");
this.subtype.add(SubType.CEPHALID);
this.subtype.add(SubType.OCTOPUS);
this.power = new MageInt(2);
this.toughness = new MageInt(1);

View file

@ -20,7 +20,7 @@ public final class CephalidLooter extends CardImpl {
public CephalidLooter(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{U}");
this.subtype.add(SubType.CEPHALID);
this.subtype.add(SubType.OCTOPUS);
this.subtype.add(SubType.ROGUE);
this.power = new MageInt(2);

View file

@ -23,7 +23,7 @@ public final class CephalidPathmage extends CardImpl {
public CephalidPathmage(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{U}");
this.subtype.add(SubType.CEPHALID);
this.subtype.add(SubType.OCTOPUS);
this.subtype.add(SubType.WIZARD);
this.power = new MageInt(1);
this.toughness = new MageInt(2);

View file

@ -32,7 +32,7 @@ public final class CephalidRetainer extends CardImpl {
public CephalidRetainer(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{U}{U}");
this.subtype.add(SubType.CEPHALID);
this.subtype.add(SubType.OCTOPUS);
this.power = new MageInt(2);
this.toughness = new MageInt(3);

View file

@ -25,7 +25,7 @@ public final class CephalidSage extends CardImpl {
public CephalidSage(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{U}");
this.subtype.add(SubType.CEPHALID);
this.subtype.add(SubType.OCTOPUS);
this.power = new MageInt(2);
this.toughness = new MageInt(3);

View file

@ -15,7 +15,6 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.StaticFilters;
import mage.target.common.TargetControlledPermanent;
/**
*
@ -25,7 +24,7 @@ public final class CephalidScout extends CardImpl {
public CephalidScout(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{U}");
this.subtype.add(SubType.CEPHALID);
this.subtype.add(SubType.OCTOPUS);
this.subtype.add(SubType.WIZARD);
this.subtype.add(SubType.SCOUT);

View file

@ -28,7 +28,7 @@ public final class CephalidSnitch extends CardImpl {
public CephalidSnitch(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{U}");
this.subtype.add(SubType.CEPHALID);
this.subtype.add(SubType.OCTOPUS);
this.subtype.add(SubType.WIZARD);
this.power = new MageInt(1);
this.toughness = new MageInt(1);

View file

@ -27,7 +27,7 @@ public final class CephalidVandal extends CardImpl {
public CephalidVandal(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{U}");
this.subtype.add(SubType.CEPHALID);
this.subtype.add(SubType.OCTOPUS);
this.subtype.add(SubType.ROGUE);
this.power = new MageInt(1);
this.toughness = new MageInt(1);

View file

@ -1,7 +1,5 @@
package mage.cards.f;
import java.util.UUID;
import mage.MageInt;
import mage.abilities.common.SimpleActivatedAbility;
import mage.abilities.costs.mana.ManaCostsImpl;
@ -11,9 +9,10 @@ import mage.abilities.keyword.ImproviseAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration;
import mage.constants.Zone;
import mage.constants.SubType;
import java.util.UUID;
/**
* @author JRHerlehy
@ -23,7 +22,7 @@ public final class FreejamRegent extends CardImpl {
public FreejamRegent(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{4}{R}{R}");
this.subtype.add(SubType.DRAGON);
this.subtype.add(SubType.CAT, SubType.DRAGON);
this.power = new MageInt(4);
this.toughness = new MageInt(4);
@ -34,8 +33,9 @@ public final class FreejamRegent extends CardImpl {
this.addAbility(FlyingAbility.getInstance());
// {1}{R}: Freejam Regent gets +2/+0 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD,
new BoostSourceEffect(2, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{R}")));
this.addAbility(new SimpleActivatedAbility(
new BoostSourceEffect(2, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{R}")
));
}
private FreejamRegent(final FreejamRegent card) {

View file

@ -33,7 +33,7 @@ public final class KamizObscuraOculus extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{W}{U}{B}");
this.supertype.add(SuperType.LEGENDARY);
this.subtype.add(SubType.CEPHALID, SubType.ROGUE);
this.subtype.add(SubType.OCTOPUS, SubType.ROGUE);
this.power = new MageInt(2);
this.toughness = new MageInt(4);

View file

@ -38,7 +38,7 @@ public final class LlawanCephalidEmpress extends CardImpl {
public LlawanCephalidEmpress(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{3}{U}");
this.supertype.add(SuperType.LEGENDARY);
this.subtype.add(SubType.CEPHALID, SubType.NOBLE);
this.subtype.add(SubType.OCTOPUS, SubType.NOBLE);
this.power = new MageInt(2);
this.toughness = new MageInt(3);

View file

@ -24,7 +24,7 @@ public final class ObscuraInterceptor extends CardImpl {
public ObscuraInterceptor(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{W}{U}{B}");
this.subtype.add(SubType.CEPHALID);
this.subtype.add(SubType.OCTOPUS);
this.subtype.add(SubType.WIZARD);
this.power = new MageInt(3);
this.toughness = new MageInt(1);

View file

@ -25,7 +25,7 @@ public final class OmenHawker extends CardImpl {
public OmenHawker(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{U}");
this.subtype.add(SubType.CEPHALID);
this.subtype.add(SubType.OCTOPUS);
this.subtype.add(SubType.ADVISOR);
this.power = new MageInt(1);
this.toughness = new MageInt(1);

View file

@ -21,7 +21,7 @@ public final class PsychicPickpocket extends CardImpl {
public PsychicPickpocket(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{4}{U}");
this.subtype.add(SubType.CEPHALID);
this.subtype.add(SubType.OCTOPUS);
this.subtype.add(SubType.ROGUE);
this.power = new MageInt(3);
this.toughness = new MageInt(2);

View file

@ -23,7 +23,7 @@ public final class QuezaAugurOfAgonies extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{W}{U}{B}");
this.supertype.add(SuperType.LEGENDARY);
this.subtype.add(SubType.CEPHALID);
this.subtype.add(SubType.OCTOPUS);
this.subtype.add(SubType.ADVISOR);
this.power = new MageInt(3);
this.toughness = new MageInt(4);

View file

@ -19,7 +19,7 @@ public final class RevelRuiner extends CardImpl {
public RevelRuiner(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{3}{B}");
this.subtype.add(SubType.CEPHALID);
this.subtype.add(SubType.OCTOPUS);
this.subtype.add(SubType.ROGUE);
this.power = new MageInt(3);
this.toughness = new MageInt(1);

View file

@ -17,7 +17,6 @@ import mage.counters.CounterType;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.Predicates;
import mage.filter.predicate.mageobject.CommanderPredicate;
import mage.game.Game;
import mage.target.common.TargetCreaturePermanent;
import java.util.UUID;
@ -36,7 +35,7 @@ public class ShieldBroker extends CardImpl {
public ShieldBroker(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{3}{U}{U}");
this.addSubType(SubType.CEPHALID, SubType.ADVISOR);
this.addSubType(SubType.OCTOPUS, SubType.ADVISOR);
this.power = new MageInt(3);
this.toughness = new MageInt(4);

View file

@ -1,7 +1,5 @@
package mage.cards.s;
import java.util.UUID;
import mage.MageInt;
import mage.abilities.common.SimpleActivatedAbility;
import mage.abilities.costs.mana.ManaCostsImpl;
@ -13,19 +11,19 @@ import mage.abilities.keyword.HasteAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration;
import mage.constants.Zone;
import mage.constants.SubType;
import java.util.UUID;
/**
*
* @author fireshoes
*/
public final class SkyshipStalker extends CardImpl {
public SkyshipStalker(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{R}{R}");
this.subtype.add(SubType.DRAGON);
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{R}{R}");
this.subtype.add(SubType.CAT, SubType.DRAGON);
this.power = new MageInt(3);
this.toughness = new MageInt(3);
@ -33,13 +31,19 @@ public final class SkyshipStalker extends CardImpl {
this.addAbility(FlyingAbility.getInstance());
// {R}: Skyship Stalker gains +1/+0 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{R}")));
this.addAbility(new SimpleActivatedAbility(new BoostSourceEffect(
1, 0, Duration.EndOfTurn
), new ManaCostsImpl<>("{R}")));
// {R}: Skyship Stalker gains first strike until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{R}")));
this.addAbility(new SimpleActivatedAbility(new GainAbilitySourceEffect(
FirstStrikeAbility.getInstance(), Duration.EndOfTurn
), new ManaCostsImpl<>("{R}")));
// {R}: Skyship Stalker gains haste until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(HasteAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{R}")));
this.addAbility(new SimpleActivatedAbility(new GainAbilitySourceEffect(
HasteAbility.getInstance(), Duration.EndOfTurn
), new ManaCostsImpl<>("{R}")));
}
private SkyshipStalker(final SkyshipStalker card) {

View file

@ -118,7 +118,6 @@ public enum SubType {
CARRIER("Carrier", SubTypeSet.CreatureType),
CAT("Cat", SubTypeSet.CreatureType),
CENTAUR("Centaur", SubTypeSet.CreatureType),
CEPHALID("Cephalid", SubTypeSet.CreatureType),
CEREAN("Cerean", SubTypeSet.CreatureType, true), // Star Wars
CHIMERA("Chimera", SubTypeSet.CreatureType),
CHISS("Chiss", SubTypeSet.CreatureType, true),