Susucre
4ebfd79005
refactor DefendingPlayerControlsCondition ( #10749 )
2023-08-04 20:10:08 -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
Susucre
b04b13d530
Add Verify test to detect that copy of a Card throws an Exception ( #10752 )
...
* Add test to detect a copy loop on all the Card in the CardRepository
* reword messages
* move copy test in verify checks
* catch any kind of error
2023-08-04 18:37:45 -04:00
Susucre
5c58e28f9b
Fix King of the Oathbreaker ( #10747 )
2023-08-04 18:37:11 -04:00
Susucre
9889baa0bc
Fix game freeze caused by TotalPermanentsManaValue hint copy ( #10751 )
2023-08-04 18:09:43 -04:00
Susucre
b9a2278d4f
fix VanishingUpkeepAbility missing a copy for a field ( #10755 )
2023-08-04 18:09:05 -04:00
PurpleCrowbar
7c4f3f8c8d
Remove commented out line of code
2023-08-04 22:07:06 +01:00
PurpleCrowbar
f7af14ffe9
Add hints to some cards
2023-08-04 22:00:20 +01:00
Susucre
0c1918e3f5
Fix Keeper of the Mind ( #10744 )
...
and add tests
2023-08-03 22:34:11 -04:00
Susucre
f366f3097e
Fix Blaze of Glory ( #10734 )
...
* Rename DefendingPlayerControlsPredicate to explicitly indicate that the source must be attacking.
I did check all the cards, they all use the predicate inside an attack trigger, or under the condition that the source is attacking.
* Fix Blaze of Glory, rework False Orders with it.
2023-08-03 22:33:52 -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
mgrochowski
005f32cfff
update Premodern ban list ( #10738 )
...
* On July 15th Land Tax got banned, see more details:
https://premodernmagic.com/blog/ban-list-update-2023/
* Update Ban List (added "playing for ante" cards)
2023-08-03 01:02:10 -04:00
xenohedron
ffe922cdb1
fix verify
2023-08-03 00:52:53 -04:00
ssk97
b144cb6f03
Minor Backup fixes, add tests ( #10732 )
...
* Backup is not optional and its effect should be BoostCreature, not Detriment
* Add tests for Backup ability
* Add Mirror-Shield Hoplite source test
* Use Strict mode for the hoplite source test
2023-08-03 00:26:33 -04:00
Susucre
23781ecb37
[LTC] Implement Elrond of the White Council ( #10731 )
2023-08-03 00:26:19 -04:00
Susucre
3cb22932a0
[LTC] Implement Grima, Saruman's Footman ( #10729 )
2023-08-03 00:26:07 -04:00
Susucre
5a6ee98b41
[LTC] Implement The Black Gate ( #10725 )
2023-08-03 00:25:54 -04:00
xenohedron
ec3bb197fb
various text fixes
2023-08-02 22:54:35 -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
1c5829f16b
[LTC] Implement Rapacious Guest ( #10719 )
2023-08-01 09:50:45 -04:00
Susucre
1ad176f681
[LTC] Implement Lidless Gaze ( #10715 )
2023-08-01 09:50:30 -04:00
Susucre
0938a5cd72
[LTC] Implement Eomer, King of Rohan ( #10713 )
2023-08-01 09:50:16 -04:00
Susucre
409d5b0874
[LTC] Implement Gollum, Obsessed Stalker ( #10712 )
2023-08-01 09:50:01 -04:00
Susucre
db7f453cb0
[CMM] Implement Guff Rewrites History ( #10710 )
2023-08-01 09:49:46 -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
Oleg Agafonov
3d3358cd05
game: turn modification improves:
...
- fixed miss phase changed events and logs in some use cases;
- added source info in turn modification logs;
- added game logs for take and lost control of the spell (example: Word of Command)
- added game logs for skip step;
- added game logs for extra step;
- added game logs for skip phase;
2023-08-01 16:52:53 +04:00
Susucre
e724166569
[LTC] Implement Cavern-Hoard Dragon ( #10724 )
2023-07-31 23:53:06 -04:00
Susucre
810a198058
[LTC] Implement In the Darkness Bind Them ( #10723 )
2023-07-31 23:52:55 -04:00
Susucre
61a6657127
[LTC] Implement Crown of Gondor ( #10722 )
2023-07-31 23:52:43 -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
Susucre
daa201d524
[LTC] Implement Orcish Siegemaster ( #10714 )
2023-07-31 23:51:47 -04:00
Susucre
63d9061f6a
[LTC] Implement Assemble the Entmoot ( #10711 )
...
* [LTC] Implement Assemble the Entmoot
* rename ControllerGotLifeCount -> ControllerGainedLifeCount
2023-07-31 23:50:29 -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
4554fbc408
[LTC] Implement Denethor, Stone Seer ( #10709 )
...
* [LTC] Implement Denethor, Stone Seer
* rename game.damagePlayerOrPlaneswalker.
Reason being that It does actually damage any player or permanent.
2023-07-30 23:06:21 -04:00
Susucre
74caa905c3
[LTC] Implement Rampaging War Mammoth ( #10707 )
2023-07-30 23:06:09 -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
ac609c3714
clean combat watchers on Cleanup step, in case of 'end the turn' effect ( #10705 )
2023-07-30 19:25:56 -04:00
Susucre
a53abeaf40
[CMM] Implement Descendants' Fury ( #10700 )
...
* [CMM] Implement Descendants' Fury
* various cleanup
* reset watcher on cleanup, in case of 'end the turn' during combat damage step
2023-07-30 19:25:43 -04:00
Susucre
263b01e702
[CMM] rework Narci, Fable Singer ( #10699 )
...
* easy fix first
* use targetPointer in Narci effect.
2023-07-29 13:46:40 -04:00
xenohedron
ba9ede4d66
fix some text and StaticFilters ( #10698 )
...
* StaticFilters: "a noncreature spell"
* StaticFilters: "other creatures you control"
* unrelated text fixes
* CMM text fixes
* fix error
* fix apostrophe
* adjustments
2023-07-29 13:46:16 -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
792be8a859
[BOT] Implement Starscream, Power Hungry // Starscream, Seeker Leader ( #10674 )
2023-07-29 13:45:39 -04:00
Susucre
4856c65443
[BOT] Implement Megatron, Tyrant // Megatron, Destructive Force ( #10666 )
...
* [BOT] Implement Megatron, Tyrant // Megatron, Destructive Force
* fix verify test.
* cleanup AbilityCastMode for Disturb & MoreThanMeetsTheEye
* cleanup unecessary checks.
* fix duration of silence static effect
* fix Disturb tests
2023-07-29 13:45:09 -04:00
PurpleCrowbar
32e340032b
Added some Secret Lair drops
2023-07-29 06:21:00 +01:00
xenohedron
9a877f5b33
java 8 compatibility fix
2023-07-28 23:00:11 -04:00