Commit graph

46270 commits

Author SHA1 Message Date
Grath
6b9532febd
[refactor/bugfix] use rule 802.2a where appropriate. (#13179)
* [refactor/bugfix] use rule 802.2a where appropriate.

Many effects which relied on getDefendingPlayerId would fail if the attacking creature had been removed from combat before they resolved, in which case the defending player ID would be null. This fixes these issues.

* Add test for removing attacking creature with Defending Player triggered ability.

Change allowFormer to be true by default, reduce falses to only necessary cases.
2024-12-25 14:18:01 -05:00
Grath
8de9fb03a4
Break deadlock for one must/can't be blocked pair. (#13182)
Handle the case where a 'must be blocked if able' creature is attacking but there aren't enough available creatures to block it.
2024-12-25 14:17:40 -05:00
Oleg Agafonov
f4572faf8b AI, combat: fixed that computer blocking an attacker by biggest creature instead optimal;
refactor: fixed that Defiant Vanguard depends on debug data;
2024-12-25 18:43:26 +04:00
Oleg Agafonov
138788659a AI, combat: fixed that computer safely blocks the weakest creature instead most powerfull 2024-12-23 01:54:04 +04:00
xenohedron
89b2509fa5 fix #13177 (Zurgo and Ojutai)
trigger on combat damage only, regression from #13066
2024-12-22 13:04:16 -05:00
xenohedron
3bfa1443b2 fix Sharae of Numbing Depths properly (from #13176) 2024-12-22 13:02:27 -05:00
padfoothelix
f4eeda743c
fix a bug in Sharae of Numbing Depths (#13176)
* fix a bug in Sharae of Numbing Depths which caused the ability to trigger when owner's permanents got tapped.

* Fix Sharae of Numbing Depths
2024-12-22 11:29:48 -05:00
AlexKidd29
5928c84026
refactor: fixed wrong packge for RadCounterTriggerTest (#13162) 2024-12-19 01:55:21 +04:00
Grath
9055179f77 [PIP] Implement Yes Man, Personal Securitron 2024-12-18 15:15:34 -05:00
Grath
1b3d2373eb Update Thought Gorger and Toothy to use common effects/values. 2024-12-18 11:31:46 -05:00
Cameron Merkel
2f2c7ee205
Fix flashback not working with Viral Spawning (#13144) 2024-12-17 19:23:35 -05:00
Cameron Merkel
73b63d14ad
TargetAmount refactors (#13128)
* Add minimum and maximum target counts as parameters for TargetAmount and its subclasses; update/add several rules comments (and one actual text) for clarity; remove unused imports

* Get amount+description from target instead of parameters for DistributeCountersEffect and DamageMultiEffect; additions to TargetImpl.getDescription to accommodate

* Create separate method to check if "any number" phrasing should be used, override it in TargetAmount

* Check instanceof TargetAmount before casting

* Add new constructors to chain off of for TargetCreaturePermanentAmount & TargetCreatureOrPlaneswalkerAmount

* Fix text for Storm the Seedcore

* Use Integer.MAX_VALUE instead of 0 to represent no maximum targets

* Add comment about getUseAnyNumber()

* Use amount-only constructors in some TargetAmount subclasses, add clarifying documentation

* Fix a few calls

* Require more specific filters
2024-12-17 19:23:18 -05:00
Oleg Agafonov
960c26a291 tests: fixed and improved downloader tests 2024-12-17 01:00:31 +04:00
Oleg Agafonov
2aa64f252c bump version 2024-12-17 00:13:21 +04:00
Grath
bd1f802f46 Fix DeckValidatorTest. 2024-12-16 13:48:37 -05:00
Oleg Agafonov
2955535927 tests: added tests for auto-lands suggestion in deck editor and tourney (related to #13127) 2024-12-16 21:50:27 +04:00
Grath
40e2cf7cda Update banned lists for Legacy, Modern, and Pioneer.
https://magic.wizards.com/en/news/announcements/banned-and-restricted-december-16-2024
2024-12-16 12:29:04 -05:00
PurpleCrowbar
bdf9f09500 Remove all sets lacking token images from token image database 2024-12-16 02:07:59 +00:00
Oleg Agafonov
4bce1e0a9a When you cast this spell - fixed that it required double cost for cards with alternative costs like Evoke (example: Nulldrifter, #12843) 2024-12-14 21:47:55 +04:00
Oleg Agafonov
38b54beb54 tests: added Grand Abolisher tests for #13099 2024-12-14 18:49:34 +04:00
Oleg Agafonov
12220a7ada tests: added batch event tests for #13089 2024-12-14 18:25:54 +04:00
Tomasz Wegrzanowski
d3be2f1f50
Shivan Dragon - fixed wrong card name in J21 set (#13138) 2024-12-14 17:36:18 +04:00
Oleg Agafonov
ea0b0915a5 Triggered abilities - fixed that sacrice trigger doesn't work on itself (related to #13089, regression from #13088) 2024-12-14 16:59:20 +04:00
Oleg Agafonov
b855434a24 refactor: fixed dies events support in single cards (part 8, related to #13089, continue from #13088); 2024-12-14 15:48:32 +04:00
Oleg Agafonov
a970dc46c7 Havengul Laboratory // Havengul Mystery - fixed that it doesn't transform back on creature leaves 2024-12-14 09:12:25 +04:00
PurpleCrowbar
7de35db2e4 Add hint to Itlimoc, Cradle of the Sun 2024-12-13 23:31:07 +00:00
PurpleCrowbar
315edbb3be Remove DIS and INV from sets with token images 2024-12-13 20:43:57 +00:00
PurpleCrowbar
b559ed6a63 [FDN] Implement Quilled Greatwurm 2024-12-13 19:03:45 +00:00
xenohedron
dc38ac0710 fix error 2024-12-12 23:47:41 -05:00
xenohedron
8a13fbd24f Revert "Revert "[FDN] Implement Banner of Kinship""
This reverts commit 072410eff0.
2024-12-12 23:47:15 -05:00
xenohedron
072410eff0 Revert "[FDN] Implement Banner of Kinship"
This reverts commit bbfda7c479.
2024-12-12 23:02:08 -05:00
PurpleCrowbar
bbfda7c479 [FDN] Implement Banner of Kinship 2024-12-12 17:36:01 +00:00
Steven Knipe
8f809cab3c Fix Orim's Chant (#13130) 2024-12-10 15:46:23 -08:00
Oleg Agafonov
15a1e618fa client: improved default run scripts for better compatibility with non-ascii paths, increased default memory limit to 2 GB (#13121) 2024-12-10 18:17:55 +04:00
xenohedron
6aabc6c9c9 fix First Responder effect 2024-12-09 19:49:07 -05:00
xenohedron
08934f3f94 implement [CLB] Mirror of Life Trapping 2024-12-08 21:11:16 -05:00
xenohedron
272a189e8b update Portal Mage to common class 2024-12-08 20:46:56 -05:00
xenohedron
e9b29f7776 real fix for b5710802 2024-12-08 20:28:51 -05:00
xenohedron
24687eb4af implement [CLB] Hezrou 2024-12-08 20:27:17 -05:00
xenohedron
94db57e9d4 cleanup obsolete comment 2024-12-08 20:27:17 -05:00
Oleg Agafonov
9816ec7c26 tests: added wrong commands order check 2024-12-07 22:40:33 +04:00
Oleg Agafonov
de34a98208 client: added java version and charset info to error report (related to #13121) 2024-12-07 14:54:02 +04:00
Oleg Agafonov
8af7a492c8 refactor: fixed dies events support in single cards (part 7, related to #13089, continue from #13088); 2024-12-07 14:39:52 +04:00
Jeff Wadsworth
b571080260 Fixed #13056 2024-12-04 16:06:46 -06:00
Oleg Agafonov
2949444089 refactor: removed useless code on ChoiceCreatureType usage, removed possibly infinite code (game freezes) (related to #13106); 2024-12-05 01:03:13 +04:00
Jeff Wadsworth
e3a94c8adf Fixed #13106 2024-12-04 14:23:25 -06:00
Jeff Wadsworth
5df9127e01 Fixed #13064 2024-12-03 14:18:57 -06:00
xenohedron
d2e7d100ee adjust start of extra turn log message 2024-12-02 20:22:21 -05:00
Callumvl
defcb902dd
[DSC] Implement The Master of Keys (#13091) 2024-12-02 19:30:27 -05:00
PurpleCrowbar
9ddafd16ed
[MB2] Implement Hish of the Snake Cult (#13102) 2024-12-02 18:44:58 -05:00