mirror of
https://github.com/magefree/mage.git
synced 2025-12-26 05:22:02 -08:00
[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>
This commit is contained in:
parent
06eeb90b3d
commit
b40bde5e12
6 changed files with 932 additions and 1 deletions
|
|
@ -14,6 +14,7 @@ public enum MageIdentifier {
|
|||
KessDissidentMageWatcher,
|
||||
LurrusOfTheDreamDenWatcher,
|
||||
MuldrothaTheGravetideWatcher,
|
||||
ShareTheSpoilsWatcher,
|
||||
WishWatcher,
|
||||
GlimpseTheCosmosWatcher
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue