refactor a daybound/nightbound card

This commit is contained in:
theelk801 2025-07-31 09:49:24 -04:00
parent 2c77c54107
commit b5bbc592c1
2 changed files with 19 additions and 25 deletions

View file

@ -1,9 +1,9 @@
package mage.cards.t; package mage.cards.t;
import mage.MageInt;
import mage.abilities.keyword.DayboundAbility; import mage.abilities.keyword.DayboundAbility;
import mage.cards.CardImpl; import mage.abilities.keyword.NightboundAbility;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.TransformingDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
@ -12,21 +12,27 @@ import java.util.UUID;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
public final class TavernRuffian extends CardImpl { public final class TavernRuffian extends TransformingDoubleFacedCard {
public TavernRuffian(UUID ownerId, CardSetInfo setInfo) { public TavernRuffian(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{3}{R}"); super(
ownerId, setInfo,
this.subtype.add(SubType.HUMAN); new CardType[]{CardType.CREATURE}, new SubType[]{SubType.HUMAN, SubType.WARRIOR, SubType.WEREWOLF}, "{3}{R}",
this.subtype.add(SubType.WARRIOR); "Tavern Smasher",
this.subtype.add(SubType.WEREWOLF); new CardType[]{CardType.CREATURE}, new SubType[]{SubType.WEREWOLF}, "R"
this.power = new MageInt(2); );
this.toughness = new MageInt(5); this.getLeftHalfCard().setPT(2, 5);
this.getRightHalfCard().setPT(6, 5);
this.secondSideCardClazz = mage.cards.t.TavernSmasher.class; this.secondSideCardClazz = mage.cards.t.TavernSmasher.class;
// Daybound // Daybound
this.addAbility(new DayboundAbility()); this.getLeftHalfCard().addAbility(new DayboundAbility());
// Nightbound
this.getRightHalfCard().addAbility(new NightboundAbility());
this.finalizeDFC();
} }
private TavernRuffian(final TavernRuffian card) { private TavernRuffian(final TavernRuffian card) {

View file

@ -1,11 +1,9 @@
package mage.cards.t; package mage.cards.t;
import mage.MageInt;
import mage.abilities.keyword.NightboundAbility;
import mage.cards.CardImpl; import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.cards.TransformingDoubleFacedCard;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType;
import java.util.UUID; import java.util.UUID;
@ -16,18 +14,8 @@ public final class TavernSmasher extends CardImpl {
public TavernSmasher(UUID ownerId, CardSetInfo setInfo) { public TavernSmasher(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, ""); super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "");
this.subtype.add(SubType.WEREWOLF);
this.color.setRed(true);
this.nightCard = true; this.nightCard = true;
TransformingDoubleFacedCard.copyToBackFace(new mage.cards.t.TavernRuffian(ownerId, setInfo), this);
this.power = new MageInt(6);
this.toughness = new MageInt(5);
// Nightbound
this.addAbility(new NightboundAbility());
} }
private TavernSmasher(final TavernSmasher card) { private TavernSmasher(final TavernSmasher card) {