@Override public GetEnergyCountersControllerEffect copy() { return new GetEnergyCountersControllerEffect(this); } }
public SageOfShailasClaim(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{G}"); this.subtype.add(SubType.ELF); this.subtype.add(SubType.DRUID); this.power = new MageInt(2); this.toughness = new MageInt(1); // When Sage of Shalia's Claim enters the battlefield, you get {E}{E}{E}. this.addAbility(new EntersBattlefieldTriggeredAbility(new GetEnergyCountersControllerEffect(3))); }
@Override public boolean apply(Game game, Ability source) { int amount = (Integer) getValue("damage"); if (amount > 0) { Player controller = game.getPlayer(source.getControllerId()); if (controller != null) { return new GetEnergyCountersControllerEffect(amount).apply(game, source); } } return false; } }
public AetherHub(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.LAND},""); // When Aether Hub enters the battlefield, you get {E}. this.addAbility(new EntersBattlefieldTriggeredAbility(new GetEnergyCountersControllerEffect(1))); // {T}: Add {C}. this.addAbility(new ColorlessManaAbility()); // {T}, Pay {E}: Add one mana of any color. Ability ability = new AnyColorManaAbility(); ability.addCost(new PayEnergyCost(1)); this.addAbility(ability); }
public FabricationModule(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{3}"); // Whenever you get one or more {E}, put a +1/+1 counter on target creature you control. Ability ability = new FabricationModuleTriggeredAbility(); ability.addTarget(new TargetControlledCreaturePermanent()); this.addAbility(ability); // {4}, {T}: You get {E}. ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GetEnergyCountersControllerEffect(1), new GenericManaCost(4)); ability.addCost(new TapSourceCost()); this.addAbility(ability); }
public AethergeodeMiner(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{W}"); this.subtype.add(SubType.DWARF); this.subtype.add(SubType.SCOUT); this.power = new MageInt(3); this.toughness = new MageInt(1); // Whenever Aethergeode Miner attacks, you get {E}{E}. this.addAbility(new AttacksTriggeredAbility(new GetEnergyCountersControllerEffect(2), false)); // Pay {E}{E}: Exile Aethergeode Miner, then return it to the battlefield under its owner's control. this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new AethergeodeMinerEffect(), new PayEnergyCost(2))); }
public AethertideWhale(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{4}{U}{U}"); this.subtype.add(SubType.WHALE); this.power = new MageInt(6); this.toughness = new MageInt(4); // Flying this.addAbility(FlyingAbility.getInstance()); // When Aethertide Whale enters the battlefield, you get {E}{E}{E}{E}{E}{E}. this.addAbility(new EntersBattlefieldTriggeredAbility(new GetEnergyCountersControllerEffect(6))); // Pay {E}{E}{E}{E}: Return Aethertide Whale to its owner's hand. this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnToHandSourceEffect(true), new PayEnergyCost(4))); }
public EraOfInnovation(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{1}{U}"); // Whenever an artifact or Artificer enters the battlefield under you control, you may pay {1}. If you do, you get {E}{E}. Effect effect = new DoIfCostPaid(new GetEnergyCountersControllerEffect(2), new GenericManaCost(1)); this.addAbility(new EntersBattlefieldAllTriggeredAbility(effect, filter, "Whenever an artifact or Artificer enters the battlefield under you control, you may pay {1}. If you do, you get {E}{E}.")); // {E}{E}{E}{E}{E}{E}, Sacrifice Era of Innovation: Draw three cards. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(3), new PayEnergyCost(6)); ability.addCost(new SacrificeSourceCost()); this.addAbility(ability); }
public HightideHermit(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{4}{U}"); this.subtype.add(SubType.CRAB); this.power = new MageInt(4); this.toughness = new MageInt(4); // Defender this.addAbility(DefenderAbility.getInstance()); // When Hightide Hermit enters the battlefield, you get {E}{E}{E}{E}. this.addAbility(new EntersBattlefieldTriggeredAbility(new GetEnergyCountersControllerEffect(4))); // Pay {E}{E}: Hightide Hermit can attack this turn as though it didn't have defender. this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new CanAttackAsThoughItDidntHaveDefenderSourceEffect(Duration.EndOfTurn), new PayEnergyCost(2))); }
public DynavoltTower(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{3}"); // Whenever you cast an instant or sorcery spell, you get {E}{E}. this.addAbility(new SpellCastControllerTriggeredAbility(new GetEnergyCountersControllerEffect(2), new FilterInstantOrSorcerySpell(), false)); // {T}, Pay {E}{E}{E}{E}{E}: Dynavolt Tower deals 3 damage to any target. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(3), new TapSourceCost()); ability.addCost(new PayEnergyCost(5)); ability.addTarget(new TargetAnyTarget()); this.addAbility(ability); }
public ConsulateTurret(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{3}"); // {T}: You get {E}. this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GetEnergyCountersControllerEffect(1), new TapSourceCost())); // {T}, Pay {E}{E}{E}: Consulate Turret deals 2 damage to target player. Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new TapSourceCost()); ability.addCost(new PayEnergyCost(3)); ability.addTarget(new TargetPlayerOrPlaneswalker()); this.addAbility(ability); }
public ThrivingRats(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{B}"); this.subtype.add(SubType.RAT); this.power = new MageInt(1); this.toughness = new MageInt(2); // When Thriving Rats enters the battlefield, you get {E}{E}. this.addAbility(new EntersBattlefieldTriggeredAbility(new GetEnergyCountersControllerEffect(2))); // Whenever Thriving Rats attacks, you may pay {E}{E}. If you do, put a +1/+1 counter on it. this.addAbility(new AttacksTriggeredAbility(new DoIfCostPaid(new AddCountersSourceEffect(CounterType.P1P1.createInstance()), new PayEnergyCost(2)), false, "Whenever {this} attacks you may pay {E}{E}. If you do, put a +1/+1 counter on it.")); }
public ThrivingRhino(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{G}"); this.subtype.add(SubType.RHINO); this.power = new MageInt(2); this.toughness = new MageInt(3); // When Thriving Rhino enters the battlefield, you get {E}{E}. this.addAbility(new EntersBattlefieldTriggeredAbility(new GetEnergyCountersControllerEffect(2))); // Whenever Thriving Rhino attacks, you may pay {E}{E}. If you do, put a +1/+1 counter on it. this.addAbility(new AttacksTriggeredAbility(new DoIfCostPaid(new AddCountersSourceEffect(CounterType.P1P1.createInstance()), new PayEnergyCost(2)), false)); }
public HighspireInfusion(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{1}{G}"); // Target creature gets +3/+3 until end of turn. You get {E}{E}. getSpellAbility().addEffect(new BoostTargetEffect(3, 3, Duration.EndOfTurn)); getSpellAbility().addTarget(new TargetCreaturePermanent()); getSpellAbility().addEffect(new GetEnergyCountersControllerEffect(2)); }
public MultiformWonder(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT, CardType.CREATURE}, "{5}"); this.subtype.add(SubType.CONSTRUCT); this.power = new MageInt(3); this.toughness = new MageInt(3); // When Multiform Wonder enters the battlefield, you get {E}{E}{E}. this.addAbility(new EntersBattlefieldTriggeredAbility(new GetEnergyCountersControllerEffect(3), false)); // Pay {E}: Multiform Wonder gains your choice of flying, vigilance, or lifelink until end of turn. this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new MultiformWonderEffect(), new PayEnergyCost(1))); // Pay {E}: Multiform Wonder gets +2/-2 or -2/+2 until end of turn. this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new MultiformWonder2Effect(), new PayEnergyCost(1))); }
public ElectrostaticPummeler(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT,CardType.CREATURE},"{3}"); this.subtype.add(SubType.CONSTRUCT); this.power = new MageInt(1); this.toughness = new MageInt(1); // When Electrostatic Pummeler enters the battlefield, you get {E}{E}{E}. this.addAbility(new EntersBattlefieldTriggeredAbility(new GetEnergyCountersControllerEffect(3))); // Pay {E}{E}{E}: Electrostatic Pummeler gets +X/+X until end of turn, where X is its power. this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(new SourcePermanentPowerCount(), new SourcePermanentPowerCount(), Duration.EndOfTurn, true), new PayEnergyCost(3))); }
public ArchitectOfTheUntamed(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{G}"); this.subtype.add(SubType.ELF); this.subtype.add(SubType.ARTIFICER); this.subtype.add(SubType.DRUID); this.power = new MageInt(2); this.toughness = new MageInt(3); // Whenever a land enters the battlefield under your control, you get {E}. this.addAbility(new EntersBattlefieldAllTriggeredAbility(Zone.BATTLEFIELD, new GetEnergyCountersControllerEffect(1), new FilterControlledLandPermanent("a land"), false, null, true)); // Pay {E}{E}{E}{E}{E}{E}{E}{E}: Create a 6/6 colorless Beast artifact creature token. this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new ArchitectOfTheUntamedBeastToken(), 1), new PayEnergyCost(8))); }
public ReservoirWalker(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT, CardType.CREATURE}, "{5}"); this.subtype.add(SubType.CONSTRUCT); this.power = new MageInt(3); this.toughness = new MageInt(3); // When Reservoir Walker enters the battlefield, you gain 3 life and get {E}{E}{E}. Ability ability = new EntersBattlefieldTriggeredAbility(new GainLifeEffect(3)); Effect effect = new GetEnergyCountersControllerEffect(3); effect.setText("and get {E}{E}{E}"); ability.addEffect(effect); this.addAbility(ability); }
public GlimmerOfGenius(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{3}{U}"); // Scry 2, then draw two card. You get {E}{E}. this.getSpellAbility().addEffect(new ScryEffect(2)); Effect effect = new DrawCardSourceControllerEffect(2); effect.setText(", then draw two card"); this.getSpellAbility().addEffect(effect); this.getSpellAbility().addEffect(new GetEnergyCountersControllerEffect(2)); }
public AetherwindBasker(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{4}{G}{G}{G}"); this.subtype.add(SubType.LIZARD); this.power = new MageInt(7); this.toughness = new MageInt(7); // Trample this.addAbility(TrampleAbility.getInstance()); // Whenever Aetherwind Basker enters the battlefield or attacks, you get {E} for each creature you control. this.addAbility(new EntersBattlefieldOrAttacksSourceTriggeredAbility(new GetEnergyCountersControllerEffect(new PermanentsOnBattlefieldCount(new FilterControlledCreaturePermanent("creature you control"), null)))); // Pay {E}: Aetherwind Basker gets +1/+1 until end of turn. this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn), new PayEnergyCost(1))); }