@Override public GainLifeOpponentCost copy() { return new GainLifeOpponentCost(this); }
public RoarOfJukai(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{2}{G}"); this.subtype.add(SubType.ARCANE); // If you control a Forest, each blocked creature gets +2/+2 until end of turn. this.getSpellAbility().addEffect(new RoarOfJukaiEffect()); // Splice onto Arcane-An opponent gains 5 life. this.addAbility(new SpliceOntoArcaneAbility(new GainLifeOpponentCost(5))); }
public Invigorate(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{2}{G}"); // If you control a Forest, rather than pay Invigorate's mana cost, you may have an opponent gain 3 life. this.addAbility(new AlternativeCostSourceAbility(new GainLifeOpponentCost(3), new PermanentsOnTheBattlefieldCondition(filter))); // Target creature gets +4/+4 until end of turn. this.getSpellAbility().addEffect(new BoostTargetEffect(4,4,Duration.EndOfTurn)); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); }
public WallOfShards(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{W}"); addSuperType(SuperType.SNOW); this.subtype.add(SubType.WALL); this.power = new MageInt(1); this.toughness = new MageInt(8); // Defender this.addAbility(DefenderAbility.getInstance()); // Flying this.addAbility(FlyingAbility.getInstance()); // Cumulative upkeep-An opponent gains 1 life. this.addAbility(new CumulativeUpkeepAbility(new GainLifeOpponentCost(1) )); }