Commit graph

2115 commits

Author SHA1 Message Date
xenohedron
9fbdede64b text cleanup: additional combat phase 2023-11-28 22:20:49 -05:00
xenohedron
05e2cf11e7
refactor: replacement effects don't use apply method now (#11484) 2023-11-28 11:17:28 +04:00
xenohedron
02eafaf062 simplify text gen for DamageCantBePreventedEffect 2023-11-27 23:47:10 -05:00
Oleg Agafonov
3a92d67d10 tests: added verify test to check miss of controlled filter in equip abilities (related to #11473); 2023-11-27 23:08:23 +04:00
xenohedron
867a8f54b0 fix #11456 (Become Brutes)
CreateRoleAttachedTargetEffect changed to use all targets, not just first
2023-11-25 02:20:11 -05:00
xenohedron
dd459c484f followup text fixes 2023-11-23 01:54:51 -05:00
xenohedron
a7de73723f BecomesCreatureAllEffect text adjust / simplify 2023-11-23 01:54:51 -05:00
xenohedron
1c6c68e1a4 some text fixes 2023-11-23 01:54:51 -05:00
xenohedron
4977fea307
Merge pull request #11417 from ssk97/TagTracking3_KeywordAbilities
Costs Tag Tracking part 3: Most keyword abilities
2023-11-20 21:28:40 -05:00
xenohedron
1816c8ad73 many the text fixes 2023-11-19 21:37:37 -05:00
xenohedron
f4920b60ed text fixes 2023-11-19 00:09:35 -05:00
xenohedron
f46ac4c5ee fix LoseLifeControllerAttachedEffect
resolves #11421
2023-11-19 00:03:09 -05:00
xenohedron
73daf67cc2 remove unused class 2023-11-19 00:03:09 -05:00
Steven Knipe
660288dfd7 Use generics to ensure the correct class types stored inside the costs tags. 2023-11-17 02:37:06 -08:00
ssk97
bea33c7493
Costs Tag Tracking part 2: Tag system and X values, reworked deep copy code (#11406)
* Implement Costs Tag Map system

* Use Costs Tag Map system to store X value for spells, abilities, and resolving permanents

* Store Bestow without target's tags
Change functions for getting tags and storing the tags of a new permanent

* Create and use deep copy function in CardUtil, add Copyable<T> to many classes

* Fix Hall Of the Bandit Lord infinite loop

* Add additional comments

* Don't store null/empty costs tags maps (saves memory)

* Fix two more Watchers with Ability variable

* Add check for exact collection types during deep copy

* Use generics instead of pure type erasure during deep copy

* convert more code to using deep copy helper, everything use Object copier, add EnumMap

* fix documentation

* Don't need the separate null checks anymore (handled in deepCopyObject)

* Minor cleanup
2023-11-16 23:12:32 +04:00
Susucre
b538d4714c [LCI] Implement Sunken Citadel 2023-11-16 11:51:10 +01:00
ssk97
ec4c79e0e0
Fix copying subabilities to no longer duplicate them (#11399)
* Fix Subability copy bug (fix #10526 )

* Cards which copy abilities of other cards should not copy subabilities.

* Enable previously-failing tests

* Find more addAbility that should be done without subabilities

* Add documentation to addAbility function

* Add warning about not using basic addAbility when copying from a source

* Invert withSubabilities to fromExistingObject
2023-11-12 19:57:39 -05:00
xenohedron
ded7eeeaa8 align DISCOVERED event to naming convention
no need for custom event class
2023-11-09 20:44:52 -05:00
xenohedron
9eeaf9cae1 fix text
fix Jade Seedstones craft cost
2023-11-09 00:39:40 -05:00
xenohedron
4a250c48a5 implement [LCI] Kutzil, Malamet Exemplar 2023-11-08 23:09:39 -05:00
Jeff Wadsworth
3b90880fa3 Fixed #11381
The rest of these types of cards need to be fixed as well.
2023-11-07 17:09:56 -06:00
Susucre
2f3161e83d [LCI] Implement Abuelo's Awakening 2023-11-05 17:11:21 +01:00
xenohedron
e27ceec5e8 fix reminder text 2023-11-04 18:41:56 -04:00
xenohedron
35ec41d8e0 more text adjustments 2023-11-04 18:41:56 -04:00
Susucre
357ebec523 fix Fungal Fortitude text 2023-11-04 18:41:30 +01:00
Susucre
674661b605 [LCI] Implement Fungal Fortitude 2023-11-04 17:10:35 +01:00
ssk97
52bb2c5d71
[WHO] added Ace's Baseball Bat, consolidate related code (#11387)
* TalruumPiper use MustBeBlockedByAllSourceEffect

* Both of Bident Of Thassa's abilities can be made generic

* Goblin Diplomats use generic class (with custom text)

* create MustBeBlockedByAtLeastOneAttachedEffect common effect

* Add Ace's Baseball Bat
2023-11-04 14:19:21 +04:00
xenohedron
987d49520a implement [LCI] Sage of Days 2023-11-04 00:14:53 -04:00
xenohedron
d3cc3aa96d implement [LCI] Zoetic Glyph 2023-11-01 23:28:07 -04:00
xenohedron
33781ac614 text fixes 2023-11-01 23:28:07 -04:00
Evan Kranzler
595955a3cc
Add finality counters (#11379)
* [LCI] Implement Soulcoil Viper

* add finality counter test

* fix bug, add extra test

* [LCI] Implement Uchbenbak, the Great Mistake
2023-11-01 22:08:57 -04:00
Alexander Novotny
87921494b8
Improve trigger auto ordering and aura attachment (Lynde QOL fixes) (#10648)
* Lynde trigger references objects

* Changed triggered ability auto-order to care about targets

* Copy card test

* When a copy effect comes in as a copy of an aura,
it checks if it's already attached before asking player to attach

* add comments and null check per review

---------

Co-authored-by: xenohedron <xenohedron@users.noreply.github.com>
2023-11-01 21:40:04 -04:00
ssk97
38dd582adc
fix Learn effect to not get lesson cards from exile (#11374) 2023-11-01 21:39:43 -04:00
Susucre
bc335b949b [LCI] Implement Curator of Sun's Creation 2023-11-01 20:12:49 +01:00
xenohedron
ebf71941a9
cleanup EntersBattlefieldAllTriggeredAbility and subclasses (#11372)
* comment out rule override to use generated text instead

* new ETB Opponent trigger class

* text improvements

* update ETB cast trigger

* remove controlledtext parameter

* more text improvements

* more fixes

* lots of other fixes

* most of the remaining fixes

* fix halana text

* fix smoke shroud text

* improve text gen

* remove rule param from constructors

* minor adjustments

* whenever a player puts

* final fixes

* standardize when/whenever phrase generation
2023-10-31 21:00:45 -04:00
theelk801
1388972d4c [LCI] Implement Nicanzil, Current Conductor 2023-10-30 21:16:44 -04:00
xenohedron
92e089663f fix more text 2023-10-30 19:24:10 -04:00
xenohedron
e802db32d3 fix Discover text 2023-10-30 01:26:55 -04:00
xenohedron
69fbfe8fd6 fix some text 2023-10-29 02:21:54 -04:00
xenohedron
9b7fe2fcf6 new MoveCountersFromTargetToSourceEffect 2023-10-28 19:07:03 -04:00
xenohedron
1d93c310c3 implement [LCI] Explorer's Cache
create common MoveCountersFromSourceToTargetEffect

amend
2023-10-28 19:07:03 -04:00
xenohedron
ad66b91642 fix #11353 (InvestigateTargetEffect)
add some test cases
2023-10-28 16:54:27 -04:00
xenohedron
9733786e5d add GameEvent.EventType.EXPLORE
add tests for explore multiple times
2023-10-28 14:43:25 -04:00
Susucre
cd9f9c9f05
[LCI] Implement the Mother Lode (#11351)
refactor DiscoverEffect to call a static doDiscover that returns the discovered card.
2023-10-28 16:49:57 +02:00
Susucre
c6441b31a5 [LCI] Implement Get Lost 2023-10-27 17:38:14 +02:00
Susucre
92a4f41b2b fire EXPLORED event after the exploring is done 2023-10-27 14:04:16 +02:00
Susucre
b6cedee854 [LCI] Implement Ojer Taq, Deepest Foundation 2023-10-26 19:49:29 +02:00
Susucre
1a205ff193 [LCI] Implement Jadelight Spelunker 2023-10-26 12:22:18 +02:00
xenohedron
18c6596cc0
Improvements to player selection of TargetAmount (#11341) 2023-10-26 02:12:15 -04:00
xenohedron
a2e64280e5 refactor explore effect 2023-10-26 01:31:17 -04:00