Commit graph

12294 commits

Author SHA1 Message Date
theelk801
f56dbadf18 [DSK] Implement Fear of Infinity 2024-09-05 10:35:31 -04:00
theelk801
0127d52f24 [DSK] Implement Cursed Windbreaker 2024-09-05 10:24:09 -04:00
theelk801
94566cee69 [DSK] Implement Overlord of the Mistmoors 2024-09-04 16:18:04 -04:00
theelk801
dc4bc6ccb2 [DSK] Implement Overlord of the Hauntwoods 2024-09-04 16:15:03 -04:00
theelk801
a090349100 [DSK] Implement Overlord of the Floodpits 2024-09-04 16:09:51 -04:00
Grath
acf4599ce6
[BLC] Implement Osteomancer Adept (#12797) 2024-09-04 00:27:45 -04:00
Grath
8421c993e9
[BLC] Implement Gourmand's Talent (#12796) 2024-09-03 23:22:31 -04:00
theelk801
abccb35b18 [DSK] Implement Twitching Doll 2024-09-03 17:54:56 -04:00
theelk801
9c0f18c850 [DSK] Implement Unwilling Vessel 2024-09-03 17:49:26 -04:00
theelk801
5f4ce7a397 [DSK] Implement The Jolly Balloon Man 2024-09-03 12:06:11 -04:00
xenohedron
e9c6e448c4 revert change that broke tests 2024-09-02 21:02:26 -04:00
xenohedron
a9250ff28a followup text fixes 2024-09-02 20:17:36 -04:00
xenohedron
48cb43351b fix some text gen issues in common classes 2024-09-02 19:52:18 -04:00
xenohedron
d0f535a159 fix text generation for creating multiple kinds of tokens
(from #12704)
2024-09-02 19:24:27 -04:00
theelk801
343e0d5179 [DSK] Implement Abandoned Campground 2024-09-02 13:03:37 -04:00
theelk801
7f58582f8d [DSK] Implement Glimmer Seeker 2024-09-02 12:06:04 -04:00
theelk801
fd8b0d1f99 [DSK] Implement Patched Plaything 2024-09-02 11:26:25 -04:00
theelk801
ad7b65d317 [DSK] Implement Enduring Innocence 2024-09-01 14:38:48 -04:00
grimreap124
9f1031f286
Implement [M3C] Blaster Hulk/Create EnergySpentOrLostThisTurnCount and update Izzet Generatorium (#12426)
* Implement-M3C-Blaster-Hulk

* Update BlasterHulk.java

* Update BlasterHulk to fix number of targets

---------

Co-authored-by: Grath <1895280+Grath@users.noreply.github.com>
2024-09-01 13:40:54 -04:00
theelk801
b6c5e5e507 [DSK] Implement Disturbing Mirth 2024-09-01 10:39:51 -04:00
theelk801
ed764b5066 [DSK] Implement Scrabbling Skullcrab 2024-09-01 09:45:41 -04:00
xenohedron
54874a59b0
refactor: rename "remixed" to "reshuffled" (#12755) 2024-09-01 01:08:26 -04:00
theelk801
64774b457f [DSK] Implement Zimone, All-Questioning 2024-08-31 21:48:40 -04:00
theelk801
119c432344 remove unnecessary args from RollDiceEffect 2024-08-31 19:00:54 -04:00
Grath
6a19ec48df
Add tests for Camellia, refactor SacrificedPermanentBatchEvent. (#12769)
Added SacrificedPermanentEvent, to be used in SacrificedPermanentBatchEvent to prevent adding incorrect GameEvents.
2024-08-31 16:42:24 -04:00
xenohedron
40bbf5f127 fix Feather token (Everquill Phoenix) missing target 2024-08-31 07:20:48 -04:00
Grath
3c419a857f
[BLB] Implement Camellia, the Seedmiser. (#12751)
* [BLB] Implement Camellia, the Seedmiser.

Also implemented SacrificedPermanentBatchEvent, SacrificeOneOrMorePermanentsTriggeredAbility, and refactored existing Whenever you sacrifice one or more [filter] abilities to use the new SacrificeOneOrMorePermanentsTriggeredAbility (even though as they all only trigger once per turn and technically function correctly with the old SacrificePermanentTriggeredAbility.

* Fix accidental newline.
2024-08-29 10:35:13 -04:00
Momo2907
d5cf8c27b2
Implement [BLB] Rottenmouth Viper (#12718) 2024-08-25 23:13:28 -04:00
Grath
543f9f074e
Refactor CreateTokenEffect to allow multiple tokens at once. (#12704)
* Refactor CreateTokenEffect to allow multiple tokens at once.

Partial solution to #10811 - Token copy effects still need to be redone so that mass token copy effects (Ocelot Pride, Mirror Match, other similar effects) can be created in a single batch.
2024-08-25 10:34:42 -04:00
xenohedron
85d612d10f
refactor: remove unused custom event type code (#12729)
* also make ApprovingObject Serializable
2024-08-24 20:39:36 -04:00
jimga150
060551ab48
[40K] Implement The Ruinous Powers; fix Fires of Mount Doom (#12722)
* Add starting point: have exile top w/ any color cast, right duration

* Use random opponent

* Add delayed triggered ability

* rename MageIdentifier to AlternateCast

* Fix FiresOfMountDoomDelayedTriggeredAbility

* Add test for Fires of Mount Doom

* Add test for The Ruinous Powers

* Null checks
2024-08-24 18:37:00 -04:00
xenohedron
9fe5d6bd1b
fix River Song (#12727) 2024-08-24 18:36:42 -04:00
PurpleCrowbar
8d249aa691
Improve attachment to permanent logic; implement [PIP] Codsworth, Handy Helper (#12098)
* [PIP] Implement Codsworth, Handy Helper

* Fix Codsworth and Halvar

* Write tests for attachments

* Fix auras going to graveyard when attaching to illegal targets

* Fix Captured by the Consulate interaction

* Fix failing tests, add additional test

* Add source name to log message

* Implement requested changes

* Revert removed null check

* Remove filter check, clean up code

* Add additional test

* Fix failing roles test

* Account for all current attachment edge cases

* Implement rule 303.4g

* Apply requested changes
2024-08-24 01:03:33 -04:00
xenohedron
9fcbfdeac6
Rework drawing cards and associated replacement effects; implement [WHO] River Song (#12700)
* remove unused scoring system code

* add test for Alms Collector replacement effect

* flatten draw cards into single method in PlayerImpl

* remove outdated MageAction framework

* clarify game event for drawing two or more cards

* clarify methods for getting cards from library

* implement [WHO] River Song

* fix error

* adjust library methods

* add lots of test cases for draw replacement effects

* fix #12616

* track cards drawn this way through multi draw replacement as well

* add test for River Song

* remove redundant comment
2024-08-24 01:02:55 -04:00
xenohedron
34ae226130
refactor: simpler method for mana that lasts until end of turn (#12667) 2024-08-24 01:02:25 -04:00
Steven Knipe
2fbe5bd68c Fix missing null check in AbilitySourceAttachedPredicate 2024-08-22 14:29:01 -07:00
ssk97
00770646f8
Create generic "Gains your choice of ability" effect, add [ACR] Assassin Initiate (#12619)
Create generic GainsChoiceOfAbilitiesEffect, covers both Target and Source cases.

Adds Assassin Initiate
2024-08-22 13:34:40 -07:00
ssk97
b70638acc9
Unbound Flourishing's X doubling should be a triggered ability (and related refactors) (#12597)
Complete rework of Unbound Flourishing, removing the multiplier code for casting X spells.
Adds ActivateAbilityTriggeredAbility, NotManaAbilityPredicate, AbilitySourceAttachedPredicate
CopyStackObjectEffect now uses a MOR.
OrTriggeredAbility now works with target pointer setting abilities.
2024-08-22 13:33:39 -07:00
Sidorovich77
9d83381326
[UNF] Implement Atomwheel Acrobats & Six-Sided Die (#12651)
* Implemented cards: Atomwheel Acrobats, Six-Sided Die.

* Implemented cards: Atomwheel Acrobats, Six-Sided Die.

* Implemented cards: Atomwheel Acrobats, Six-Sided Die.

* Changes from review.

* Changes from review.

* Changes from review.
2024-08-22 14:25:37 -04:00
xenohedron
4c069754a6 fix #12657 with common class, add test 2024-08-16 23:12:15 -04:00
Oleg Agafonov
de5de0e103 version bump 2024-08-16 19:35:42 +04:00
jimga150
d75068a426
fixed text generation for cards with pawprints symbols (closes #12662, #12664) 2024-08-15 09:28:15 +04:00
Oleg Agafonov
e7585e8d95 refactor: fixed miss copy effect (related to #12605) 2024-08-15 09:00:27 +04:00
xenohedron
7969ffb548 refactor: cleanup unneeded method (closes #12547) 2024-08-14 22:46:52 -04:00
jimga150
e976920e2d
[BLB] Implement Season of Gathering and Pawprints mechanic (#12617)
* Add skeleton

* Implement Pawprints modal functionality

* Implement Seasons of Gathering

* remove unused imports

* Add Pawprints test

* use withPawPRintValue() instead of setter

* use 0 for non-pawprint mode and modes classes and move mode validation to addMode

* Use GreatestPowerAmongControlledCreaturesValue

* Fix pawprints check

* calcualte sleected pawprint count based on selected modes

* move max pawprints check to getAvailableModes

* fix max pawprints checks
2024-08-14 21:13:09 -04:00
jimga150
d5c76489ac
Implement Splash Portal (#12605)
* Implement Splash Portal

* Add test

* Add an afterEffect to ExileThenReturnTargetEffect for use in Splash Portal

* Modify Essence Flux to use new ExileThenReturnTargetEffect and write test

* use withAfterEffect for ExileThenReturnTargetEffect

* use ConditionalOneShotEffect

* Restrict effects to one shot
2024-08-14 21:12:55 -04:00
karapuzz14
3321cd03bc
[YDMU] Implement Marwyn's Kindred & Wandering Treefolk (#12625) 2024-08-14 21:11:45 -04:00
Sidorovich77
37bf7a68cd
[WHO] Implement Vrestin, Menoptra Leader (#12643)
Added Alien Insect token.
2024-08-14 21:09:39 -04:00
theelk801
be84dbaa0f [YMID] Implement Toralf's Disciple 2024-08-13 11:45:27 -04:00
theelk801
f5e0d94cac [MB2] add set 2024-08-13 11:16:28 -04:00