master #25

Closed
Failure wants to merge 0 commits from External/mage:master into master
Owner
No description provided.
Failure added 135 commits 2025-04-11 20:15:44 -07:00
* Implemented Lotusligh Dancers

* filter fix

* author fix

* fix verify test
* Don't prompt creatureless player to select blockers

* Move getting possible blockers back to while loop

* Several preferences text improvements, always skip select blockers prompt if no blockers
Fixes #13498

getTargetingStackObject wasn't processing all stackObjects in a batch event

added tests for some related cards that also use the method
- Agrus Kos, Eternal Soldier
- Pawpatch Recruit
- Ward Ability
- Commonized second spell condition
* implemented glacierwood siege

* GraphicCardInfo fix
replace custom effect with LookLibraryAndPickControllerEffect
[TDM] Aggressive Negotiations implementation
* Implemented Lie in Wait

* code refactor

* improve ability
* [TDM] Implement Wail of War

* Updating BoostControlledEffect call

* Resolving test errors

* Update debuff ability, adjust setText, update graveyard filter

* Removing setText, updating targetOpponent
* Abstract AdventureCard to SingleFaceSplitCard

* Fix AdventureCardSpellImpl

* Finish converting adventure card and adventure spell

* Update Brightcap Badger

change finalize call to adventure card

* Update Darksteel Monolith

being cast from hand condition referencing AdventureCardSpell

* Update Tlincalli Hunter

exiled creature condition referencing AdventureCardSpell

* Update Twice Upon a Time

finalizeAdventure called from Adventure card

* Finish abstracting Adventure

missed some more references to adventure cards

* Implement Omen cards

* Implement Dirgur Island Dragon

* Missed some adventureSpellName references

* OmenCardSpell had wrong comma symbol

* Add tests for Omen Cards

* Rename two part card components

change from SingleFaceSplitCard to CardWithSpellOption

* Update comments and variable name
replaced with CardWithSpellOption
* formats implemented text to show main card followed by spell card
* reference card also shows spell card information
Improves:
* refactor: split CostAdjuster logic in multiple parts - prepare X, prepare cost, increase cost, reduce cost;
* refactor: improved VariableManaCost to support min/max values, playable and AI calculations, test framework;
* refactor: improved EarlyTargetCost to support mana costs too (related to #13023);
* refactor: migrated some cards with CostAdjuster and X to EarlyTargetCost (Knollspine Invocation, etc - related to #13023);
* refactor: added shared code for "As an additional cost to cast this spell, discard X creature cards";
* refactor: added shared code for "X is the converted mana cost of the exiled card";
* tests: added dozens tests with cost adjusters;

Bug fixes:
* game: fixed that some cards with CostAdjuster ignore min/max limits for X (allow to choose any X, example: Scorched Earth, Open The Way);
* game: fixed that some cards ask to announce already defined X values (example: Bargaining Table);
* game: fixed that some cards with CostAdjuster do not support combo with other cost modification effects;
* game, gui: fixed missing game logs about predefined X values;
* game, gui: fixed wrong X icon for predefined X values;

Test framework:
* test framework: added X min/max check for wrong values;
* test framework: added X min/max info in miss X value announce;
* test framework: added check to find duplicated effect bugs (see assertNoDuplicatedEffects);

Cards:
* Open The Way - fixed that it allow to choose any X without limits (close #12810);
* Unbound Flourishing - improved combo support for activated abilities with predefined X mana costs like Bargaining Table;
* Implemented Betor, Kin to All

* intervenening if in ability

* update betor

* reduce ident
* refactor anchor word implementation

* fix error

* [TDM] Implement Windcrag Siege
* [TDM] Implement Dragonfire Blade
* [TDM] Implement Focus the Mind
* [TDM] Implement Sage of the Skies
* Extracted cast another spell this turn condition from Rally the Monastery
* Add condition to Rally the Monastery and Slick Sequence
Inniaz, the Gale Force - fixed that it wrongly choose left/right player (close #13526);
* add initial ability

* remove skip list

* update harmonize ability

* add reminder text

* remove skip list

* add harmonize test

* update tests

* create base class for flashback-like abilities
* implemented hollowmurk siege

* Update to work with new anchorword card implementation

* Update rule text
* Updated Delay and Gandalf Of The Secret Fire to get the main card since they target spells

* Suspend now properly lets you play either side of mdfc and spell parts from adventure/omen cards utilizing CardUtil.castSpellWithAttributesForFree method

* Removed extra code in SuspendPlayCardEffect since the referenced bug for Epochrasite does not seem to appear. Removed related gainedTemporary variable also.

* Added tests for Omen and Suspend With Taigam, Master Opportunists as well as an Epochrasite test for recasting after suspend.
Failure closed this pull request 2025-04-23 01:33:18 -07:00

Pull request closed

Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: Failure/foul-magics#25
No description provided.