Commit graph

47676 commits

Author SHA1 Message Date
theelk801
04f9ab75ba [TDM] Implement Krumar Initiate 2025-04-08 17:47:02 -04:00
Oleg Agafonov
a29dbc17eb tests: added ref rules compare in test_showCardInfo 2025-04-09 01:24:30 +04:00
Oleg Agafonov
1568189c1b other: fixed typos in omen related code (#13501); 2025-04-09 01:22:33 +04:00
Oleg Agafonov
2a1eebc5fc
Merge pull request #13516 from magefree/cost-adjusters-rework 2025-04-08 22:30:45 +03:00
Oleg Agafonov
d674c592ea refactor: improved Aladdin's Lamp 2025-04-08 23:11:43 +04:00
Oleg Agafonov
6cf1f4af3d refactor: improved Aladdin's Lamp 2025-04-08 23:02:49 +04:00
Oleg Agafonov
36cec8961e refactor: better naming in CardsInControllerHandCount 2025-04-08 22:42:31 +04:00
Oleg Agafonov
bae3089abb Reworked cost adjuster logic for better support of X and cost modification effects:
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;
2025-04-08 22:39:10 +04:00
Oleg Agafonov
13a832ae00 tests: removed outdated commands from init.txt example 2025-04-08 22:14:05 +04:00
Grath
78d2107903 [TDM] Implement Teval, Arbiter of Virtue 2025-04-08 11:58:22 -04:00
androosss
8b27b53fa7
Implemented Death Begets Life (#13513) 2025-04-08 10:20:41 -05:00
jmlundeen
94c6b03ded Update showCardInfo for Adventure/Omen
* formats implemented text to show main card followed by spell card
* reference card also shows spell card information
2025-04-08 09:49:08 -05:00
jmlundeen
63781e9ca1 Missed some references to instanceof AdventureCard
replaced with CardWithSpellOption
2025-04-08 09:49:08 -05:00
jmlundeen
7b94324871 [TDM] Implement Whirlwing Stormbrood 2025-04-08 09:49:08 -05:00
jmlundeen
b205ac8472 [TDM] Implement Twinmaw Stormbrood 2025-04-08 09:49:08 -05:00
jmlundeen
797bc89c4b [TDM] Implement StormShriek Feral 2025-04-08 09:49:08 -05:00
jmlundeen
f1a05db32c [TDM] Implement Scavenger Regent 2025-04-08 09:49:08 -05:00
jmlundeen
c9aa6c3152 [TDM] Implement Sagu Wildling 2025-04-08 09:49:08 -05:00
jmlundeen
ca04897028 [TDM] Implement Runescale Stormbrood 2025-04-08 09:49:08 -05:00
jmlundeen
3554fcd540 [TDM] Implement Riling Dawnbreaker 2025-04-08 09:49:08 -05:00
jmlundeen
b9fc258777 [TDM] Implement Purging Stormbrood 2025-04-08 09:49:07 -05:00
jmlundeen
aeffd36bcd [TDM] Implement Marang River Regent 2025-04-08 09:49:07 -05:00
jmlundeen
2c13c30f5d [TDM] Implement Feral Deathgorger 2025-04-08 09:49:07 -05:00
jmlundeen
076df16841 [TDM] Implement Disruptive Stormbrood 2025-04-08 09:49:07 -05:00
jmlundeen
44389cbbbf [TDM] Implement Bloomvine Regent 2025-04-08 09:49:07 -05:00
theelk801
2e6e3cd4e7 [TDM] Implement Mardu Siegebreaker 2025-04-08 09:16:50 -04:00
theelk801
235e5200d0 [TDM] Implement Warden of the Grove 2025-04-08 08:54:27 -04:00
Jmlundeen
0df5f17603
[TDM] Implement omen mechanic (#13501)
* 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
2025-04-08 08:54:18 -04:00
theelk801
e3937e31c1 [TDM] Implement Strategic Betrayal 2025-04-07 15:04:11 -04:00
theelk801
31f1528360 [TDM] Implement Sunpearl Kirin 2025-04-07 15:04:11 -04:00
theelk801
aad92581ce [TDM] Implement Ureni, the Song Unending 2025-04-07 15:04:11 -04:00
theelk801
49d5d6ded1 [TDM] Implement Tersa Lightshatter 2025-04-07 15:04:11 -04:00
Mike Cunningham
c5b62eb620
[TDM] Implement Wail of War (#13504)
* [TDM] Implement Wail of War

* Updating BoostControlledEffect call

* Resolving test errors

* Update debuff ability, adjust setText, update graveyard filter

* Removing setText, updating targetOpponent
2025-04-07 14:57:18 -04:00
theelk801
97adeca9be [TDM] Implement Riverwheel Sweep 2025-04-07 10:13:53 -04:00
theelk801
c9148aa2d3 [TDM] Implement Naga Fleshcrafter 2025-04-07 10:03:19 -04:00
theelk801
325b4a0461 [TDM] Implement Lasyd Prowler 2025-04-07 09:56:59 -04:00
theelk801
08e31b860e [TDM] Implement Stillness in Motion 2025-04-07 09:14:42 -04:00
theelk801
6202e781bd [TDM] Implement Eshki Dragonclaw 2025-04-07 09:01:36 -04:00
androosss
b84143bfca
[TDM] Implement Lie in Wait (#13494)
* Implemented Lie in Wait

* code refactor

* improve ability
2025-04-07 08:31:16 -04:00
Jmlundeen
9613bae684
Merge pull request #13505
[TDM] Aggressive Negotiations implementation
2025-04-07 06:45:11 -05:00
Mike Cunningham
39a4e7644e Removing setText, updating filter 2025-04-07 00:28:08 -04:00
jmlundeen
fd1e814427 Update Ureni of the Unwritten
replace custom effect with LookLibraryAndPickControllerEffect
2025-04-06 15:27:06 -05:00
Mike Cunningham
a186a6f21e Reusing Essence Capture +1/+1 counter effect 2025-04-06 09:13:36 -04:00
Mike Cunningham
0ad8e8e181 Aggressive Negotiations implementation 2025-04-06 01:14:36 -04:00
Grath
95d5d373ce Remove unnecessary custom Dynamic Value from SidisiRegentOfTheMire 2025-04-05 18:47:00 -04:00
Grath
6fcb592557 [TDM] Implement Sidisi, Regent of the Mire 2025-04-05 15:47:31 -04:00
Balázs Kristóf
6f524b69c0
[FIN] Implement Stiltzkin, Moogle Merchant (#13443) 2025-04-05 14:13:23 -04:00
ssk97
cdebbe151b
Fix for disconnect causing instant loss (#13390) 2025-04-05 14:11:55 -04:00
Balázs Kristóf
b6667d7e45
[ACR] Implement Layla Hassan (#13471) 2025-04-05 14:11:02 -04:00
padfoothelix
eac265f4f7
[WHO] Implement Fugitive of the Judoon (#13467) 2025-04-05 14:10:45 -04:00