public Hankyu(UUID ownerId) { super(ownerId, 253, "Hankyu", Rarity.UNCOMMON, new CardType[] {CardType.ARTIFACT}, "{1}"); this.expansionSetCode = "CHK"; this.subtype.add("Equipment"); /* Equipped creature has "{T}: Put an aim counter on Hankyu" and */ SimpleActivatedAbility ability1 = new SimpleActivatedAbility( Zone.BATTLEFIELD, new HankyuAddCounterEffect(this.getId()), new TapSourceCost()); ability1.setSourceId(this.getId()); // to know where to put the counters on this.addAbility( new SimpleStaticAbility( Zone.BATTLEFIELD, new GainAbilityAttachedEffect(ability1, AttachmentType.EQUIPMENT))); /* "{T}, Remove all aim counters from Hankyu: This creature deals * damage to target creature or player equal to the number of * aim counters removed this way." */ SimpleActivatedAbility ability2 = new SimpleActivatedAbility( Zone.BATTLEFIELD, new HankyuDealsDamageEffect(), new TapSourceCost()); ability2.addCost(new HankyuCountersSourceCost(this.getId())); ability2.addTarget(new TargetCreatureOrPlayer()); this.addAbility( new SimpleStaticAbility( Zone.BATTLEFIELD, new GainAbilityAttachedEffect(ability2, AttachmentType.EQUIPMENT))); // Equip {4} ({4}: Attach to target creature you control. Equip only as a sorcery.) this.addAbility(new EquipAbility(Outcome.BoostCreature, new GenericManaCost(4))); }
public FlailingOgre(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[] {CardType.CREATURE}, "{2}{R}"); this.subtype.add("Ogre"); this.power = new MageInt(3); this.toughness = new MageInt(3); // {1}: Flailing Ogre gets +1/+1 until end of turn. Any player may activate this ability. SimpleActivatedAbility ability = new SimpleActivatedAbility( Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl("{1}")); ability.setMayActivate(TargetController.ANY); ability.addEffect(new InfoEffect("Any player may activate this ability")); this.addAbility(ability); // {1}: Flailing Ogre gets -1/-1 until end of turn. Any player may activate this ability. ability = new SimpleActivatedAbility( Zone.BATTLEFIELD, new BoostSourceEffect(-1, -1, Duration.EndOfTurn), new ManaCostsImpl("{1}")); ability.setMayActivate(TargetController.ANY); ability.addEffect(new InfoEffect("Any player may activate this ability")); this.addAbility(ability); }
public MyrTurbine(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[] {CardType.ARTIFACT}, "{5}"); this.addAbility( new SimpleActivatedAbility( Zone.BATTLEFIELD, new CreateTokenEffect(new MyrToken()), new TapSourceCost())); SimpleActivatedAbility ability = new SimpleActivatedAbility( Zone.BATTLEFIELD, new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(filterCard)), new TapSourceCost()); ability.addCost(new TapTargetCost(new TargetControlledPermanent(5, 5, filterMyr, true))); this.addAbility(ability); }
public HelmOfObedience(UUID ownerId) { super( ownerId, 163, "Helm of Obedience", Rarity.RARE, new CardType[] {CardType.ARTIFACT}, "{4}"); this.expansionSetCode = "ALL"; // {X}, {tap}: Target opponent puts cards from the top of his or her library into his or her // graveyard until a creature card or X cards are put into that graveyard this way, whichever // comes first. If a creature card is put into that graveyard this way, sacrifice Helm of // Obedience and put that card onto the battlefield under your control. X can't be 0. SimpleActivatedAbility abilitiy = new SimpleActivatedAbility( Constants.Zone.BATTLEFIELD, new HelmOfObedienceEffect(), new TapSourceCost()); abilitiy.addCost(new VariableManaCost()); abilitiy.addTarget(new TargetOpponent()); this.addAbility(abilitiy); }
public Dreadwing(UUID ownerId) { super(ownerId, 43, "Dreadwing", Rarity.UNCOMMON, new CardType[] {CardType.CREATURE}, "{B}"); this.expansionSetCode = "CON"; this.subtype.add("Zombie"); this.power = new MageInt(1); this.toughness = new MageInt(1); SimpleActivatedAbility ability = new SimpleActivatedAbility( Zone.BATTLEFIELD, new BoostSourceEffect(3, 0, Duration.EndOfTurn), new ManaCostsImpl(("{1}{U}{B}"))); ability .getEffects() .add(new GainAbilitySourceEffect(FlyingAbility.getInstance(), Duration.EndOfTurn)); this.addAbility(ability); }
public UnyaroGriffin(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[] {CardType.CREATURE}, "{3}{W}"); this.subtype.add("Griffin"); this.power = new MageInt(2); this.toughness = new MageInt(2); // Flying this.addAbility(FlyingAbility.getInstance()); // Sacrifice Unyaro Griffin: Counter target red instant or sorcery spell. SimpleActivatedAbility ability = new SimpleActivatedAbility( Zone.BATTLEFIELD, new CounterTargetEffect(), new SacrificeSourceCost()); ability.addTarget(new TargetSpell(filter)); this.addAbility(ability); }
public EmbodimentOfSpring(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[] {CardType.CREATURE}, "{U}"); this.subtype.add("Elemental"); this.power = new MageInt(0); this.toughness = new MageInt(3); // {1}{G}, {T}, Sacrifice Embodiment of Spring: Search your library for a basic land card, put // it onto the battlefield tapped, then shuffle your library. SimpleActivatedAbility ability = new SimpleActivatedAbility( Zone.BATTLEFIELD, new SearchLibraryPutInPlayEffect( new TargetCardInLibrary(new FilterBasicLandCard()), true), new ManaCostsImpl("{1}{G}")); ability.addCost(new TapSourceCost()); ability.addCost(new SacrificeSourceCost()); this.addAbility(ability); }
public Cursecatcher(UUID ownerId) { super(ownerId, 34, "Cursecatcher", Rarity.UNCOMMON, new CardType[] {CardType.CREATURE}, "{U}"); this.expansionSetCode = "SHM"; this.subtype.add("Merfolk"); this.subtype.add("Wizard"); this.color.setBlue(true); this.power = new MageInt(1); this.toughness = new MageInt(1); // Sacrifice Cursecatcher: Counter target instant or sorcery spell unless its controller pays // {1}. SimpleActivatedAbility ability = new SimpleActivatedAbility( Zone.BATTLEFIELD, new CounterUnlessPaysEffect(new GenericManaCost(1)), new SacrificeSourceCost()); ability.addTarget(new TargetSpell(filter)); this.addAbility(ability); }
public FeralHydra(UUID ownerId) { super(ownerId, 131, "Feral Hydra", Rarity.RARE, new CardType[] {CardType.CREATURE}, "{X}{G}"); this.expansionSetCode = "ALA"; this.subtype.add("Hydra"); this.subtype.add("Beast"); this.power = new MageInt(0); this.toughness = new MageInt(0); // Feral Hydra enters the battlefield with X +1/+1 counters on it. this.addAbility(new EntersBattlefieldAbility(new FeralHydraEffect(), true)); // {3}: Put a +1/+1 counter on Feral Hydra. Any player may activate this ability. SimpleActivatedAbility ability = new SimpleActivatedAbility( Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.P1P1.createInstance()), new ManaCostsImpl("{3}")); ability.setMayActivate(TargetController.ANY); ability.addEffect(new InfoEffect("Any player may activate this ability")); this.addAbility(ability); }
public VampireHexmage(UUID ownerId) { super( ownerId, 114, "Vampire Hexmage", Rarity.UNCOMMON, new CardType[] {CardType.CREATURE}, "{B}{B}"); this.expansionSetCode = "ZEN"; this.subtype.add("Vampire"); this.subtype.add("Shaman"); this.color.setBlack(true); this.power = new MageInt(2); this.toughness = new MageInt(1); this.addAbility(FirstStrikeAbility.getInstance()); SimpleActivatedAbility vampireHexmageAbility = new SimpleActivatedAbility( Zone.BATTLEFIELD, new VampireHexmageEffect(), new SacrificeSourceCost()); vampireHexmageAbility.addTarget(new TargetPermanent()); this.addAbility(vampireHexmageAbility); }