Commit graph

10567 commits

Author SHA1 Message Date
Alex W. Jackson
12a20d07f4 Add choose hints to abilities with sacrifice costs where the target and the permanent to sacrifice might be ambiguous (A-D) 2022-09-20 09:17:14 -04:00
Alex W. Jackson
2b652f6695 De-duplicate Splice code; add choose hints to all targeted Splice cards 2022-09-18 13:03:26 -04:00
Evan Kranzler
f21c2a6b2b [40K] Implemented Sporocyst 2022-09-18 12:18:32 -04:00
Evan Kranzler
7e55f25d31 [40K] Implemented Necron Deathmark 2022-09-18 11:58:16 -04:00
Evan Kranzler
69c15762a5 Fact or Fiction effects reverted to asking for hand pile rather than graveyard pile (closes #9531) 2022-09-18 11:52:29 -04:00
Alex Vasile
7d57831ed0
Fix searching for split card halves returning full card in incorrect instances. (#9534) 2022-09-18 03:41:35 -04:00
Evan Kranzler
c48c4ccf53 [40K] Implemented Vexilus Praetor 2022-09-17 23:41:13 -04:00
Evan Kranzler
3c9fb843c7 [40K] Implemented Thunderhawk Gunship 2022-09-17 23:25:35 -04:00
Evan Kranzler
4546766c1a [40K] Implemented Canoptek Scarab Swarm 2022-09-17 22:41:22 -04:00
Alex Vasile
b14af42280
[DMU] Karn's Sylex (#9507) 2022-09-17 22:37:56 -04:00
Evan Kranzler
2ca7cfa462 [40K] Implemented Space Marine Devastator 2022-09-17 10:50:43 -04:00
Evan Kranzler
a893e5ba88 [40K] Implemented Sister Repentia 2022-09-17 10:30:03 -04:00
Alex W. Jackson
639277402d Fix #8485 2022-09-17 09:27:49 -04:00
Evan Kranzler
91b36d4106 [40K] Implemented Sautekh Immortal 2022-09-16 21:12:46 -04:00
Evan Kranzler
1cc00630dd [40K] Implemented Vanguard Suppressor (with dummy squad ability) 2022-09-16 21:02:57 -04:00
Daniel Bomar
3d3fde35ca
[DMU] Implemented Rivaz of the Claw (#9523) 2022-09-15 22:35:52 -04:00
Evan Kranzler
95b2817ac8 [DMC] various text fixes 2022-09-15 21:28:25 -04:00
Evan Kranzler
53f76c2403 [40K] Implemented Great Unclean One 2022-09-15 20:51:13 -04:00
Evan Kranzler
89eb256c16 [40K] Implemented Lictor 2022-09-15 18:45:13 -04:00
Evan Kranzler
e9684c86ac [40K] Implemented Gargoyle Flock 2022-09-15 18:28:54 -04:00
Evan Kranzler
f04d8f8a6e [40K] Implemented Tyranid Invasion 2022-09-15 08:36:17 -04:00
Evan Kranzler
405a3b405e [40K] Implemented Tervigon 2022-09-15 08:12:22 -04:00
Evan Kranzler
a31644789c [DMU] various text fixes 2022-09-14 18:29:34 -04:00
Evan Kranzler
d165072ac9
[DMU] Implement Defiler cycle (Ready for review) (#9460)
* [DMU] Implemented Defiler of Faith

* [DMU] Implemented Defiler of Dreams

* [DMU] Implemented Defiler of Flesh

* [DMU] Implemented Defiler of Instinct

* [DMU] Implemented Defiler of Vigor

* create PermanentPredicate

* initial attempt at Defiler ability

* some nonfunctional recommended changes

* a few more requested changes

* change arguments to ObjectColor from String

* fix a dumb mistake

* add test

* a few requested changes
2022-09-14 15:16:56 -04:00
Alex W. Jackson
efa7b485b0 Remove unneeded parameter from StackObjectCopyApplier.getNextNewTargetType (all users were using an Iterator or a fixed return value) 2022-09-14 03:23:21 -04:00
Alex W. Jackson
c401b35b63 Fix #9524 2022-09-14 03:08:23 -04:00
Alex W. Jackson
c3ce7898de
[DMU] Implement Silver Scrutiny and fix #7326 (#9508) 2022-09-13 20:15:04 -04:00
Evan Kranzler
0d4cf5a20a [40K] Implemented The Swarmlord 2022-09-13 18:55:19 -04:00
Evan Kranzler
9b70a0ee6f [40K] Implemented Old One Eye 2022-09-13 08:44:43 -04:00
Evan Kranzler
668410dd21 [40K] Implemented Broodlord 2022-09-13 08:30:33 -04:00
Evan Kranzler
d313bc7ad6 [40K] Implemented Imotekh, the Stormlord 2022-09-13 06:55:12 -04:00
Evan Kranzler
515828eede [40K] Implemented Deathleaper, Terror Weapon 2022-09-13 06:40:15 -04:00
Evan Kranzler
5e26b7eacd [40K] Implemented Inquisitor Greyfax 2022-09-13 06:34:05 -04:00
PurpleCrowbar
51fb4df5a0
[DMC] Implement Rasputin, the Oneiromancer (#9515) 2022-09-12 18:34:03 -04:00
Alex W. Jackson
c84d9d2168 Don't erase a permanent's attacking/blocking info when it leaves the battlefield. Kithkin Mourncaller and Kardur Doomscourge no longer need their own special TriggeredAbility class 2022-09-12 10:43:21 -04:00
Alex W. Jackson
7c2f76b46b Remove custom multitarget handling from ReturnToHandTargetEffect (use EachTargetPointer instead) 2022-09-12 08:54:45 -04:00
Alex W. Jackson
dc33531792 Fix #4368 2022-09-12 06:56:07 -04:00
PurpleCrowbar
46cc674a8e
[DMC] Implement Sivitri, Dragon Master (#9506)
* [DMC] Implement Sivitri, Dragon Master
* Generalised CantAttackYouUnlessPayAllEffect
2022-09-11 23:18:25 -04:00
Daniel Bomar
90496c56f4
[DMU] Implemented Tyrannical Pitlord (#9498) 2022-09-10 19:54:46 -04:00
PurpleCrowbar
6c60b342a0
[DMC] Implement Jedit Ojanen, Mercenary (#9497) 2022-09-10 15:59:48 -04:00
Alex W. Jackson
c0aeb44e5b [TOR] Implemented Carrion Rats and Carrion Wurm 2022-09-10 03:27:41 -04:00
Alex W. Jackson
a2bcf7074e Fix #9331, #8086 2022-09-09 22:42:03 -04:00
Alex W. Jackson
5bfbeff87d Fix Render Silent and remove some unnecessary custom effects I noticed via the previous commit 2022-09-09 15:41:37 -04:00
Alex Vasile
092f3c3fe1
Simplified effects by removing unnecessary getText instances. (#9374) 2022-09-09 12:02:22 -04:00
Alex W. Jackson
076c55f1ea Fix several card abilities incorrectly implemented as intervening-if abilities when they weren't 2022-09-09 04:47:07 -04:00
PurpleCrowbar
173b3dbb4f
[DMC] Implement Greensleeves, Maro-Sorcerer (#9487) 2022-09-08 23:26:43 -04:00
Alex W. Jackson
d5e56f523d Add new EventType CREATURE_BLOCKS, which fires once per blocker (rather than once per blocker per attacker). Updated some abilities and cards to use it (still incomplete). Fixes #4285 2022-09-08 21:41:15 -04:00
Oleg Agafonov
da6fd76c6a Fixed typo 2022-09-09 01:00:48 +04:00
Daniel Bomar
48df6902e1
[40K] Fixed Abaddon the Despoiler and enabled test (fixes #9490) 2022-09-08 11:35:42 -05:00
Alex W. Jackson
2f93647196 Fix IllegalArgumentException on Volcano Hellion echo trigger 2022-09-07 23:15:18 -04:00
Alex W. Jackson
a6c5209a2a Combat.getAttackers and Combat.getBlockers now return a Set instead of a List, so that two-headed blockers aren't included twice 2022-09-07 22:36:05 -04:00
Jeff Wadsworth
4aee1b714c - Fixed #9481 2022-09-07 13:13:09 -05:00
Alex W. Jackson
e310ede837 Replace many custom effects with ExileUntilSourceLeavesEffect 2022-09-06 06:50:01 -04:00
Daniel Bomar
a5621cf247
[DMU] Implemented Anointed Peacekeeper (#9478) 2022-09-05 21:49:10 -04:00
Evan Kranzler
c745bce734 [DMU] Implemented Shanna, Purifying Blade 2022-09-05 20:24:46 -04:00
Alex W. Jackson
b5b4b38cc6 Fix ShuffleIntoLibraryTargetEffect to support multiple target cards with possibly different owners 2022-09-05 19:44:09 -04:00
Evan Kranzler
30aafb7672 [DMU] Implemented The Phasing of Zhalfir 2022-09-05 16:56:53 -04:00
Evan Kranzler
b9bbb4d1b3 [DMU] Implemented Karn, Living Legacy 2022-09-05 16:56:52 -04:00
Evan Kranzler
02968c9cc1
[DMU] Implemented Sphinx of Clear Skies (#9474)
* create common class for effects similar to Fact or Fiction

* [DMU] Implemented Sphinx of Clear Skies

* change text generation to staticText
2022-09-05 16:14:16 -04:00
Alex Vasile
138fa46824 Fixed text generation for LoseLifeOpponentsEffect 2022-09-05 14:26:36 -04:00
Alex Vasile
c16ead128b [NCC] Address comments for Lethal Scheme 2022-09-04 13:26:26 -04:00
Alex W. Jackson
e3b8a813e5 Remove custom multitarget handling from DestroyTargetEffect (use EachTargetPointer instead) 2022-09-04 07:04:46 -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 W. Jackson
c6e1ce6697 Remove custom multitarget handling from ExileTargetEffect (use EachTargetPointer instead) 2022-09-03 22:59:19 -04:00
Alex W. Jackson
fbccdd3088 Add missing files from last commit 2022-09-03 06:04:31 -04:00
Alex W. Jackson
ce610be087 [ONS] Implement Crown of Ascension, Crown of Suspicion and Crown of Vigor 2022-09-03 05:46:59 -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
Evan Kranzler
af0fa56c10 [DMC] Implemented Baru Wurmspeaker 2022-08-30 21:31:20 -04:00
Evan Kranzler
b14d7d24bb [DMU] Implemented Yotia Declares War 2022-08-30 20:50:26 -04:00
Evan Kranzler
d83cea8000 [DMU] Compleated Weatherlight 2022-08-30 20:36:10 -04:00
Alex W. Jackson
c26c2f3785 [DMC] Implemented General Marhault Elsdragon 2022-08-30 12:21:27 -04:00
Alex W. Jackson
e0ade383f2 Fix #9441 2022-08-30 11:40:30 -04:00
Evan Kranzler
06d7b508dc [DMU] Implemented Academy Loremaster 2022-08-29 20:09:16 -04:00
Evan Kranzler
2e94364b2a [DMU] Implemented Urborg Lhurgoyf 2022-08-29 20:02:30 -04:00
Evan Kranzler
a7b7f1bbe3
[DMU] Implemented Twinferno (#9437)
* create common class for copying the next spell cast

* [DMU] Implemented Twinferno

* add filter to CopyNextSpellDelayedTriggeredAbility
2022-08-29 18:51:22 -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
Evan Kranzler
3929cb25a8 [DMU] Implemented Radha's Firebrand 2022-08-28 10:24:31 -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
PurpleCrowbar
d04ea3a88b [CC2] Added set 2022-08-26 03:58:39 +01:00
Daniel Bomar
7ba500ebe5
[DMU] Implemented Stronghold Arena 2022-08-23 14:56:50 -05:00
Daniel Bomar
3ce05b06c7
[DMU] Implemented Lagomos, Hand of Hatred 2022-08-23 12:01:08 -05:00
Daniel Bomar
356091c750
Merge pull request #9402 from weirddan455/raven-man
[DMU] Implemented The Raven Man
2022-08-23 10:09:36 -05:00
Alex Vasile
0a96201b6a Simplified Mirri and Crawlspace by making their identical effects a common effect that is shared between them 2022-08-22 21:39:28 -04:00
Daniel Bomar
7f439e23ab
[DMU] Implemented Tori D'Avenant, Fury Rider 2022-08-22 18:24:07 -05:00
Evan Kranzler
17e673ddcf fix verify error, remove skip 2022-08-22 19:00:27 -04:00
Evan Kranzler
6b09fc68ef [DMU] Implemented Molten Monstrosity 2022-08-22 15:31:01 -04:00
Daniel Bomar
0d705fdea6
[DMU] Implemented The Raven Man 2022-08-22 11:42:18 -05:00
Alex W. Jackson
54896b3564
Fix #9357 (#9359) 2022-08-22 12:38:08 -04:00
Daniel Bomar
aea8c82728
[DMU] Implemented Phoenix Chick (#9397)
* [DMU] Implemented Phoenix Chick

* ReturnSourceFromGraveyardToBattlefieldWithCounterEffect - Fix constructor

* Revert back to using setText() to set staticText

* Make setText() return a String
2022-08-22 10:36:48 -05:00
Evan Kranzler
867c2569c8 [DMU] Implement Yavimaya Steelcrusher (dummy enlist ability) 2022-08-22 10:24:37 -04:00
PurpleCrowbar
eb62b921f0 Fixed Icingdeath, Frost Tongue not triggering on attack. Closes #9380 2022-08-22 02:32:49 +01:00
Daniel Bomar
39a6ce42e5
[DMU] Implemented Jhoira, Ageless Innovator 2022-08-21 15:27:35 -05:00
Daniel Bomar
e341023d23
[DMU] Compleated Ajani, Sleeper Agent 2022-08-21 13:41:48 -05:00
Daniel Bomar
c140b073ad
Merge pull request #9386 from weirddan455/braids
[DMU] Implemented Braids, Arisen Nightmare
2022-08-20 17:04:55 -05:00
Daniel Bomar
0f9a293762
Add/Refactor cards to use SharesCardTypePredicate 2022-08-20 12:37:50 -05:00
Alex Vasile
3c0951c350 Enabled assertAllCommandsUsed by default and fixed remaining tests 2022-08-20 07:36:32 -04:00
Evan Kranzler
a43eb00c1c
[DMU] Implemented Archangel of Wrath (#9385)
* [DMU] Implemented Archangel of Wrath

* fix kicker cost

* small change to text generation
2022-08-19 18:19:00 -04:00
Evan Kranzler
5e656b8da5
[DMU] Implemented Impede Momentum (#9383) 2022-08-18 20:38:54 -04:00
Evan Kranzler
55caa5e4eb [DMU] Implemented Sheoldred, the Apocalypse 2022-08-18 19:05:30 -04:00
arketec
56d5ad3dbc
[NCC] Implement The Beamtown Bullies (#9378) 2022-08-17 21:01:49 -04:00
Evan Kranzler
6cfefeea95
[DMU] Implemented all currently previewed cards (#9304) 2022-08-14 21:02:16 -04:00
Alex Vasile
19a896df57 Refactoring and cleaning up based on previous commit 2022-08-12 21:33:20 -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
sprangg
7554a2b6b5
Make Add Land dialog no longer add a random mix of regular and snow-covered basic lands (#9353)
The Add Land dialog now only adds regular basic lands and never snow-covered ones, unless you specifically select a set that only contains snow basics (e.g. MH1) Sets that only contain snow basics are not selectable when adding lands to a Limited deck.
2022-08-10 20:11:01 -04:00
Alex Vasile
ebdb6b53a4
Replace Overriden getTriggerPhrase() with setTriggerPhrase() usage (#9343) 2022-08-08 23:28:46 -04:00
PurpleCrowbar
188e6dd8c1 Added default image set codes for several tokens 2022-08-06 21:54:15 +01:00
PurpleCrowbar
7a8dd704cf
[NCC] Implement Kros, Defense Contractor (#9362) 2022-08-06 15:28:37 -04:00
Daniel Bomar
d42f9f1eca
[NCC] Implemented Turf War (#9341) 2022-08-05 18:19:46 -04:00
DeepCrimson
9f22664bf1
Refactor: Delete Unused MageLoseGameAction (#9306) 2022-08-03 14:52:54 -04:00
Alex W. Jackson
7233061ae3
Remove lockedIn parameter from BoostTargetEffect. Fixes #9329 (#9334) 2022-08-02 02:40:59 -04:00
sprangg
1a3d5923de
Make draftbots never pick basic lands over any other card (#9342)
Co-authored-by: sprangg <a@b.c>
2022-08-02 02:38:27 -04:00
Alex Vasile
cbbfe5906a Added comments that need to be addressed for card draw. 2022-07-31 22:50:00 -04:00
sprangg
17deba2df3
Clipboard .mtga deck importing & fixes to .mtga and .dck importers (#9321) 2022-07-31 22:42:32 -04:00
Jeff Wadsworth
90e888fe13 - Fixed #9326 2022-07-27 08:59:31 -05:00
Alex Vasile
c34c6a59df
Test for Copied Gilded Drake reverting control when killed (#9198) 2022-07-27 08:05:10 -04:00
DeepCrimson
5d11bab6dd
Refactor: Remove unused subscribe method from CardRepository (#9243) 2022-07-27 08:02:59 -04:00
Alex W. Jackson
516ac042a2 Fix BecomesBlockedAttachedTriggeredAbility (#9325) 2022-07-27 00:42:32 -04:00
Alex Vasile
4b511775db Further optimization of BecomesAllBasicsControlledEffect by making static the basic mana abilities used for checking 2022-07-26 10:12:32 -04:00
PurpleCrowbar
e67f6df0d6 [CMD] Fixed Ruhan of the Fomori and cards with similar effects. Closes #9096 2022-07-26 01:08:32 +01:00
PurpleCrowbar
cc6936387e [NEO] Fixes Kaito Shizuki's emblem not triggering. Closes #9290 2022-07-25 02:17:27 +01:00
DeepCrimson
1f6170570b
Refactor: Document and clean-up getSpellOrLKIStack (#9293) 2022-07-24 16:15:56 -04:00
DeepCrimson
97b34e3129
Refactor: Remove Redundant Variable Assignment in getPlayableObjects (#9309) 2022-07-22 23:07:51 -04:00
DeepCrimson
4e139c9878
Refactor: Use primitive integer type (#9310) 2022-07-22 23:05:13 -04:00
PurpleCrowbar
474aeb560a Added 2X2 token images 2022-07-22 23:46:15 +01:00
Alex Vasile
513085bbcc Fixed Banishing Light-type effects to not exile creatures if the source permanent is not on the battlefield when the effect resolves. Closes #8899. 2022-07-17 21:08:09 -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
2aa17d6153 Autotarget disabled for search effects. Closes #9254. 2022-07-12 21:23:04 -04:00
Alex Vasile
df39503a0b
Reduce CPU cost of BecomesAllBasicsControlledEffect. (#9263) 2022-07-12 21:16:55 -04:00
Alex W. Jackson
79234b4059 Fix various 'deals damage to a creature' abilities triggering on damage to planeswalkers 2022-07-09 20:37:06 -04:00
Alex Vasile
7ca7e10d80 Fix NPE in tryToAutoChoose when auto-choose is set to "Most" 2022-07-09 18:02:32 -04:00
Alex W. Jackson
a94c837ad0
Fix casting of Disturb cards with Auras on the back (#8600) 2022-07-08 23:37:52 -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
484e6c20f1
Fixes to casting calculations (#9049) 2022-07-08 22:00:19 -04:00
Alex Vasile
96f6fbefc8
GUI: Autochoose targets if choice can be made (#9206) 2022-07-08 21:58:42 -04:00
Alex Vasile
5e7f145e3d
Fix message for choose target dialog for distributing +1/+1 counters (#9202) 2022-07-08 21:42: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
545b7c143d
Refactor: Fix spelling (#9238) 2022-07-08 21:39:08 -04:00
Alex Vasile
f6ff32e38b
[AER] Inspiring Statuary display fix (#9214) 2022-07-08 21:37:31 -04:00
DeepCrimson
ea6cbcc962
Refactor: Fix fileName param (#9240) 2022-07-08 21:36:50 -04:00
DeepCrimson
f507a6605c
Refactor: Remove Unused triggerId variable (#9237) 2022-07-08 21:31:50 -04:00
DeepCrimson
f20210037b
Refactor: Delete Unused Methods cardExists (#9244) 2022-07-08 21:30:37 -04:00
DeepCrimson
05648f8c0c
Refactor: Delete unused getLastBuild (#9245) 2022-07-08 21:20:18 -04:00
DeepCrimson
702cfcaa86
Refactor: clean up getAllSetNames (#9246) 2022-07-08 21:19:59 -04:00
DeepCrimson
5c5cb46de6
Refactor: remove unused import (#9239) 2022-07-07 08:47:13 -04:00
Alex Vasile
a8a16968d3
[AKH] Fix game slowdown from Cascading Cataracts. Closes #7649. (#9068) 2022-07-04 22:20:54 -04:00
Alex Vasile
dca2ae546e
[CLB] Fix Incorrect Volo Behavior (#9190) 2022-07-04 22:17:33 -04:00
Alex Vasile
78f3547644
Added common interface to conditional effects (#9208) 2022-07-04 20:28:54 -04:00
Alex Vasile
5c54eccffd Revert "Condense mana strings shown to player. Fix #8945."
(condenseManaCostString does not respect mana symbol order)

This reverts commit 08fd93f073.
2022-07-04 15:42:51 -04:00