@Override public OutlastAbility copy() { return new OutlastAbility(this); }
public OutlastAbility(Cost cost) { super(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.P1P1.createInstance()), cost); this.addCost(new TapSourceCost()); this.timing = TimingRule.SORCERY; }
@Override public String getRule() { StringBuilder sb = new StringBuilder("Outlast ").append(manaCosts.getText()); sb.append(" <i>(").append(getManaCosts().getText()).append(", ").append(getCosts().getText()).append(": Put a +1/+1 counter on this creature. Outlast only as a sorcery.)</i>"); return sb.toString(); }
public DisownedAncestor(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{B}"); this.subtype.add(SubType.SPIRIT); this.subtype.add(SubType.WARRIOR); this.power = new MageInt(0); this.toughness = new MageInt(4); // Outlast {1}{B} this.addAbility(new OutlastAbility(new ManaCostsImpl("{1}{B}"))); }
public SaltRoadPatrol(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{W}"); this.subtype.add(SubType.HUMAN); this.subtype.add(SubType.SCOUT); this.power = new MageInt(2); this.toughness = new MageInt(5); // Outlast {1}{W} this.addAbility(new OutlastAbility(new ManaCostsImpl("{1}{W}"))); }
public HeraldOfAnafenza(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{W}"); this.subtype.add(SubType.HUMAN); this.subtype.add(SubType.SOLDIER); this.power = new MageInt(1); this.toughness = new MageInt(2); // Outlast {2}{W} <em>({2}{W} {T}: Put a +1/+1 counter on this creature. Outlast only as a sorcery.)</em> this.addAbility(new OutlastAbility(new ManaCostsImpl("{2}{W}"))); // Whenever you activate Herald of Anafenza's outlast ability, create a 1/1 white Warrior creature token. this.addAbility(new HeraldOfAnafenzaTriggeredAbility()); }
public AbzanFalconer(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{W}"); this.subtype.add(SubType.HUMAN); this.subtype.add(SubType.SOLDIER); this.power = new MageInt(2); this.toughness = new MageInt(3); // Outlast {W} this.addAbility(new OutlastAbility(new ColoredManaCost(ColoredManaSymbol.W))); // Each creature you control with a +1/+1 counter on it has flying. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAllEffect(FlyingAbility.getInstance(), Duration.WhileOnBattlefield, filter, "Each creature you control with a +1/+1 counter on it has flying"))); }
public TuskguardCaptain(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{G}"); this.subtype.add(SubType.HUMAN); this.subtype.add(SubType.WARRIOR); this.power = new MageInt(2); this.toughness = new MageInt(3); // Outlast G this.addAbility(new OutlastAbility(new ManaCostsImpl("{G}"))); // Each creature you control with a +1/+1 counter on it has trample. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAllEffect(TrampleAbility.getInstance(), Duration.WhileOnBattlefield, filter, rule))); }
public LongshotSquad(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{G}"); this.subtype.add(SubType.HOUND); this.subtype.add(SubType.ARCHER); this.power = new MageInt(3); this.toughness = new MageInt(3); // Outlast 1G this.addAbility(new OutlastAbility(new ManaCostsImpl("{1}{G}"))); // Each creature you control with a +1/+1 counter on it has reach. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAllEffect(ReachAbility.getInstance(), Duration.WhileOnBattlefield, filter, "Each creature you control with a +1/+1 counter on it has reach"))); }
public AinokBondKin(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{W}"); this.subtype.add(SubType.HOUND); this.subtype.add(SubType.SOLDIER); this.power = new MageInt(2); this.toughness = new MageInt(1); // Outlast {1}{W} <em>({1}{W}, {T}: Put a +1/+1 counter on this creature. Outlast only as a sorcery.)</em> this.addAbility(new OutlastAbility(new ManaCostsImpl("{1}{W}"))); // Each creature you control with a +1/+1 counter on it has first strike. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAllEffect(FirstStrikeAbility.getInstance(), Duration.WhileOnBattlefield, filter, rule))); }
public MerEkNightblade(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{B}"); this.subtype.add(SubType.ORC); this.subtype.add(SubType.ASSASSIN); this.power = new MageInt(2); this.toughness = new MageInt(3); // Outlast {B} this.addAbility(new OutlastAbility(new ManaCostsImpl<>("{B}"))); // Each creature you control with a +1/+1 counter on it has deathtouch. this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAllEffect(DeathtouchAbility.getInstance(), Duration.WhileOnBattlefield, filter, "Each creature you control with a +1/+1 counter on it has deathtouch"))); }
public AbzanBattlePriest(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{3}{W}"); this.subtype.add(SubType.HUMAN); this.subtype.add(SubType.CLERIC); this.power = new MageInt(3); this.toughness = new MageInt(2); // Outlast {W} this.addAbility(new OutlastAbility(new ManaCostsImpl<>("{W}"))); // Each creature you control with a +1/+1 counter on it has lifelink. this.addAbility(new SimpleStaticAbility( Zone.BATTLEFIELD, new GainAbilityAllEffect( LifelinkAbility.getInstance(), Duration.WhileOnBattlefield, filter, "Each creature you control with a +1/+1 counter on it has lifelink" ) )); }