Commit graph

1884 commits

Author SHA1 Message Date
Susucre
06cce0ce22
[LTR] Implement Mordor Trebuchet (#10496)
Along with its unique token Ballistic Boulder.
2023-06-29 22:02:55 -04:00
xenohedron
ec4c2e2170
Cleanup: GainAbilityControlledSpellsEffect (#10446)
* Hide reminder text on Zhulodok

* Use logic from GainAbilitySpellsEffect, fix so that CastFromZonePredicate works

* Text adjustments

* Show cascade ability in hand for Abaddon the Despoiler

* Remove redundant class

* Simplify Cast Through Time

* Don't add additional instances of redundant abilities

* Remove redundant check

* Add option to ignore mana validation when checking playable objects

* Fix null errors

* Fix GainAbilityControlledSpellsEffect to apply ability to playable cards rather than owned cards

* Add unit test

* Revert bad workaround code

This reverts commit 17f5be6a79.
This reverts commit 7ebd2f1815.
This reverts commit 00969d1fe7.

* Remove ownership check on exiled cards

* Another test (currently failing)

* ignore test

* fix test: strict choose mode
2023-06-24 01:15:58 -04:00
Susucre
09e0cba992
[LTR] Fix Smaug Token producing food tokens instead of treasures (#10513) 2023-06-22 13:20:45 -04:00
Susucre
720b2fe163
[LTC] Implement Oarth Of Eorl (#10469)
Added one constructor for SagaAbility, accepting multiple effects and a target.
2023-06-18 22:38:18 -04:00
Oleg Agafonov
38be371c25 tests: real fix of Auratouched Mage - miss draw card effect (#9462) 2023-06-18 16:50:51 +04:00
Oleg Agafonov
afe89a1056 momir game: fixed game error on start, added momir emblem image 2023-06-17 09:29:47 +04:00
xenohedron
2cdfb255cf
cleanup to use ObjectColor.COLORLESS (#10447)
* Replace for BecomesColorSourceEffect

* Replace for BecomesColorTargetEffect

* Remove unused class

* Use common static instance
2023-06-11 23:36:01 -04:00
theelk801
b114e77a3a [LTR] Implement Saradoc, Master of Buckland 2023-06-11 22:18:20 -04:00
Oleg Agafonov
49ce794c45 Merge fix 2023-06-09 07:03:32 +04:00
Oleg Agafonov
35b00c3da1 Fixed game errors for non started games (some cards uses dynamic hints with non-protected code) 2023-06-09 07:03:31 +04:00
Oleg Agafonov
ae5bc90915 Fixed game error on attack order disconnects 2023-06-09 07:03:31 +04:00
Alexander Novotny
a0f8a42699
Fixing copy and cast from exile effects (#10436)
* Added unit test for magefree/mage#10435

* Added test for potential breakage of prosper functionality

* Copies of cards are now created in the right zone

* Added PlayCardTriggeredAbility

This triggered ability checks to make sure a card was actually played (as opposed to a copy of a card).
Common abilities have been refactored to use this new ability

* Added mizzix's mastery overload test

* Fixed Mizzix's mastery overload

* Added new ability to Juju Bubble

---------

Co-authored-by: xenohedron <xenohedron@users.noreply.github.com>
2023-06-09 05:32:59 +04:00
Alexander Novotny
079424f8f1
Added hint for restrictions which must attack a player (#10438)
Fixes #10140
2023-06-07 20:00:27 -04:00
xenohedron
807a6c95f1
Merge pull request #10369 from xenohedron/refactor-search
Refactor search library effect classes to clean up text generation
2023-06-04 22:18:18 +03:00
theelk801
a4a995f615 [LTR] Implement There and Back Again 2023-06-02 09:02:51 -04:00
theelk801
579f953e8b [LTR] Implement Long List of the Ents 2023-05-31 22:56:52 -04:00
theelk801
b9f31eb937 [LTR] Implement Dunland Crebain 2023-05-30 18:27:34 -04:00
Evan Kranzler
60e488cf05
rename classes (#10383) 2023-05-17 18:49:30 -04:00
xenohedron
698fe34014 SearchLibraryPutInPlayEffect: remove forceshuffle parameter, part 2 2023-05-13 23:45:36 -04:00
xenohedron
511ae76aee SearchLibraryPutInPlayEffect: remove outcome, part 2 2023-05-13 23:45:36 -04:00
xenohedron
ae7266efba SearchLibraryPutInHandEffect: simplify constructors 2023-05-13 23:45:35 -04:00
Evan Kranzler
024c3081df
[BRC] Implement Rootpath Purifier (ready for review) (#10363)
* refactor check supertype methods

* change supertype to list to match card type

* refactor various subtype methods

* implement mageobjectattribute for supertype

* a few fixes

* [BRC] Implement Rootpath Purifier

* a few extra fixes

* more fixes

* add test for purifier
2023-05-13 10:48:07 -04:00
Evan Kranzler
a850e3660b
Change supertype method in constructors (#10361)
* replace addSuperType with supertype.add in card constructors

* more supertype replacements

* update MDFC supertype implementation

* remove unnecessary class

* update test
2023-05-12 20:45:07 -04:00
xenohedron
4cc9329b15
New feature: "Chaos Remixed" booster draft (#10328)
* Fix error in draft pick logger that was failing on chaos drafts with fewer than 3 sets

* Implement Remixed Booster Draft

* Add debug test

* minor cleanup

* Cleanup unnecessary checks

* Fix elimination tournament type

* Add note for future improvement
2023-05-12 18:12:23 +04:00
Oleg Agafonov
30389e426f Fixed NPE error in drafting and disconnected player 2023-05-09 16:54:22 +04:00
Oleg Agafonov
a18dcd9911 Drana and Linvala - fixed game error on usage with same abilities from permanents (NPE error) 2023-05-09 16:54:22 +04:00
Oleg Agafonov
3c66dc8706 Additional fixes for 9d9916280a 2023-05-09 15:05:24 +04:00
Oleg Agafonov
9d9916280a Attacking you abilities and filters - fixed that planeswalker removes from a combat can cause a game error (NPE error, example: Curse of Hospitality) 2023-05-09 14:59:44 +04:00
theelk801
4271ec8aec [LTR] Implement Gandalf, Friend of the Shire 2023-05-08 17:28:38 -04:00
Oleg Agafonov
5c705a92a3 Cheats: added error dialog on wrong cheat command, added chat message about cheat try; 2023-05-09 00:22:00 +04:00
Oleg Agafonov
6882a9a49e Code clean 2023-05-08 22:59:30 +04:00
Oleg Agafonov
f2d93f224f Tokens and command objects reworked (part 2 of 2, tokens/emblems) 2023-05-08 02:18:42 +04:00
Oleg Agafonov
5f55c7c667 Tokens and command objects reworked (part 1 of 2):
- fixed that copy effect doesn't restore original image after effect's end;
 - removed outdated availableImageSetCodes (all images auto-selected from tokens database now, related to #10139);
 - refactor command objects to use CommandObjectImpl;
 - refactor planes/emblems/etc objects to use MageObjectImpl, added copyable support;
 - refactor another game objects to remove some duplicated fields;
2023-05-08 02:15:07 +04:00
Evan Kranzler
3503513c4e
Implement The Ring Tempts You mechanic (#10320)
* remove skip

* initial implementation of the ring mechanic

* some changes

* rework ring-bearer choosing

* [LTR] Implement Call of the Ring

* update ring-bearer condition
2023-05-07 14:32:28 -04:00
theelk801
cd3fb997a7 [CMM] Implement Commodore Guff 2023-05-06 09:06:22 -04:00
theelk801
39d78aff2f [MAT] Implement Tyvar, the Bellicose 2023-05-04 09:42:00 -04:00
Oleg Agafonov
6ed702a7b3 Tokens improved:
- added auto-generated token names for CreatureToken;
 - added verify tests for token names;
 - removed outdated ElementalCreatureToken;
 - fixed wrong indefinite article in some tokens;
 - fixed miss Token in some token names (related to #10139);
2023-05-04 17:38:54 +04:00
PurpleCrowbar
171f0a238b Fix Monkey Cage, fix Pongify ape's images, remove some non-token sets from available token sets 2023-05-02 21:04:57 +01:00
Oleg Agafonov
3986196aa4 Tokens rework: fixed morph support, fixed test (related to #10139) 2023-05-01 19:41:25 +04:00
Oleg Agafonov
94819ff91c Tokens rework:
- tests: added support of set code in custom ability (see addCustomCardWithAbility);
 - tests: added additional tests for token images (related to #10139, #10222);
 - fixed wrong token images for copied cards/tokens (#10222);
2023-05-01 17:27:26 +04:00
theelk801
df322c680c [40K] various text fixes 2023-04-30 15:26:40 -04:00
Oleg Agafonov
255a050025 Tests: improved verify tests:
- added checks for duplicated indefinite articles in the rules;
 - improved test_showCardInfo - now it can search cards by simple class name too;
 - fixed some card/token texts;
2023-04-30 18:49:22 +04:00
Oleg Agafonov
aaa92d5e46 Fixed tests 2023-04-29 21:30:34 +04:00
Oleg Agafonov
583c5fe4e9 GUI: improved double faced tokens:
- added tokens support in test render dialog;
 - improved PT drawing;
 - fixed broken second side switch button (related to #10231);
 - fixed miss override in TokenImpl (all override with backFace must be removed, see todo);
2023-04-29 19:13:13 +04:00
Paul Davies
70cf2158a9
[MIR] implemented Basalt Golem (#10285)
* added MIR Basalt Golem + Wall Token

* fixed card number, effect text, possible NPE
simplified effect code
2023-04-29 08:40:11 -04:00
theelk801
4757356bc2 [ONC] Implement Staff of the Storyteller 2023-04-28 19:25:34 -04:00
xenohedron
761663c63c
Feature improvement: automatic deck submissions now add lands sensibly (#10159)
* Make automatic deck submissions use sensible land suggestions

* Cover edge case of no colored mana symbols among cards in deck

* Add comments

* Get minimum deck size from deck validator
2023-04-28 18:59:24 +04:00
Oleg Agafonov
f86cf176d7 Tokens rework:
- added reminder / helper tokens support (example: Copy, Morph, Day // Night, related to #10139);
 - added verify checks for reminder tokens;
 - added images download for reminder tokens;
2023-04-27 19:05:31 +04:00
Evan Kranzler
726e289646
Implement DFC tokens for Incubate (#10231)
* remove incubate skip

* initial implementation of DFC tokens

* separate incubator back face to separate class

* small refactor to token copy function

* token copies now have back faces as well

* effects which modify token copies now correctly apply to both faces

* add skip for exception

* tokens now enter transformed correctly

* [MOC] remove skip for incubate

* fix verify failure
2023-04-27 19:03:25 +04:00
xenohedron
1780972f71
Refactor to clean up base P/T setting and fix text generation (#10264)
* Adjust constructors to simplify

* Refactor to remove duration parameter for CDA (always end of game)

* Fix warnings

* Druid Class not CDA

* Entropic Specter fixup

* Further constructor simplification

* Analogous simplification for setting power only

* Analogous simplification for setting toughness only

* Remove superfluous parameter

* Set fields final
2023-04-24 17:43:18 +04:00