Commit graph

33 commits

Author SHA1 Message Date
Evan Kranzler
a7dcd6988f
[FIC] Implement Locke, Treasure Hunter (#13695) 2025-05-31 13:42:39 -04:00
Susucre
ba395c8385
implement [FIC] Edgar, Master Machinist (#13676) 2025-05-30 15:11:43 +02:00
theelk801
bf5f2f6a5d [FIN] Implement Noctis, Prince of Lucis 2025-05-20 20:30:11 -04:00
Susucre
507991b9e2
Implement [DSK] Valgavoth, Terror Eater (#13593) 2025-05-05 20:37:57 +02:00
theelk801
253f6c10e4 [DSC] Implement Into the Pit 2025-04-30 11:07:05 -04:00
jmlundeen
121845ad93 [TDC] Implement Thundermane Dragon 2025-04-13 17:16:38 -05:00
Jmlundeen
f9aa8c1527
[DFT] Implement Wickerfolk Indomitable (#13404) 2025-03-08 19:49:29 +04:00
PurpleCrowbar
b559ed6a63 [FDN] Implement Quilled Greatwurm 2024-12-13 19:03:45 +00:00
Grath
acf4599ce6
[BLC] Implement Osteomancer Adept (#12797) 2024-09-04 00:27:45 -04:00
jimga150
060551ab48
[40K] Implement The Ruinous Powers; fix Fires of Mount Doom (#12722)
* Add starting point: have exile top w/ any color cast, right duration

* Use random opponent

* Add delayed triggered ability

* rename MageIdentifier to AlternateCast

* Fix FiresOfMountDoomDelayedTriggeredAbility

* Add test for Fires of Mount Doom

* Add test for The Ruinous Powers

* Null checks
2024-08-24 18:37:00 -04:00
Susucre
c0eab28626
implement [MH3] Primal Prayers ; use choice panel for cast mode choice ; allow some restricted "as thought as it had flash" to work only on matching alternative cast. (#12420) 2024-07-30 15:47:39 +02:00
Susucre
1531671c16 implement [M3C] Coram, the Undertaker 2024-06-07 20:01:25 +02:00
Susucre
6f7edeca5a implement [MH3] Ral, Monsoon Mage // Ral, Leyline Prodigy 2024-05-23 13:10:35 +02:00
jimga150
40143c648f
[REX] Implement Ian Malcolm, Chaotician (#12117)
* Start on Ian Malcolm, Chaotician, missing key effects

* fox ANY clause in DrawNthCardTriggeredAbility

* Get exile effect working

* Start using Evelyn, the Covetous code

* align exile effect

* align player clause

* align card type clause

* align counter check clause

* align mana clause

* add ownership clause

* remove redundant comments

* fix redundant mana clause description

* fix counter clause in mana cost effect

* fix active clause in mana effect

* use MageObjectReference to associate exiled cards with an Ian Malcolm instance

* optimize imports

* Start tests, failing currently

* fix test and add blink test

* fix signature of constructor

* fix order of super() call in checkTrigger

* clarify hash maps in watcher

* use correct AsThoughEffect

* document header of checkExile

* generalize modal and double faced cards for LKI fetch

* remove land played event for watcher

* Use custom MageIdentifier to filter usedMap
2024-04-22 23:58:05 -04:00
xenohedron
d5295b0de3
Improve handling of abilities that let you cast spells from not hand zone once per turn (#11946)
* fix name of existing test

* adjust class name

* generate text

* use common class for Danitha

* add test

* update Gisa and Geralf

* rework Cemetery Illuminator, add test

* simplify effects allowing play from top of library

* simplify common classes which were bloated to support a single card

* simplify another

* remove unused import from test

* rework to check spell ability

* add more test cases

* add test cases

* add failing test case

* common watcher and hint for "once each turn, you may cast..."

* fix Assemble the Players to check spell ability, add test

* apply same improvements to Johann, Apprentice Sorcerer
2024-03-18 23:09:31 -04:00
skiwkr
3945528d40
[WHO] Implement Me, The Immortal (#11930) 2024-03-11 00:16:18 -04:00
Evan Kranzler
50d44c5f24
[SLD] Implement Lara Croft, Tomb Raider (#11410) 2024-02-15 00:21:50 -05:00
xenohedron
4d7ef06586 implement [MKM] Assemble the Players 2024-02-04 17:48:39 -05:00
Jeff Wadsworth
7adbf45258 Added Tarrian's Journal // The Tomb of Aclazotz 2023-12-23 00:01:59 -06:00
ssk97
898952515e
[LCI] Implement Intrepid Paleontologist (#11508)
* Improve some "mana spent -> give effect to permanent spell" cards
make effect source be the SpellAbility itself

* Implement Intrepid Paleontologist and tests

* Use a common class for the "specific MOR ETBs with counter" effect

* Prevent casting non-owned dinosuars

* Rename AddCounterEnteringMOR to AddCounterEnteringCreature

* fixes from review
2023-12-05 20:27:49 -05:00
Susucre
7c454fb24c
Rework AsThough handling to allow choosing/affecting a specific alternate cast (#11114)
* Rework AsThoughEffect

* some cleanup of MageIdentifer

* refactor ActivationStatus

* fix bolas's citadel

* fix a couple of the Alternative Cost being applied too broadly.

* fix Risen Executioneer

* allow cancellation of AsThough choice.

* fix One with the Multiverse

* cleanup cards needing their own MageIdentifier

* last couple of fixes

* apply reviews for cleaner code.

* some more cleanup
2023-10-02 18:42:54 -04:00
Alexander Dahmen
6836db0196
[CLB] Implement Kagha Shadow Archdruid (#10919)
Signed-off-by: Alexander Dahmen <dahmena_hws@gmx.de>
2023-08-22 19:25:05 -04:00
Susucre
ea513386fb
[WOE] Implement Johann, Apprentice Sorcerer (#10877) 2023-08-18 15:17:59 -04:00
theelk801
386e10b251 [MAT] Implement Danitha, New Benalia's Light 2023-05-08 18:22:36 -04:00
theelk801
ccbd45ea3c [BRO] Implement One with the Multiverse 2023-04-23 12:56:49 -04:00
Evan Kranzler
9e4bbd4a9c [DMU] Implemented Serra Paragon 2022-10-13 22:12:14 -04:00
Daniel Bomar
3d3fde35ca
[DMU] Implemented Rivaz of the Claw (#9523) 2022-09-15 22:35:52 -04:00
Alex Vasile
b40bde5e12
[AFC] Implemented Share the Spoils (#8583)
* Preliminary implementation of Share the Spoils.

* Added tracking of cards in exile to MageTestPlayerBase in order to help with testing of cards such as Share the Spoils which put and take cards out of exile a lot.

* Moved Share the Spoils to the correct set list.

* Fixed bug with using ’ instead of ' for card text.

* Add method to assert number of cards exiled into a specific exile zone.

* Further implementation of ShareTheSpoils and it's tests.

* Fixed a bug in the calcualtiong of exileNUmber. (I misunderstood what the copy() method was for)

* - Added a watcher which should limit player to only cast the spell once per turn.
- Fixed the tests to run properly (using .LOST instead of .LOSES for the GameEvent).
- A bit of cleaning up of the class

* Updated tests and card to capture both conceding and losing the game through other means.

* Further implementation. All parts are working (though not correctly).

* All pieces are now working. But, both the spend any mana and exile a card off the top of library activate when ANY card is played from exile, not just one exiled with Share the Spoils.

* Replaced changed how I move card from top of library to correct exile zone. Instead of using moveCards() and moveToAnotherZone(), I am not using moveCardsToExile().

* A new card is now properly exiled whenever one is played with Share the Spoils

* Moved inner class out and passing exileId as parameter instead

* Updated text based on comments

* Added several more tests

* Made changes to how exileId is handled based on comments

* Made changes based on comments

* Further changes based on comments

* Add a few more tests (will have to fix them once the exile zone issue is fixed)

* Added workaround for #8706

* Get most of the tests working

* Simplified cardId handling

* Reformat file based on comment

* - Added setStrictChooseMode to all tests
- Properly using checkPlayableAbility for all checks where things can't be played/cast.

* Fixed a missing getMainCardId call that made difficult cards unplayable

* - Simplified handling of casting only once per turn. I don't see the point to keeping the MageReference object. using a simple boolean instead
- This also fixes a bug where multiple cards could be played in the same turn.

* Fixed test for difficult cards.

* Reworked spend mana effect based on Dead Man's chest

* Added a check again a null watcher

* Fixed typo in checkManaSpendingForOtherExileSource

* Fixed tests to use proper checkPlayableAbility syntax.

Co-authored-by: Evan Kranzler <theelk801@gmail.com>
2022-03-15 18:34:36 -04:00
Jeff Wadsworth
93f14cdf61 - Fixed #8624 2022-02-04 11:49:34 -06:00
Daniel Bomar
24fab24440
[VOW] Implemented Jacob Hauken, Inspector / Hauken's Insight 2021-11-11 10:49:26 -06:00
Daniel Bomar
395136259f
[VOW] Implemented Cemetery Illuminator 2021-11-10 09:13:02 -06:00
Daniel Bomar
3414aa9959
[AFR] Wish - Add watcher to limit for single use 2021-07-20 13:30:38 -05:00
LevelX2
8105d8b26c * Improved handling of asThoughtAs approval by abilities that allows a clear and easy assignment of the approving effect. 2020-08-21 14:58:22 +02:00