foul-magics/Mage.Sets/src/mage/cards/d/DarthMaul.java
theelk801 8d93cb8bcd
All checks were successful
/ build_release (push) Successful in 10m45s
even more refactoring of ConditionalInterveningIfTriggeredAbility
2025-06-10 19:45:06 -07:00

52 lines
1.8 KiB
Java

package mage.cards.d;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.AttacksTriggeredAbility;
import mage.abilities.condition.common.HateCondition;
import mage.abilities.effects.common.combat.CantBeBlockedByTargetSourceEffect;
import mage.abilities.keyword.DoubleStrikeAbility;
import mage.abilities.keyword.HasteAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.*;
import mage.target.common.TargetCreaturePermanent;
import mage.watchers.common.LifeLossOtherFromCombatWatcher;
import java.util.UUID;
/**
* @author Styxo
*/
public final class DarthMaul extends CardImpl {
public DarthMaul(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{B}{R}");
this.supertype.add(SuperType.LEGENDARY);
this.subtype.add(SubType.ZABRAK);
this.subtype.add(SubType.SITH);
this.power = new MageInt(2);
this.toughness = new MageInt(2);
// Double strike
this.addAbility(DoubleStrikeAbility.getInstance());
// Haste
this.addAbility(HasteAbility.getInstance());
// <i>Hate</i> &mdash; Whenever Darth Maul attacks, if an opponent loses life from a source other than combat damage this turn, target creature can't block this turn.
Ability ability = new AttacksTriggeredAbility(new CantBeBlockedByTargetSourceEffect(Duration.EndOfTurn))
.withInterveningIf(HateCondition.instance);
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability.setAbilityWord(AbilityWord.HATE), new LifeLossOtherFromCombatWatcher());
}
private DarthMaul(final DarthMaul card) {
super(card);
}
@Override
public DarthMaul copy() {
return new DarthMaul(this);
}
}