diff --git a/Mage.Sets/src/mage/cards/t/TyranidHarridan.java b/Mage.Sets/src/mage/cards/t/TyranidHarridan.java index 22d0f1dea3b..a96fd78e517 100644 --- a/Mage.Sets/src/mage/cards/t/TyranidHarridan.java +++ b/Mage.Sets/src/mage/cards/t/TyranidHarridan.java @@ -1,6 +1,7 @@ package mage.cards.t; import mage.MageInt; +import mage.abilities.Ability; import mage.abilities.common.DealsDamageToAPlayerAllTriggeredAbility; import mage.abilities.costs.mana.GenericManaCost; import mage.abilities.effects.common.CreateTokenEffect; @@ -13,8 +14,6 @@ import mage.constants.SetTargetPointer; import mage.constants.SubType; import mage.filter.FilterPermanent; import mage.filter.common.FilterControlledPermanent; -import mage.game.Game; -import mage.game.events.GameEvent; import mage.game.permanent.token.TyranidGargoyleToken; import java.util.UUID; @@ -24,6 +23,10 @@ import java.util.UUID; */ public final class TyranidHarridan extends CardImpl { + private static final FilterPermanent filter = new FilterControlledPermanent( + SubType.TYRANID, "{this} or another Tyranid you control" + ); + public TyranidHarridan(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{4}{G}{U}"); @@ -38,7 +41,12 @@ public final class TyranidHarridan extends CardImpl { this.addAbility(new WardAbility(new GenericManaCost(4), false)); // Shrieking Gargoyles -- Whenever Tyranid Harridan or another Tyranid you control deals combat damage to a player, create a 1/1 blue Tyranid Gargoyle creature token with flying. - this.addAbility(new TyranidHarridanTriggeredAbility()); + Ability ability = new DealsDamageToAPlayerAllTriggeredAbility( + new CreateTokenEffect(new TyranidGargoyleToken()), + filter, false, SetTargetPointer.NONE, true + ); + ability.withFlavorWord("Shrieking Gargoyles"); + this.addAbility(ability); } private TyranidHarridan(final TyranidHarridan card) { @@ -49,31 +57,4 @@ public final class TyranidHarridan extends CardImpl { public TyranidHarridan copy() { return new TyranidHarridan(this); } -} - -class TyranidHarridanTriggeredAbility extends DealsDamageToAPlayerAllTriggeredAbility { - - private static final FilterPermanent filter = new FilterControlledPermanent( - SubType.TYRANID, "{this} or another Tyranid you control" - ); - - TyranidHarridanTriggeredAbility() { - super(new CreateTokenEffect(new TyranidGargoyleToken()), filter, false, SetTargetPointer.NONE, true); - this.withFlavorWord("Shrieking Gargoyles"); - } - - private TyranidHarridanTriggeredAbility(final TyranidHarridanTriggeredAbility ability) { - super(ability); - } - - @Override - public TyranidHarridanTriggeredAbility copy() { - return new TyranidHarridanTriggeredAbility(this); - } - - @Override - public boolean checkTrigger(GameEvent event, Game game) { - return super.checkTrigger(event, game) - && event.getSourceId().equals(this.getSourceId()); - } -} +} \ No newline at end of file