From c439ae30f564308bd115ec2a066c6c333453d032 Mon Sep 17 00:00:00 2001 From: theelk801 Date: Fri, 29 Mar 2024 12:10:22 -0400 Subject: [PATCH] [OTJ] Implement Omenport Vigilante --- .../src/mage/cards/o/OmenportVigilante.java | 46 +++++++++++++++++++ .../mage/sets/OutlawsOfThunderJunction.java | 1 + Utils/mtg-cards-data.txt | 1 + 3 files changed, 48 insertions(+) create mode 100644 Mage.Sets/src/mage/cards/o/OmenportVigilante.java diff --git a/Mage.Sets/src/mage/cards/o/OmenportVigilante.java b/Mage.Sets/src/mage/cards/o/OmenportVigilante.java new file mode 100644 index 00000000000..18194f098f8 --- /dev/null +++ b/Mage.Sets/src/mage/cards/o/OmenportVigilante.java @@ -0,0 +1,46 @@ +package mage.cards.o; + +import mage.MageInt; +import mage.abilities.common.SimpleStaticAbility; +import mage.abilities.condition.common.CommittedCrimeCondition; +import mage.abilities.decorator.ConditionalContinuousEffect; +import mage.abilities.effects.common.continuous.GainAbilitySourceEffect; +import mage.abilities.keyword.DoubleStrikeAbility; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.Duration; +import mage.constants.SubType; +import mage.watchers.common.CommittedCrimeWatcher; + +import java.util.UUID; + +/** + * @author TheElk801 + */ +public final class OmenportVigilante extends CardImpl { + + public OmenportVigilante(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{W}"); + + this.subtype.add(SubType.HUMAN); + this.subtype.add(SubType.MERCENARY); + this.power = new MageInt(2); + this.toughness = new MageInt(2); + + // Omenport Vigilante has double strike as long as you've committed a crime this turn. + this.addAbility(new SimpleStaticAbility(new ConditionalContinuousEffect( + new GainAbilitySourceEffect(DoubleStrikeAbility.getInstance(), Duration.WhileOnBattlefield), + CommittedCrimeCondition.instance, "{this} has double strike as long as you've committed a crime this turn" + )).addHint(CommittedCrimeCondition.getHint()), new CommittedCrimeWatcher()); + } + + private OmenportVigilante(final OmenportVigilante card) { + super(card); + } + + @Override + public OmenportVigilante copy() { + return new OmenportVigilante(this); + } +} diff --git a/Mage.Sets/src/mage/sets/OutlawsOfThunderJunction.java b/Mage.Sets/src/mage/sets/OutlawsOfThunderJunction.java index da53d3bed4d..40ebaade6a8 100644 --- a/Mage.Sets/src/mage/sets/OutlawsOfThunderJunction.java +++ b/Mage.Sets/src/mage/sets/OutlawsOfThunderJunction.java @@ -81,6 +81,7 @@ public final class OutlawsOfThunderJunction extends ExpansionSet { cards.add(new SetCardInfo("Mine Raider", 135, Rarity.COMMON, mage.cards.m.MineRaider.class)); cards.add(new SetCardInfo("Mountain", 275, Rarity.LAND, mage.cards.basiclands.Mountain.class, NON_FULL_USE_VARIOUS)); cards.add(new SetCardInfo("Oko, the Ringleader", 223, Rarity.MYTHIC, mage.cards.o.OkoTheRingleader.class)); + cards.add(new SetCardInfo("Omenport Vigilante", 21, Rarity.UNCOMMON, mage.cards.o.OmenportVigilante.class)); cards.add(new SetCardInfo("Outcaster Trailblazer", 173, Rarity.RARE, mage.cards.o.OutcasterTrailblazer.class)); cards.add(new SetCardInfo("Plains", 272, Rarity.LAND, mage.cards.basiclands.Plains.class, NON_FULL_USE_VARIOUS)); cards.add(new SetCardInfo("Plan the Heist", 62, Rarity.UNCOMMON, mage.cards.p.PlanTheHeist.class)); diff --git a/Utils/mtg-cards-data.txt b/Utils/mtg-cards-data.txt index 70a694a4149..7ea04756446 100644 --- a/Utils/mtg-cards-data.txt +++ b/Utils/mtg-cards-data.txt @@ -52404,6 +52404,7 @@ Getaway Glamer|Outlaws of Thunder Junction|14|U|{W}|Instant|||Spree$+ {1} -- Exi High Noon|Outlaws of Thunder Junction|15|R|{1}{W}|Enchantment|||Each player can't cast more than one spell each turn.${4}{R}, Sacrifice High Noon: It deals 5 damage to any target.| Holy Cow|Outlaws of Thunder Junction|16|C|{2}{W}|Creature - Ox Angel|2|2|Flash$Flying$When Holy Cow enters the battlefield, you gain 2 life and scry 1.| Lassoed by the Law|Outlaws of Thunder Junction|18|U|{3}{W}|Enchantment|||When Lassoed by the Law enters the battlefield, exile target nonland permanent an opponent controls until Lassoed by the Law leaves the battlefield.$When Lassoed by the Law enters the battlefield, create a 1/1 red Mercenary creature token with "{T}: Target creature you control gets +1/+0 until end of turn. Activate only as a sorcery."| +Omenport Vigilante|Outlaws of Thunder Junction|21|U|{1}{W}|Creature - Human Mercenary|2|2|Omenport Vigilante has double strike as long as you've committed a crime this turn.| Prosperity Tycoon|Outlaws of Thunder Junction|25|U|{3}{W}|Creature - Human Noble|4|2|When Prosperity Tycoon enters the battlefield, create a 1/1 red Mercenary creature token with "{T}: Target creature you control gets +1/+0 until end of turn. Activate only as a sorcery."${2}, Sacrifice a token: Prosperity Tycoon gains indestructible until end of turn. Tap it.| Requisition Raid|Outlaws of Thunder Junction|26|U|{W}|Sorcery|||Spree$+ {1} -- Destroy target artifact.$+ {1} -- Destroy target enchantment.$+ {1} -- Put a +1/+1 counter on each creature target player controls.| Rustler Rampage|Outlaws of Thunder Junction|27|U|{W}|Instant|||Spree$+ {1} -- Untap all creatures target player controls.$+ {1} -- Target creature gains double strike until end of turn.|