Commit graph

3287 commits

Author SHA1 Message Date
Susucre
c2fd90877b
[NCC] Lethal Scheme (#9100) 2022-09-04 13:05:36 -04:00
Alex W. Jackson
addfd5166e Add new methods to Target and TargetPointer to help generate card rules text. Currently only used by ExileUntilSourceLeavesEffect 2022-09-04 05:15:12 -04:00
Alex Vasile
07a142c9e8
Refactor: Add proper support for modifying and querying base P/T (#9409) 2022-09-01 19:57:30 -04:00
RJayz
3c3ba6f5a9
[CLB] Implemented Gale, Waterdeep Prodigy (#9423) 2022-08-30 21:53:33 -04:00
Alex Vasile
7e3b0f98e6 [MOR] Fixed Shared Animosity incorrectly calculating creature count for boost effect. Closes #9428. 2022-08-29 22:17:07 -04:00
Alex Vasile
a29d5c70cb [AVR] Fixed Stolen Goods not working with dual face cards. Closes #9430. 2022-08-29 21:04:49 -04:00
Evan Kranzler
697586a552
[DMU] Implement Enlist ability (#9431)
* implement enlist ability

* remove skips for enlist

* [DMU] Implemented Guardian of New Benalia

* add test for enlist
2022-08-29 18:51:13 -04:00
RJayz
6e246ded6a
[CLB] Implemented Scion of Halaster (#9417) 2022-08-27 17:37:40 -04:00
Evan Kranzler
90bd0dbf63
Implement Read Ahead mechanic (#9407)
* implement Read Ahead mechanic

* [DMU] Implemented The World Spell

* [DMU] Implemented The Elder Dragon War

* added read ahead test

* fix verify failure

* small change to test

* fix read ahead text
2022-08-27 14:53:39 -04:00
Alex Vasile
258ec26fec Added tests to try to capture sacrifice lands automatically going to the graveyard. For #8980. 2022-08-26 20:59:49 -04:00
Alex Vasile
c670ec5764 Fixed intermittent test failure for Soul Warden 2022-08-26 20:22:57 -04:00
Alex Vasile
4368bae50c [LGN] Fixed Ward Sliver not properly giving protection. Closes #9418 2022-08-26 20:19:41 -04:00
Alex Vasile
ebd7d3ef15 Added extra test to explicitly test that it's not possible to target 2022-08-26 20:16:29 -04:00
Alex Vasile
20a50af475 Fixed typo in assertAbility 2022-08-26 19:10:39 -04:00
Alex Vasile
8bdd8b2bed Fix Ethereal Valkyrie test randomly failing (caused by AI the incorrectly tapping mana) 2022-08-26 18:17:38 -04:00
RJayz
6f461f9669
[CLB] Implemented Neera, Wild Mage (#9415) 2022-08-26 15:19:40 -04:00
Alex Vasile
b705ba48cf [CLB] Fixed Astarion's Thirst not giving counters properly. Closes #9414 2022-08-25 20:38:18 -04:00
Alex Vasile
4b9b419f2e Fixed Grips of Chaos test failing randomly, and added explanation 2022-08-25 20:19:49 -04:00
Alex Vasile
9d54aee3ba [CLB] Fix Myrkul's Edict not sacrificing creatures on 1-9. For #9381. 2022-08-25 15:54:10 -04:00
Alex Vasile
473ecc3292 [SNC] Fix Unlucky Witness not letting you play cards. Closes #9413. 2022-08-25 14:50:30 -04:00
Alex Vasile
37f4f40a2c Fix many tests with wrong commands 2022-08-25 00:52:20 -04:00
Alex Vasile
dca1b5e110 [BNG] Fix Astral Cornucopia not producing enough mana. Closes #9392. 2022-08-24 20:10:00 -04:00
Alex Vasile
ac13be90cf Fixed what is almost certainly a typo 2022-08-24 18:59:34 -04:00
Edoardo Mortara
77e61fe056
[CLB] Implement Banishment (#9400) 2022-08-23 18:25:28 -04:00
Alex Vasile
e5b66a34fd - Fixed bug ShanidSleepersScourgeTest
- Moved ShanidSleepersScourgeTest into correct folder
2022-08-23 09:55:07 -04:00
Alex Vasile
4999fb02b9 Fixed typo in assertAbilities 2022-08-23 09:53:48 -04:00
Evan Kranzler
681b882c6f fixed test failure 2022-08-23 09:44:32 -04:00
Edoardo Mortara
8aed9d473a
[DMC] Implement Shanid, Sleepers' Scourge (#9390) 2022-08-22 22:48:10 -04:00
Alex Vasile
9b2abfb1bb Fixed AnnihilatorTest 2022-08-22 12:44:22 -04:00
Alex Vasile
346be39f2a [STX] Fix Mage Duel cost reduction. Closes #9395. 2022-08-21 11:03:59 -04:00
Alex Vasile
5e6921b346 Added waitStackResolved to EtherealValkyrieTest to address warnings 2022-08-20 16:07:00 -04:00
Alex Vasile
b501669365 Removed all calls to assertAllCommandsUsed() and made it private since it will be automatically called 2022-08-20 07:52:01 -04:00
Alex Vasile
3c0951c350 Enabled assertAllCommandsUsed by default and fixed remaining tests 2022-08-20 07:36:32 -04:00
Alex Vasile
89466d0f8f Added test for Aura cards cast with Disturb. Closes #9360. 2022-08-12 23:46:46 -04:00
Alex Vasile
65122676e5 [KHC] Fix Ethereal Valkyrie and added tests. Closes #9361 2022-08-12 23:17:36 -04:00
Alex Vasile
c0c5c63284 Fixed "One mana of any color" abilities from allowing you to make {C}. Closes #9351. 2022-08-12 21:33:02 -04:00
Alex Vasile
8b71e0a444 [DEV] JDK 11+ support. All builds still target Java 1.8. 2022-08-05 00:17:00 -04:00
the-red-lily
2d56e23148
Copies of Approach of the Second Sun now cause lifegain (#9172) 2022-08-03 14:42:06 -04:00
Alex Vasile
c34c6a59df
Test for Copied Gilded Drake reverting control when killed (#9198) 2022-07-27 08:05:10 -04:00
Spencer Lanman
40fbb9af9b
[NCC] Implement Smuggler's Share (#9295) 2022-07-23 11:07:07 -04:00
Alex Vasile
9715021a35 Fixed GoadAllEffect from affecting creatures that ETB after it resolves. Closes #9227. 2022-07-17 19:41:45 -04:00
Alex Vasile
8c22db650a [CLB] Fixed connive fizzling on stack when permanent that connived leaves the battlefield. Closes #9252. 2022-07-17 18:24:35 -04:00
Alex Vasile
8878dc5cc7 Added failing ignore test for #7655 2022-07-17 13:23:58 -04:00
Alex Vasile
e50e17efe7 [SCG] Added ignored test for bug with Decree of Pain effect resolution 2022-07-14 10:37:18 -04:00
Alex W. Jackson
59d3d83de0 Fix test failure caused by 2aa17d6153 2022-07-13 04:17:32 -04:00
Alex Vasile
b473300680
More robust searching and importing of MDFCs, Split, Adventure cards, etc. (#8948) 2022-07-08 22:19:54 -04:00
Alex Vasile
96f6fbefc8
GUI: Autochoose targets if choice can be made (#9206) 2022-07-08 21:58:42 -04:00
Alex Vasile
69f9331d87
[AFC] Fix OneOrMoreDiceRolledTriggeredAbility to not trigger from Chaos Dragon (#9201) 2022-07-08 21:40:05 -04:00
DeepCrimson
f99da274cd
Refactor: Remove Unused ComputerPlayer3 (#9220) 2022-07-04 23:13:23 -04:00
DeepCrimson
01e7549104
Refactor: Remove Unused RandomPlayer (#9218) 2022-07-04 23:04:27 -04:00
Susucre
98c554a59f
[NCC] Implemented Jolene, the Plunder Queen (#9093) 2022-07-04 09:55:47 -04:00
DeepCrimson
21e5d36962
Refactor: Fix Spelling in CardTestPlayerAPIImpl.java (#9216) 2022-07-03 18:32:03 -04:00
DeepCrimson
6d4c422720
Refactor: Remove String Concatenation In Loop (#9217) 2022-07-03 17:49:53 -04:00
DeepCrimson
87908dc808
Refactor: Clean Up Unused Method getPlayerFromName (#9215) 2022-07-03 17:49:23 -04:00
DeepCrimson
7bb851e0a5
Refactor: Fix spelling of 'controller' (#9163) 2022-06-26 22:58:06 -04:00
DeepCrimson
2d2b7ae835
Refactor: Return true instead of !false (#9164) 2022-06-26 22:56:31 -04:00
DeepCrimson
e1cf2fd7e0
Move useRedDefault() method to only test which uses it (#9104)
Co-authored-by: DeepCrimson <deepcrimson@users.noreplyl.github.com>
Co-authored-by: Oleg Agafonov <jaydi85@gmail.com>
2022-06-17 08:55:53 +04:00
DeepCrimson
ce33b5f218
Refactor: Delete Unused useWhiteDefault() Test Method (#9095)
* Format CardTestAPIImpl.java and CardTestPlayerAPIImpl.java

* Delete unused useWhiteDefault() test method

* Address JayDi's formatting feedback

Co-authored-by: DeepCrimson <>
2022-06-17 08:38:16 +04:00
DeepCrimson
882afbf8b5
Fix remaining raw unparameterized usages of ManaCostImpl 2022-06-16 14:53:44 -07:00
Alex Vasile
44f8377f7e [AFC] Added test for Share the Spoils for #9046 2022-06-16 14:18:27 -04:00
DeepCrimson
3ae5f4979d
Refactor: Remove redundant boxing/unboxing to parse int primitives (#9065) 2022-06-12 12:46:59 -04:00
DeepCrimson
048fcba222
Test for Unlicensed Hearse (#9094) 2022-06-12 09:21:12 -04:00
DeepCrimson
d60f487239
Refactor: Remove unused player param from additional constructor (#9042) 2022-06-08 22:51:24 -04:00
Alexander Novotny
b853633190
Refactor: Removed unused JFX import (#9075) 2022-06-07 17:01:54 -04:00
DeepCrimson
abed4219e0
Replace stream with succinct String.join (#9037) 2022-06-03 15:32:19 -04:00
DeepCrimson
ef5bd74f27
Removing Unnecessary StringBuilder (#9064) 2022-06-03 15:31:37 -04:00
Alex Vasile
e679574a15
Fixes for Mana.enough and Mana.needed. For #8153 (#8663)
Fixes to Mana.enough:

mana of any color (ManaType.Any) was being used to pay for colourless mana.
Fixes for Mana.needed:

mana of any color (ManaType.Any) was being used to pay for colourless mana.
calculation for generic mana remaining was using min(0, available) instead of max(0, available) meaning that leftover mana of other types was never used to pay for any leftover generic costs.
Other:

Added tests for both .needed and .enough.
Moved tests some tests from ManaUtilTest to ManaTest
Simplified Mana.subtractCosts by calling Mana.substract first to make use of common functionality.
Added more documentation
Added tests for both .needed
Added more tests for .enough to cover the changes with colourless mana.
2022-06-01 08:13:37 -06:00
DeepCrimson
33eeffa4d0
Fix typo in comment (#9038) 2022-05-30 07:21:36 -06:00
DeepCrimson
7942c58541 Remove unused player parameter from createPlayer method 2022-05-29 23:33:23 -07:00
Alex Vasile
01be1b1a6b Fixing several tests. Working towards enabling assertAllCommandsUsed() inside execute(). 2022-05-29 21:03:57 -06:00
DeepCrimson
80f6db1245
Fix spelling for SHOW_COMMAND_GRAVEYARD (#9034) 2022-05-29 20:15:12 -06:00
Oleg Agafonov
a62f29a7c9 Tests: improved load test (commander game is default now, custom decks support instead random) 2022-05-29 01:35:19 +04:00
teskogi
7ec94425df
Implement Aeon Engine (#8804)
Co-authored-by: teskogi <tojile7269@yeafam.com>
2022-05-25 15:33:28 -05:00
Alex Vasile
015cdf3136
Revert "Added missing fields to many copy constructors. (#8957)" (#8999)
This reverts commit 82708e4273.

Some of these (AI related result in bloated memory usage, needs more investigation).
2022-05-25 12:57:24 -06:00
Alex Vasile
2f3831599d Added player's name to assertGraveyardCount 2022-05-25 11:06:26 -06:00
Alex Vasile
82708e4273
Added missing fields to many copy constructors. (#8957) 2022-05-25 09:51:18 -06:00
Alex Vasile
db68e4798a Fixing several tests. Working towards enabling assertAllCommandsUsed() inside execute(). 2022-05-24 21:20:09 -06:00
Alex Vasile
3a098270fb More assertAllCommandsUsed() test fixes. 2022-05-17 21:43:04 -06:00
Alex Vasile
e83ffb2ad7 Fixing several tests. Working towards enabling assertAllCommandsUsed() inside execute(). 2022-05-16 15:29:15 -06:00
Alex Vasile
2497e44182 Fixing several tests. Working towards enabling assertAllCommandsUsed() inside execute(). 2022-05-15 10:51:38 -06:00
Grath
ac2eb9056d
Reflection of Kiki-Jiki token being sacrificed incorrectly for #8742 (#8743)
Reflection of Kiki-Jiki tokens were being sacrificed even if not under the control of Reflection of Kiki-Jiki controller.
2022-05-13 14:56:47 -06:00
Alex Vasile
0022dc8c37 Fixing several tests. Working towards enabling assertAllCommandsUsed() inside execute(). 2022-05-13 14:40:54 -06:00
teskogi
1538714555
Fractured powerstone (#8805)
* Implement Fractured Powerstone

* Rebase fix FracturedPowerstone

Co-authored-by: teskogi <tojile7269@yeafam.com>
2022-05-06 11:25:46 -05:00
Jeff Wadsworth
b279d4b318 - Fixed #8839 and added test for it. 2022-05-06 10:23:10 -05:00
Jeff Wadsworth
751a9f8afc - added test for #8876 2022-05-03 17:15:40 -05:00
Evan Kranzler
0e3252d256
Implementing Blitz mechanic (WIP) (#8835)
* added blitz mechanic (mostly copy/paste of dash)

* renamed class

* reworked alt cost abilities, greatly reduced redundant code

* updated text generation

* removed all skips

* added test for blitz

* changed blitz implementation

* [SNC] Implemented Tenacious Underdog
2022-04-24 12:03:25 -04:00
Evan Kranzler
9ead88bacb [SNC] Implemented Endless Detour 2022-04-19 18:40:45 -04:00
Alex W. Jackson
dc7dcec39a
Refactor LookLibraryAndPickControllerEffect (#8841) 2022-04-16 00:32:24 -04:00
Daniel Bomar
21a1cfbea9
[SNC] Fixed shield counter interaction with damage can't be prevented effects 2022-04-15 08:27:21 -05:00
Daniel Bomar
63239fe8e6
[SNC] Implemented shield counter mechanic (#8830)
* [SNC] Implemented shield counter mechanic

* Rework shield counter to be a global replacement effect

* Add unit test for shield counter

Co-authored-by: Evan Kranzler <theelk801@gmail.com>
2022-04-14 09:43:12 -04:00
Evan Kranzler
6e65db284c
Implemented "Until your next end step" duration (#8831)
* initial implementation of until next end step duration

* added test, reworked effect duration
2022-04-10 17:57:58 -04:00
Alex W. Jackson
a48dedcd76 [ALA] Finish fixing Death Baron and add test 2022-04-08 01:42:41 -04:00
Evan Kranzler
09402609ef [DTK] reworked Living Lore, fixed death trigger 2022-04-04 23:04:09 -04:00
Evan Kranzler
26ae7b7281 replaced various instances of instanceof lambda functions with 2022-04-03 11:11:07 -04:00
Alex W. Jackson
c58eeef77d Fix that Warbringer's cost reduction doesn't apply when checking playable (for real this time) 2022-04-03 10:19:22 -04:00
Alex W. Jackson
081b2f2f39 Replace more custom effects with SavedDamageValue 2022-04-02 02:11:12 -04:00
Alex W. Jackson
46f98a0f88 Fix #8812 and add test 2022-03-31 21:30:46 -04:00
Evan Kranzler
676c3a8bb4 fixed interactions between effects which replace a token and effects which care about tokens after they've been made 2022-03-31 19:58:20 -04:00
Evan Kranzler
f6306630b3 [TSP] fixed implementation of Weatherseed Totem 2022-03-25 22:21:21 -04:00
Evan Kranzler
effdf14579 [VOW] fixed Savior of Ollenbock issues (fixes #8786) 2022-03-25 17:35:27 -04:00