@Override public AuraAttachedCount copy() { return new AuraAttachedCount(this); }
@Override public boolean apply(Game game, Ability source) { Permanent sourcePermanent = game.getPermanent(source.getSourceId()); if (sourcePermanent != null) { EquipmentAttachedCount eamount = new EquipmentAttachedCount(); int value = eamount.calculate(game, source, this); AuraAttachedCount aamount = new AuraAttachedCount(); value += aamount.calculate(game, source, this); CreateTokenEffect effect = new CreateTokenEffect(new ValdukElementalToken(), value); if (effect.apply(game, source)) { effect.exileTokensCreatedAtNextEndStep(game, source); return true; } } return false; } }
public GracebladeArtisan(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{W}"); this.subtype.add(SubType.HUMAN); this.subtype.add(SubType.MONK); this.power = new MageInt(2); this.toughness = new MageInt(3); // Graceblade Artisan gets +2/+2 for each Aura attached to it. AuraAttachedCount count = new AuraAttachedCount(2); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(count, count, Duration.WhileOnBattlefield))); }
public RabidWombat(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{G}{G}"); this.subtype.add(SubType.WOMBAT); this.power = new MageInt(0); this.toughness = new MageInt(1); // Vigilance this.addAbility(VigilanceAbility.getInstance()); // Rabid Wombat gets +2/+2 for each Aura attached to it. AuraAttachedCount count = new AuraAttachedCount(2); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(count, count, Duration.WhileOnBattlefield))); }
public UrilTheMiststalker(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{R}{G}{W}"); addSuperType(SuperType.LEGENDARY); this.subtype.add(SubType.BEAST); this.power = new MageInt(5); this.toughness = new MageInt(5); // Hexproof this.addAbility(HexproofAbility.getInstance()); // Uril, the Miststalker gets +2/+2 for each Aura attached to it. AuraAttachedCount count = new AuraAttachedCount(2); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(count, count, Duration.WhileOnBattlefield))); }
public KorSpiritdancer(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{W}"); this.subtype.add(SubType.KOR); this.subtype.add(SubType.WIZARD); this.power = new MageInt(0); this.toughness = new MageInt(2); // Kor Spiritdancer gets +2/+2 for each Aura attached to it. AuraAttachedCount count = new AuraAttachedCount(2); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(count, count, Duration.WhileOnBattlefield))); // Whenever you cast an Aura spell, you may draw a card. this.addAbility(new SpellCastControllerTriggeredAbility(new DrawCardSourceControllerEffect(1), filter, true)); }
public HeavenlyBlademaster(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{5}{W}"); this.subtype.add(SubType.ANGEL); this.power = new MageInt(3); this.toughness = new MageInt(6); // Flying this.addAbility(FlyingAbility.getInstance()); // Double strike this.addAbility(DoubleStrikeAbility.getInstance()); // When Heavenly Blademaster enters the battlefield, you may attach any number of Auras and Equipment you control to it. this.addAbility(new EntersBattlefieldTriggeredAbility( new HeavenlyBlademasterEffect(), true )); // Other creatures you control get +1/+1 for each Aura and Equipment attached to Heavenly Blademaster. DynamicValue totalAmount = new AdditiveDynamicValue( new EquipmentAttachedCount(1), new AuraAttachedCount(1) ); this.addAbility(new SimpleStaticAbility( Zone.BATTLEFIELD, new BoostControlledEffect( totalAmount, totalAmount, Duration.WhileOnBattlefield, StaticFilters.FILTER_PERMANENT_CREATURES, true ).setText("Other creatures you control get +1/+1 for each Aura and Equipment attached to {this}") )); }
public ChampionOfTheFlame(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{R}"); this.subtype.add(SubType.HUMAN); this.subtype.add(SubType.WARRIOR); this.power = new MageInt(1); this.toughness = new MageInt(1); // Trample this.addAbility(TrampleAbility.getInstance()); // Champion of the Flame gets +2/+2 for each Aura and Equipment attached to it. DynamicValue auraAmount = new AuraAttachedCount(2); DynamicValue equipAmount = new EquipmentAttachedCount(2); DynamicValue totalAmount = new AdditiveDynamicValue(auraAmount, equipAmount); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(totalAmount, totalAmount, Duration.WhileOnBattlefield) .setText("{this} gets +2/+2 for each Aura and Equipment attached to it"))); }
public GathererOfGraces(UUID ownerId, CardSetInfo cardSetInfo) { super(ownerId, cardSetInfo, new CardType[]{CardType.CREATURE}, "{1}{G}"); this.subtype.add(SubType.HUMAN); this.subtype.add(SubType.DRUID); this.power = new MageInt(1); this.toughness = new MageInt(2); // Gatherer of Graces gets +1/+1 for each Aura attached to it. AuraAttachedCount count = new AuraAttachedCount(1); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(count, count, Duration.WhileOnBattlefield))); // Sacrifice an Aura: Regenerate Gatherer of Graces this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new SacrificeTargetCost(new TargetControlledPermanent(filter)))); }
public Evershrike(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{3}{W/B}{W/B}"); this.subtype.add(SubType.ELEMENTAL); this.subtype.add(SubType.SPIRIT); this.power = new MageInt(2); this.toughness = new MageInt(2); // Flying this.addAbility(FlyingAbility.getInstance()); // Evershrike gets +2/+2 for each Aura attached to it. AuraAttachedCount amount = new AuraAttachedCount(2); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(amount, amount, Duration.WhileOnBattlefield))); // {X}{WB}{WB}: Return Evershrike from your graveyard to the battlefield. You may put an Aura card with converted mana cost X or less from your hand onto the battlefield attached to it. If you don't, exile Evershrike. this.addAbility(new SimpleActivatedAbility(Zone.GRAVEYARD, new EvershrikeEffect(), new ManaCostsImpl("{X}{W/B}{W/B}"))); }