public InkmothNexusToken() { super("Blinkmoth", "1/1 Blinkmoth artifact creature with flying and infect"); cardType.add(CardType.ARTIFACT); cardType.add(CardType.CREATURE); this.subtype.add(SubType.BLINKMOTH); power = new MageInt(1); toughness = new MageInt(1); this.addAbility(FlyingAbility.getInstance()); this.addAbility(InfectAbility.getInstance()); } public InkmothNexusToken(final InkmothNexusToken token) {
public ContagiousNim (UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{B}"); this.subtype.add(SubType.ZOMBIE); this.power = new MageInt(2); this.toughness = new MageInt(2); this.addAbility(InfectAbility.getInstance()); }
public InsectInfectToken() { super("Insect", "1/1 green Insect creature token with infect"); cardType.add(CardType.CREATURE); color.setGreen(true); subtype.add(SubType.INSECT); power = new MageInt(1); toughness = new MageInt(1); addAbility(InfectAbility.getInstance()); setOriginalExpansionSetCode("SOM"); }
public LostLeonin (UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{W}"); this.subtype.add(SubType.CAT); this.subtype.add(SubType.SOLDIER); this.power = new MageInt(2); this.toughness = new MageInt(1); this.addAbility(InfectAbility.getInstance()); }
@Override public boolean apply(Game game, Ability source) { Set<UUID> opponents = game.getOpponents(source.getControllerId()); for (Permanent perm : game.getBattlefield().getActivePermanents(filter, source.getControllerId(), game)) { if (opponents.contains(perm.getControllerId())) { perm.getAbilities().remove(InfectAbility.getInstance()); } } return true; }
public BlackcleaveGoblin (UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{B}"); this.subtype.add(SubType.GOBLIN, SubType.ZOMBIE); this.power = new MageInt(2); this.toughness = new MageInt(1); this.addAbility(HasteAbility.getInstance()); this.addAbility(InfectAbility.getInstance()); }
public Flensermite (UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{B}"); this.subtype.add(SubType.GREMLIN); this.power = new MageInt(1); this.toughness = new MageInt(1); this.addAbility(InfectAbility.getInstance()); this.addAbility(LifelinkAbility.getInstance()); }
public Blightwidow (UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{G}"); this.subtype.add(SubType.SPIDER); this.power = new MageInt(2); this.toughness = new MageInt(4); this.addAbility(ReachAbility.getInstance()); this.addAbility(InfectAbility.getInstance()); }
public PriestsOfNorn (UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{W}"); this.subtype.add(SubType.CLERIC); this.power = new MageInt(1); this.toughness = new MageInt(4); this.addAbility(VigilanceAbility.getInstance()); this.addAbility(InfectAbility.getInstance()); }
public IchorclawMyr(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT,CardType.CREATURE},"{2}"); this.subtype.add(SubType.MYR); this.power = new MageInt(1); this.toughness = new MageInt(1); this.addAbility(InfectAbility.getInstance()); // Whenever Ichorclaw Myr becomes blocked, it gets +2/+2 until end of turn. this.addAbility(new BecomesBlockedTriggeredAbility(new BoostSourceEffect(2, 2, Duration.EndOfTurn), false)); }
public TaintedStrike (UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{B}"); this.getSpellAbility().addEffect(new BoostTargetEffect(1, 0, Duration.EndOfTurn)); this.getSpellAbility().addEffect(new GainAbilityTargetEffect(InfectAbility.getInstance(), Duration.EndOfTurn)); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); }
public PestilentSouleater(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT,CardType.CREATURE},"{5}"); this.subtype.add(SubType.INSECT); this.power = new MageInt(3); this.toughness = new MageInt(3); this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(InfectAbility.getInstance(), Duration.EndOfTurn), new PhyrexianManaCost(ColoredManaSymbol.B))); }
private static int sumDamage(List<Permanent> attackersThatWontBeBlocked, Player defender) { int damage = 0; for (Permanent attacker : attackersThatWontBeBlocked) { if (!attacker.getAbilities().contains(InfectAbility.getInstance())) { damage += attacker.getPower().getValue(); if (attacker.getAbilities().contains(DoubleStrikeAbility.getInstance())) { damage += attacker.getPower().getValue(); } } } return damage; }
public CorpseCur (UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT,CardType.CREATURE},"{4}"); this.subtype.add(SubType.HOUND); this.power = new MageInt(2); this.toughness = new MageInt(2); this.addAbility(InfectAbility.getInstance()); Ability ability = new EntersBattlefieldTriggeredAbility(new ReturnToHandTargetEffect()); ability.addTarget(new TargetCardInYourGraveyard(filter)); this.addAbility(ability); }
public TriumphOfTheHordes(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{2}{G}{G}"); this.getSpellAbility().addEffect(new BoostControlledEffect(1, 1, Duration.EndOfTurn)); this.getSpellAbility().addEffect(new GainAbilityControlledEffect(TrampleAbility.getInstance(), Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURES)); this.getSpellAbility().addEffect(new GainAbilityControlledEffect(InfectAbility.getInstance(), Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURES)); }
public ViridianCorrupter (UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{G}{G}"); this.subtype.add(SubType.ELF); this.subtype.add(SubType.SHAMAN); this.power = new MageInt(2); this.toughness = new MageInt(2); this.addAbility(InfectAbility.getInstance()); // When Viridian Corrupter enters the battlefield, destroy target artifact. Ability ability = new EntersBattlefieldTriggeredAbility(new DestroyTargetEffect(), false); ability.addTarget(new TargetArtifactPermanent()); this.addAbility(ability); }
public ViralDrake(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{U}"); this.subtype.add(SubType.DRAKE); this.power = new MageInt(1); this.toughness = new MageInt(4); this.addAbility(FlyingAbility.getInstance()); this.addAbility(InfectAbility.getInstance()); this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ProliferateEffect(), new ManaCostsImpl("{3}{U}"))); }
public WhisperingSpecter(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{B}{B}"); this.subtype.add(SubType.SPECTER); this.power = new MageInt(1); this.toughness = new MageInt(1); this.addAbility(FlyingAbility.getInstance()); this.addAbility(InfectAbility.getInstance()); Ability ability = new DealsCombatDamageToAPlayerTriggeredAbility(new SacrificeSourceEffect(), true, true); ability.addEffect(new WhisperingSpecterEffect()); this.addAbility(ability); }
public FleshEaterImp(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{3}{B}"); this.subtype.add(SubType.IMP); this.power = new MageInt(2); this.toughness = new MageInt(2); this.addAbility(FlyingAbility.getInstance()); this.addAbility(InfectAbility.getInstance()); this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn), new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)))); }
public GraftedExoskeleton(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{4}"); this.subtype.add(SubType.EQUIPMENT); // Equipped creature gets +2/+2 and has infect. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(InfectAbility.getInstance(), AttachmentType.EQUIPMENT))); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(2, 2))); // Whenever Grafted Exoskeleton becomes unattached from a permanent, sacrifice that permanent. this.addAbility(new UnattachedTriggeredAbility(new SacrificeEquippedEffect(), false)); // Equip {2} this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(2))); }