Commit graph

43375 commits

Author SHA1 Message Date
xenohedron
a5dbf30605 Fix #10631 (Forge, Neverwinter Charlatan) 2023-07-16 16:19:31 -04:00
xenohedron
809c02eb8d Reimplement Common Bond 2023-07-16 15:13:31 -04:00
xenohedron
1f9de03bf3
Lots of text fixes (#10636) 2023-07-16 14:55:59 -04:00
Susucre
6b616dbf20
refactor: expose startingHandSize in GameImpl constructor. (#10629)
For now, it is 7 in every game mode.
2023-07-16 18:36:26 +04:00
xenohedron
b607efba4f fix wrong apostrophe 2023-07-16 04:13:06 -04:00
xenohedron
94f2b53711 fix verify 2023-07-16 03:54:32 -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
8372c358b2
refactor: some code linting (#10624)
* remove obsolete check method
* code clean: PermanentImpl
* code clean: PlayerImpl
* protected constructors in CardImpl
2023-07-16 01:50:24 +04:00
Susucre
b960b77774
Refactor name of minimum deck size (was startingHandSize) (#10628)
* Refactor: rename starting hand size, it was actually minimum deck size (40, 60 or 100 most of the time)
2023-07-16 01:45:19 +04:00
xenohedron
a7f78e8190
Clean up triggered ability text generation (#10627)
* move "or battle" to its own class

* move "or planeswalker" to its own class

* remove strange way of setting custom text

* finally remove getTriggerPhrase

* copy constructor visibility

* fix Vraska
2023-07-15 16:49:40 -04:00
xenohedron
e2cff095b3
Rework Infectious Rage (#10625)
* put custom predicate back with Aura Graft

* Rework Infectious Rage and add unit test

* cleanup Aura Graft
2023-07-15 16:49:26 -04:00
Oleg Agafonov
d11269cb56 tests: improved logs on miss target/choice (it shows all permanents list from all players now) 2023-07-15 18:20:35 +04:00
Oleg Agafonov
eaee358a81 tests: added few use cases for AlternativeCostSourceAbility usage 2023-07-15 17:05:39 +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
aaf99a4c1a followup fixes 2023-07-14 22:12:08 -04:00
xenohedron
ae9f920d87 more [LTR] text fixes / corrections 2023-07-14 21:58:33 -04:00
Susucre
07256237af
[LTC] Implement Farmer Cotton (#10621) 2023-07-14 21:32:46 -04:00
Susucre
0f4ffb0af9
[LTR] Implement Sharkey, Tyrant of the Shire (#10620) 2023-07-14 21:32:37 -04:00
Susucre
2c505bbcac
[LTR] Implement King of the Oathbreakers (#10619)
* make a new BecomesTargetTriggeredAbility to filter on target permanents.
2023-07-14 21:32:23 -04:00
Susucre
2188c690c6
[LTR] Implement Eomer, Marshal of Rohan (#10617)
Also, small refactor adding EachTurn to the name of both `setTriggersOnce` and `setDoOnlyOnce`.
2023-07-14 21:32:00 -04:00
Susucre
189dff86ea
[LTR] Implement Bewitching Leechcraft (#10615) 2023-07-14 21:31:34 -04:00
xenohedron
72ebe2b1f1 minor code cleanup triggered abilities 2023-07-14 20:30:09 -04:00
xenohedron
ef739688fb remove unused duplicated effect class 2023-07-14 20:28:33 -04:00
xenohedron
792224d6dc more followup text fixes 2023-07-14 02:12:57 -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
Susucre
0aff0cc8ed
[LTR] Implement Glorfindel, Dauntless Rescuer (#10614) 2023-07-13 20:13:09 -04:00
Susucre
5ded3c0822
[LTR] Implement Fires of Mount Doom (#10601) 2023-07-13 20:12:58 -04:00
xenohedron
fe4a50e860 adjust default 3 swiss rounds even in 10 player pods 2023-07-13 01:03:49 -04:00
xenohedron
eeffafcc62 Generalize UntapEnchantedEffect to UntapAttachedEffect 2023-07-13 00:28:03 -04:00
xenohedron
9c7d53fd2b fix filter on Tromp the Domains 2023-07-12 22:33:02 -04:00
Susucre
9cc0d0fc86
[LTR] Implement Sting, the Glinting Dagger (#10612) 2023-07-12 19:40:43 -04:00
Susucre
6a9340f1aa
Introduce Duration.UntilYourNextUpkeepStep (#10600)
* add new Duration

* refactor cards with new Duration.

* fix both Durations and add unit tests.

* fix text
2023-07-12 19:40:27 -04:00
Susucre
14235b6320
Rework Ring-bearer implementation. Add GUI + gamelogs. (#10596)
* Fix Ring-bearer choosing & add some GUI + logs

* use a ring svg in a separate gold panel

* use a fontawesome svg

* add a couple null checks, group icon with commander

* rework rinbearer logic according to review

* fix typo in game log

* small fixes
2023-07-12 19:40:09 -04:00
Bobby McCann
4065e2e935
[LTR] Implement Bill Ferny, Bree Swindler (#10575) 2023-07-12 19:39:52 -04:00
Bobby McCann
09530f1cdb
[LTR] Implement Glamdring (#10574) 2023-07-12 19:39:31 -04:00
PurpleCrowbar
cbd5651f80 Fix Family's Favor 2023-07-12 03:04:04 +01:00
xenohedron
1e1423a101 add test; closes #9646 2023-07-10 07:17:03 -04:00
xenohedron
3f346d791c fix file location in source tree 2023-07-10 06:32:04 -04:00
xenohedron
26ddf9d0b1 Fix #9841 (Duel for Dominance) 2023-07-10 00:29:33 -04:00
xenohedron
53797ea276 Fix #10254 (Alora, Merry Thief) 2023-07-10 00:06:23 -04:00
xenohedron
820c5ffe17 Fix #10604 (Blot Out) 2023-07-09 23:32:40 -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
Bobby McCann
73104f6705
[LTR] Implement Radagast the Brown; also resolves #9419 (#10568)
* Fix #9419 bug with EntersBattlefieldThisOrAnotherTriggeredAbility
* Add test for Radagast as well as Risen Reef and Caldaia Guardian
* Minor associated cleanup for EntersBattlefieldAllTriggeredAbility
* New PermanentEnteringBattlefieldManaValue
2023-07-09 22:04:45 -04:00
Susucre
39904d0ca3
[LTR] Implement Boromir, Warden of the Tower (#10594)
* [LTR] Implement Boromir, Warden of the Tower

* group trigger from Boromir and Lavinia

* fix trigger text
2023-07-09 16:42:29 -04:00
Susucre
f8b1ada369
Fix RevealTargetFromHandCost when no target in hand (#10593)
* [CSP] Fix the RevealTargetFromHandCost not allowing payment when no valid card to reveal

* cleanup text of cost

* fix martyr of bones text

* fix test using a Martyr of Sands
2023-07-09 16:42:16 -04:00
Susucre
87ed833291
[LTC] Implement Sail into the West (#10588) 2023-07-09 16:42:02 -04:00
xenohedron
d1d6890c2a fix Change the Equation 2023-07-09 16:41:31 -04:00