add TODOs on hacked Spellbane Centaur

This commit is contained in:
Susucre 2025-05-31 17:12:20 +02:00
parent a9cd45c84e
commit 77613ad318
2 changed files with 8 additions and 6 deletions

View file

@ -1,7 +1,6 @@
package mage.cards.s;
import java.util.UUID;
import mage.MageInt;
import mage.ObjectColor;
import mage.abilities.common.SimpleStaticAbility;
@ -9,16 +8,16 @@ import mage.abilities.effects.common.CantBeTargetedAllEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration;
import mage.constants.Zone;
import mage.constants.SubType;
import mage.filter.FilterObject;
import mage.filter.FilterStackObject;
import mage.filter.StaticFilters;
import mage.filter.predicate.mageobject.ColorPredicate;
import java.util.UUID;
/**
*
* @author fireshoes
*/
public final class SpellbaneCentaur extends CardImpl {
@ -26,11 +25,12 @@ public final class SpellbaneCentaur extends CardImpl {
private static final FilterObject filter = new FilterStackObject("blue spells or abilities from blue sources");
static {
// TODO: seems incorrect. It should be Or Predictate on blue spell or abilities from blue sources.
filter.add(new ColorPredicate(ObjectColor.BLUE));
}
public SpellbaneCentaur(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{G}");
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{G}");
this.subtype.add(SubType.CENTAUR);
this.power = new MageInt(3);
this.toughness = new MageInt(2);

View file

@ -21,7 +21,7 @@ import mage.game.stack.StackObject;
public class CantBeTargetedAllEffect extends ContinuousRuleModifyingEffectImpl {
private FilterPermanent filterTarget;
private FilterObject filterSource;
private FilterObject filterSource; // TODO: should be FilterStackObject
public CantBeTargetedAllEffect(FilterPermanent filterTarget, Duration duration) {
this(filterTarget, null, duration);
@ -65,10 +65,12 @@ public class CantBeTargetedAllEffect extends ContinuousRuleModifyingEffectImpl {
// only spells have to be selected
return false;
}
// TODO: this is a hack for Spellbane Centaur?
sourceObject = ((StackAbility) stackObject).getSourceObject(game);
} else {
sourceObject = stackObject;
}
// TODO: this should be 4-argument match instead?
if (filterSource.match(sourceObject, game)) {
return true;
}