Commit graph

1694 commits

Author SHA1 Message Date
xenohedron
127b7be9b0
more unrelated text fixes (#10761)
* some text fixes [LTR] [LTC] [CMM]

* another batch of text fixes

* followup fixes

* unrelated cleanup

* fix corresponding ability text in test
2023-08-05 20:53:43 -04:00
Susucre
fa77261e3a
Add more missing copy constructors. (#10758) 2023-08-05 20:53:32 -04:00
Susucre
9979208f05
[LTC] Implement Champions of Minas Tirith (#10726)
repurposed (and renamed) CantAttackYouEffect.java, that was actually not used.
2023-08-04 21:20:55 -04:00
Susucre
894d557952
Add additional copy test to check copy of effects/abilities (#10754)
* add further copy test

* add more missing copy constructors/methods
2023-08-04 20:10:23 -04:00
Susucre
f75b1c9f0a
Code cleanup: protect all copy constructors (#10750)
* apply regex to change public copy constructors to protected
* cleanup code using now protected constructors
* fix manaBuilder weird casting of Mana into ConditionalMana
2023-08-04 19:34:58 -04:00
xenohedron
63706942db simplify DoIfClashWonEffect 2023-08-03 22:12:46 -04:00
Susucre
4d3b944b65
Fix Clash effect causing NullPointerExceptions (#10742) 2023-08-03 22:11:59 -04:00
Susucre
04845072ea
[LTC] Implement Field-Tested Frying Pan (#10721) 2023-08-01 09:51:19 -04:00
Susucre
241226cd83
[LTC] Implement Summons of Saruman (#10720)
* [LTC] Implement Summons of Saruman

* fix constructor for Assault on Osgiliath

* fix verify failure

* refactoring a couple more Amass X
2023-08-01 09:51:06 -04:00
Susucre
40e508ac19
Refactor Devour ability; [LTC] Implement Feasting Hobbit (#10708)
* [LTC] Implement Feasting Hobbit

Refactor DevourEffect and its text generation, to be more permissive in the future.

* change DevourAbility to have the constructor parameters of DevourEffect

* only pluralize when there is more than 1 devoured permanent.

* added more unit tests than there are cards with devour

* public -> private filter of Caprichrome.
2023-08-01 09:49:32 -04:00
Susucre
e724166569
[LTC] Implement Cavern-Hoard Dragon (#10724) 2023-07-31 23:53:06 -04:00
Susucre
d61e454e77
[LTC] Implement Of Herbs and Stewed Rabbit (#10718) 2023-07-31 23:52:28 -04:00
Susucre
378fd2743e
[LTC] Implement Taunt from the Rampart (#10717) 2023-07-31 23:52:15 -04:00
Susucre
67407a8780
[LTC] Implement Motivated Pony (#10716) 2023-07-31 23:51:59 -04:00
Oleg Agafonov
8d938926b6 refactor: improved usage of one time turn modifications (skip step, extra turn, etc) 2023-07-31 20:16:28 +04:00
Susucre
fbc0cd61dd
[LTC] Implement Banquet Guests (#10706)
* make a StaticFilter for "a food"

* [LTC] Implement Banquet Guests

Made a Static Filters for controlled food, with the next eldraine set we'll certaintly see more of that.

* future proof static text for mulitplier > 2
2023-07-30 19:26:26 -04:00
Susucre
53b270fc36
[CMM] Implement Rukarumel, Biologist (#10703) 2023-07-30 19:26:11 -04:00
Susucre
f476c6864b
[CMM] Implement Onakke Oathkeeper (#10693)
* [CMM] Implement Onakke Oathkeeper

* take authorship of new file

* cleanup and extend CantAttackYouUnlessPayAllEffect.

* further cleanup

* cleanup

* add Duration to CantAttackYouUnlessPayAllEffect constructors, cleanup two more text generation.

* fix duration text
2023-07-29 13:46:00 -04:00
Susucre
16094a9311
[CMM] Implement Ghoulish Impetus (#10687) 2023-07-28 21:27:55 -04:00
Susucre
50989970cb
[CMM] Implement Cacophony Unleashed (#10689) 2023-07-28 19:33:35 -04:00
xenohedron
a096c0a7c3 adjust game log messages for damage can't be prevented 2023-07-26 09:53:54 -04:00
xenohedron
3886075dac
Update common effect class text generation (A-C) (#10651) 2023-07-21 22:55:47 -04:00
theelk801
5f01f973cb [CMM] Implement Ugin's Mastery 2023-07-21 20:19:47 -04:00
xenohedron
ad86a52ba4 update some text generation logic 2023-07-19 20:38:48 -04:00
xenohedron
f944408252 fix text: BecomesColorTargetEffect 2023-07-19 20:26:20 -04:00
PurpleCrowbar
6a244c09a7
[LTC] Implement Shelob, Dread Weaver (#10645) 2023-07-18 05:46:54 +01:00
Susucre
0c7965a725
Fix Pyrrhic Revival not adding -1/-1 counters on returned creatures. (#10626)
* Add (failing) unit test on Pyrrhic Revival

* fix PyrrhicRevival

reworked ReturnFromGraveyardToBattlefieldWithCounterTargetEffect to support having multiple cards in its targetPointer.

added test for Persist (the card from mh2).

* refactor & cleanup

* add myself as author, the effect was remade.
2023-07-17 20:02:49 -04:00
xenohedron
1f9de03bf3
Lots of text fixes (#10636) 2023-07-16 14:55:59 -04:00
xenohedron
906e30a81b GainAbilityAttachedEffect no longer includes reminder text on the attachment 2023-07-16 00:46:23 -04:00
xenohedron
481384a3c8
Text fixes [M10] [M11] [M12] [M13] [M14] [M15] [ORI] (#10630)
* Text fixes M10-ORI core sets, part 1

* Text fixes M10-ORI core sets, part 2

* Text fixes M10-ORI core sets, part 3

* another text fix
2023-07-16 00:35:18 -04:00
xenohedron
ee29c38413
Clash adjustments (#10616)
* adjust clash effect

* Make clash not a singleton

* Add unit test for Clash effect

* fix test (skip init shuffling)

* Fix CLASHED event flag logic and add to unit test

* Additional test and comments

* comments in GameEvent

* param name typo
2023-07-14 23:15:01 -04:00
xenohedron
0d4c73b385 [LRW] [MOR] [SHM] [EVE] text fixes 2023-07-14 22:40:56 -04:00
xenohedron
ef739688fb remove unused duplicated effect class 2023-07-14 20:28:33 -04:00
xenohedron
176a61190b Followup text fixes 2023-07-14 01:59:27 -04:00
xenohedron
185fae28a4 Text fixes [10E] 2023-07-14 01:40:12 -04:00
xenohedron
eeffafcc62 Generalize UntapEnchantedEffect to UntapAttachedEffect 2023-07-13 00:28:03 -04:00
xenohedron
6c9079012c
Cleanup: source deals damage to {this}; mill cards (#10603)
* New common class for "Whenever a source deals damage to {this}, " which resolves #9340 
* Merge `PutLibraryIntoGraveTargetEffect` with functionally identical `MillCardsTargetEffect`
* Text fix on `RevealDragonFromHandCost` noticed in #10593
* Text fix following up on #10594
2023-07-09 22:05:28 -04:00
xenohedron
0fa971514a
code style: eliminate unnecessary static imports (#10585)
* SacrificeTargetCost(StaticFilters)

* remove import static mage.constants.Outcome

* remove import static mage.constants.Duration

* remove other import static

* a few more sacrifice filters

* simpler constructors

* remove import static mage.filter

* remove a few more import static
2023-07-08 13:08:28 -04:00
ssk97
e1edec542c
Lazotep Convert fix (#10578)
* Fix Lazotep Convert card (add color, need to actually apply the applier)

* Don't copy Transformed status, add test
2023-07-07 01:26:27 -04:00
xenohedron
063429b70a
New StaticFilters.FILTER_ANOTHER_CREATURE_YOU_CONTROL (#10577) 2023-07-07 01:26:11 -04:00
xenohedron
e50f8b05c1
[LTR] [LTC] Text fixes (#10569) 2023-07-06 00:24:12 -04:00
xenohedron
1ccaf06366
Refactor flicker effects to single common class (#10564)
* New common class for flicker target effects

* Update cards to ExileThenReturnTargetEffect

* process game state before returning exiled card
2023-07-05 19:23:08 -04:00
Susucre
008662be5e
[LTR] Implement Shelob, Child of Ungoliant (#10558)
* [LTR] Implement Shelob, Child of Ungoliant

This is almost working.

I could not figure out why, but tokens made with the trigger still have subtypes, even though it has only artifact as its type.

* fix subtype of the token copy not being cleaned.

fixed Myrkul, Lord of Bones that had the same issue.
removed game argument from CreateTokenCopyTargetEffect's PermanentModifier. It was only used by Myrkul, and with no effect.
2023-07-05 19:21:52 -04:00
xenohedron
71a6ee232b minor cleanup 2023-07-05 00:14:36 -04:00
xenohedron
4d6644d095
Cleanup: ExileUntilSourceLeavesEffect (#10527)
* Refactor OnLeaveReturnExiledAbility
to accommodate hand zone as well as battlefield
* Cleanup Brain Maggot and Kitesail Freebooter
* Refactor to include delayed trigger with main effect
* minor cleanup
* merge fix
* further adjustments
* Cleanup Valki, God of Lies
* fix test choices
2023-07-04 20:38:59 -04:00
xenohedron
a287582026 fix Vanish Into Eternity 2023-07-04 17:52:42 -04:00
Susucre
652358a481
Fix #10561 Misery's Shadow (and 3 other cards) replacement effects (#10562)
Did not test the final code for Stone of Erech, when a filter was added to the ReplacementEffect :(

Added an unit test, just to be safer this time around.
2023-07-04 11:47:22 -04:00
Alexander Novotny
f5b4c7b251
Fix [LTC] Aragorn, King of Gondor (#10560) 2023-07-03 23:42:03 -04:00
Alexander Novotny
fae63d9d4b
Add additional ability icons (#10549)
* Slightly revamped basic card icons

All icon classes which were just static text have been removed, and instead replaced with a static instance.

A new icon for reach has been added

Some icons have been reused for new abilities (hexproof for shroud and ward, infect for toxic)

When a card would have two icons of the same type, the icons are instead combines into one with a combined hover tooltip.

* Fixed missing capitalization on ward, hexproof
2023-07-04 01:22:07 +04:00
Alex Vasile
6b5d4abb69
Add documentation to Cards and CardsImpl (#9019)
* Added minor documentation and TODO questions

* Fixed typo

* Address one set of comments

* merge fix

* remove commented code

---------

Co-authored-by: xenohedron <xenohedron@users.noreply.github.com>
2023-07-02 18:20:28 -04:00