Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 3 additions & 12 deletions Mage.Sets/src/mage/cards/g/GoliathDaydreamer.java
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,7 @@
import mage.cards.CardsImpl;
import mage.constants.*;
import mage.counters.CounterType;
import mage.filter.FilterSpell;
import mage.filter.StaticFilters;
import mage.filter.common.FilterInstantOrSorcerySpell;
import mage.filter.predicate.card.CastFromZonePredicate;
import mage.game.Game;
import mage.game.events.GameEvent;
import mage.game.events.ZoneChangeEvent;
Expand All @@ -32,13 +29,6 @@
* @author TheElk801
*/
public final class GoliathDaydreamer extends CardImpl {

private static final FilterSpell filter = new FilterInstantOrSorcerySpell("an instant or sorcery spell from your hand");

static {
filter.add(new CastFromZonePredicate(Zone.HAND));
}

public GoliathDaydreamer(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{R}{R}");

Expand All @@ -49,7 +39,8 @@ public GoliathDaydreamer(UUID ownerId, CardSetInfo setInfo) {

// Whenever you cast an instant or sorcery spell from your hand, exile that card with a dream counter on it instead of putting it into your graveyard as it resolves.
this.addAbility(new SpellCastControllerTriggeredAbility(
new GoliathDaydreamerExileEffect(), filter, false, SetTargetPointer.SPELL
Zone.BATTLEFIELD, new GoliathDaydreamerExileEffect(), StaticFilters.FILTER_SPELL_AN_INSTANT_OR_SORCERY,
false, SetTargetPointer.SPELL, Zone.HAND
));

// Whenever this creature attacks, you may cast a spell from among cards you own in exile with dream counters on them without paying its mana cost.
Expand Down Expand Up @@ -109,7 +100,7 @@ public boolean applies(GameEvent event, Ability source, Game game) {
return Zone.STACK.match(zEvent.getFromZone())
&& Zone.GRAVEYARD.match(zEvent.getToZone())
&& spell != null
&& event.getSourceId().equals(spell.getId())
&& !event.getSourceId().equals(spell.getId())
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't understand why this check is needed at all.

Did you test to verify that trigger works as it should with your updated code?

Copy link
Copy Markdown
Author

@RobCubed RobCubed Apr 4, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It works as intended, but I did just test now without it. Doesn't seem to do anything different if removed. If you think it doesn't do anything, I'll remove it

&& Optional
.ofNullable(spell.getMainCard())
.map(MageItem::getId)
Expand Down
Loading