[ACR] Implement Tax Collector

This commit is contained in:
theelk801 2024-06-20 17:56:40 -04:00
parent c5e451ee03
commit 0d02fd37c2
2 changed files with 58 additions and 0 deletions

View file

@ -0,0 +1,57 @@
package mage.cards.t;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.Mode;
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
import mage.abilities.effects.common.DetainTargetEffect;
import mage.abilities.effects.common.cost.SpellsCostIncreasingAllEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.TargetController;
import mage.filter.FilterCard;
import mage.target.common.TargetOpponentsCreaturePermanent;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class TaxCollector extends CardImpl {
private static final FilterCard filter = new FilterCard("spells");
public TaxCollector(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{W}");
this.subtype.add(SubType.HUMAN);
this.subtype.add(SubType.ADVISOR);
this.power = new MageInt(2);
this.toughness = new MageInt(2);
// When Tax Collector enters the battlefield, choose one
// * Tax -- Until your next turn, spells your opponents cast cost {1} more to cast.
Ability ability = new EntersBattlefieldTriggeredAbility(
new SpellsCostIncreasingAllEffect(1, filter, TargetController.OPPONENT)
.setText("until your next turn, spells your opponents cast cost {1} more to cast")
.setDuration(Duration.UntilYourNextTurn)
);
ability.withFirstModeFlavorWord("Tax");
// * Arrest -- Detain target creature an opponent controls.
ability.addMode(new Mode(new DetainTargetEffect()).addTarget(new TargetOpponentsCreaturePermanent()).withFlavorWord("Arrest"));
this.addAbility(ability);
}
private TaxCollector(final TaxCollector card) {
super(card);
}
@Override
public TaxCollector copy() {
return new TaxCollector(this);
}
}

View file

@ -82,6 +82,7 @@ public final class AssassinsCreed extends ExpansionSet {
cards.add(new SetCardInfo("Surtr, Fiery Jotun", 293, Rarity.RARE, mage.cards.s.SurtrFieryJotun.class));
cards.add(new SetCardInfo("Sword of Feast and Famine", 99, Rarity.MYTHIC, mage.cards.s.SwordOfFeastAndFamine.class));
cards.add(new SetCardInfo("Sword of Light and Shadow", 100, Rarity.MYTHIC, mage.cards.s.SwordOfLightAndShadow.class));
cards.add(new SetCardInfo("Tax Collector", 9, Rarity.UNCOMMON, mage.cards.t.TaxCollector.class));
cards.add(new SetCardInfo("Templar Knight", 10, Rarity.UNCOMMON, mage.cards.t.TemplarKnight.class));
cards.add(new SetCardInfo("Temporal Trespass", 86, Rarity.MYTHIC, mage.cards.t.TemporalTrespass.class));
cards.add(new SetCardInfo("Terminate", 98, Rarity.UNCOMMON, mage.cards.t.Terminate.class));