diff --git a/Mage.Sets/src/mage/cards/d/DomriCitySmasher.java b/Mage.Sets/src/mage/cards/d/DomriCitySmasher.java index d19821944ed..2475c5f7d1c 100644 --- a/Mage.Sets/src/mage/cards/d/DomriCitySmasher.java +++ b/Mage.Sets/src/mage/cards/d/DomriCitySmasher.java @@ -51,7 +51,7 @@ public final class DomriCitySmasher extends CardImpl { ability = new LoyaltyAbility(new AddCountersAllEffect( CounterType.P1P1.createInstance(3), StaticFilters.FILTER_CONTROLLED_CREATURE - )); + ), -8); ability.addEffect(new GainAbilityControlledEffect( TrampleAbility.getInstance(), Duration.EndOfTurn ).setText("Those creatures gain trample until end of turn")); diff --git a/Mage.Sets/src/mage/cards/d/DovinArchitectOfLaw.java b/Mage.Sets/src/mage/cards/d/DovinArchitectOfLaw.java new file mode 100644 index 00000000000..849d881c8a2 --- /dev/null +++ b/Mage.Sets/src/mage/cards/d/DovinArchitectOfLaw.java @@ -0,0 +1,54 @@ +package mage.cards.d; + +import mage.abilities.Ability; +import mage.abilities.LoyaltyAbility; +import mage.abilities.common.PlaneswalkerEntersWithLoyaltyCountersAbility; +import mage.abilities.effects.common.*; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.SubType; +import mage.constants.SuperType; +import mage.filter.StaticFilters; +import mage.target.common.TargetCreaturePermanent; + +import java.util.UUID; + +/** + * @author TheElk801 + */ +public final class DovinArchitectOfLaw extends CardImpl { + + public DovinArchitectOfLaw(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.PLANESWALKER}, "{4}{W}{U}"); + + this.addSuperType(SuperType.LEGENDARY); + this.subtype.add(SubType.DOVIN); + this.addAbility(new PlaneswalkerEntersWithLoyaltyCountersAbility(5)); + + // +1: You gain 2 life and draw a card. + Ability ability = new LoyaltyAbility(new GainLifeEffect(2), 1); + ability.addEffect(new DrawCardSourceControllerEffect(1).setText("and draw a card")); + this.addAbility(ability); + + // -1: Tap target creature. It doesn't untap during its controller's next untap step. + ability = new LoyaltyAbility(new TapTargetEffect(), -1); + ability.addEffect(new DontUntapInControllersNextUntapStepTargetEffect("It")); + ability.addTarget(new TargetCreaturePermanent()); + this.addAbility(ability); + + // -9: Tap all permanents target opponent controls. That player skips their next untap step. + ability = new LoyaltyAbility(new TapAllTargetPlayerControlsEffect(StaticFilters.FILTER_PERMANENT), -9); + ability.addEffect(new SkipNextPlayerUntapStepEffect("That")); + this.addAbility(ability); + } + + private DovinArchitectOfLaw(final DovinArchitectOfLaw card) { + super(card); + } + + @Override + public DovinArchitectOfLaw copy() { + return new DovinArchitectOfLaw(this); + } +} diff --git a/Mage.Sets/src/mage/sets/RavnicaAllegiance.java b/Mage.Sets/src/mage/sets/RavnicaAllegiance.java index c67e5fd8c96..792a9914423 100644 --- a/Mage.Sets/src/mage/sets/RavnicaAllegiance.java +++ b/Mage.Sets/src/mage/sets/RavnicaAllegiance.java @@ -71,6 +71,7 @@ public final class RavnicaAllegiance extends ExpansionSet { cards.add(new SetCardInfo("Domri, Chaos Bringer", 166, Rarity.MYTHIC, mage.cards.d.DomriChaosBringer.class)); cards.add(new SetCardInfo("Domri, City Smasher", 269, Rarity.RARE, mage.cards.d.DomriCitySmasher.class)); cards.add(new SetCardInfo("Dovin's Acuity", 168, Rarity.UNCOMMON, mage.cards.d.DovinsAcuity.class)); + cards.add(new SetCardInfo("Dovin, Architect of Law", 265, Rarity.MYTHIC, mage.cards.d.DovinArchitectOfLaw.class)); cards.add(new SetCardInfo("Dovin, Grand Arbiter", 167, Rarity.MYTHIC, mage.cards.d.DovinGrandArbiter.class)); cards.add(new SetCardInfo("Drill Bit", 73, Rarity.UNCOMMON, mage.cards.d.DrillBit.class)); cards.add(new SetCardInfo("Electrodominance", 99, Rarity.RARE, mage.cards.e.Electrodominance.class));