Skip to content

TDFC cleanup follow up#14111

Merged
xenohedron merged 7 commits intomagefree:masterfrom
Jmlundeen:tdfc-cleanup
Jan 13, 2026
Merged

TDFC cleanup follow up#14111
xenohedron merged 7 commits intomagefree:masterfrom
Jmlundeen:tdfc-cleanup

Conversation

@Jmlundeen
Copy link
Copy Markdown
Contributor

@Jmlundeen Jmlundeen commented Dec 7, 2025

This is some additional cleanup for the transforming double faced card rework.

  • remove secondSideCardClazz used by old transforming cards
  • remove TransformAbility since not needed anymore
  • cleanup TODO items
    • moved VALUE_KEY_ENTER_TRANSFORMED to TransformingDoubleFacedCard
    • removed transform validation in Player.moveCards and kept in ZonesHandler. Doesn't seem necessary to have redundant check.
    • removed old transform card check from Mycosynth Lattice and Painter's Servant
    • removed old transform related code from PermanantCard init
    • remove ignoreTransformEffect flag from SpellTransformedAbility (temporary flag to separate from old transform implementation)
    • remove instanceof DoubleFacedCardHalf check from CardImpl copy constructor; DFC will still use the field, instance check is currently just to differentiate between old Transforming logic

part of #14099

filter2.add(Predicates.not(SubType.DINOSAUR.getPredicate()));
filter2.add(Predicates.not(SubType.VEHICLE.getPredicate()));
filter2.add(Predicates.or(new AbilityPredicate(TransformAbility.class), TransformedPredicate.instance));
filter2.add(TransformablePredicate.instance);
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

looks like original card has some typos... must be 1 effect and 1 filter, not 2:

shot_251207_214112

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

yeah it needs a filter like this, but the types are incompatible since AnotherPredicate uses the ObjectSourcePlayer
image

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.

The actual card is silver bordered and the existing implementation is bogus anyway because it isn't something that can be well defined in the rules. So not important for this PR.

Copy link
Copy Markdown
Contributor

@xenohedron xenohedron left a comment

Choose a reason for hiding this comment

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

I don't see any issues

@xenohedron xenohedron merged commit d6a9b9c into magefree:master Jan 13, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants