xenohedron
02eafaf062
simplify text gen for DamageCantBePreventedEffect
2023-11-27 23:47:10 -05:00
ssk97
2abe61643c
[LTC] Implementations part 2/4 ( #11470 )
...
* Aragorn, Hornburg Hero
* Minas Morgul, Dark Fortress
* Rohirrim Chargers
2023-11-27 23:41:20 -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
Oleg Agafonov
99cbddb8b8
Merge pull request #11431 from Susucre/lci-mana-tracking
...
[LCI] Implement Thousand Moons Smithy // Barracks of the Thousand and Brass's Tunnel-Grinder // Tecutlan, the Searing Rift
2023-11-25 17:13:54 +03:00
xenohedron
81f97c3b0e
fix more text
2023-11-25 02:59:06 -05: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
47197f7c39
implement [LCC] Xavier Sal, Infested Captain
...
adjustments/docs in RemoveCounterCost
2023-11-25 01:49:19 -05:00
xenohedron
dd459c484f
followup text fixes
2023-11-23 01:54:51 -05:00
xenohedron
109547a1ad
lots of 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
ssk97
e43e918c67
Conditional mana - fixed that some mana cant be used for paying “counter unless” cost and other things ( #11447 )
...
* Add tests for conditional mana usage with soft counterspells
* Fix "to cast" conditions on common ManaCondition classes
* Add fix to all remaining ManaCondition classes
* SimpleActivatedAbilityConditionalMana is tested to pay for a soft counterspell activated ability
* Remove now-unused imports
2023-11-23 01:37:45 +04:00
ssk97
2cc9957753
Costs Tag Tracking part 4: Convoke ( #11446 )
...
* Switch Convoke to using costs tag system
* Add Convoke copy/clone tests
* update author name on sufficiently changed files
* Remove now-unused CONVOKED event
2023-11-23 01:31:56 +04: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
Daniel Cowman
8a007c9953
Fix conditional "must be blocked if able" ( #11436 )
...
* Add missing overrides to ConditionalRequirementEffect.java
2023-11-19 21:49:19 -05:00
xenohedron
1816c8ad73
many the text fixes
2023-11-19 21:37:37 -05:00
xenohedron
8f89253b58
refactor triggers checking batch damage for one player ( #11435 )
2023-11-19 16:51:54 -05:00
Oleg Agafonov
6e99a3653a
Initiative abilities - added card hint with initiative info to all related cards ( closes #11424 );
...
tests: added verify test for miss initiative card hint;
gui: fixed wrong max amount of card hint windows;
2023-11-19 23:00:42 +04:00
Oleg Agafonov
225da087f9
Monarch abilities - added card hint with monarch info to all related cards ( #11424 );
2023-11-19 22:38:25 +04:00
Susucre
f45c9e8ee9
[LCI] Implement Thousand Moons Smithy // Barracks of the Thousand
2023-11-19 17:54:57 +01: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
Oleg Agafonov
4f081c0918
Merge fix
2023-11-18 15:36:55 +04:00
Steven Knipe
f44b36fad2
Improve documentation
2023-11-17 02:53:43 -08: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
ca80849249
game: fixed "if mana was spent to cast" abilities after leaves ( #11419 )
...
* ManaWasSpentCondition should use MageObjectReferences
2023-11-17 12:02:47 +04:00
Steven Knipe
177f72c8d8
Altered ego X value should be separate
2023-11-16 18:21:02 -08:00
Steven Knipe
77dd1711b5
Convert Kicker to costs tag system
2023-11-16 15:07:58 -08:00
Steven Knipe
1e76b59f4e
Convert Bargain/Entwine/Squad to costs tag system
2023-11-16 14:39:55 -08:00
Steven Knipe
ad873863fa
Convert SpellAbility keywords to costs tag system
2023-11-16 14:39:13 -08:00
Steven Knipe
f3d5faf199
Convert AlternativeSourceCostsImpl keywords to using the costs tag system
2023-11-16 14:37:38 -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
Susucre
0241a788a0
add a couple null check to Modes' value Key creation
...
normal game usage should have no issue, but the Pillar Custom mode
initializing a Delayed Trigger at game init can not have a real source set up.
Might revisit 'game init' trigger in a better way in the future.
For now this fix is enough to avoid a NPE using the Pillar game mode.
2023-11-16 11:08:11 +01:00
Evan Kranzler
791496d285
refactor vanishing ( #11408 )
2023-11-14 08:26:08 -05: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
933d694b08
implement [LCI] Market Gnome
2023-11-09 21:42:57 -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
5c83bbe970
refactor Quartzwood Crasher; Goro-Goro and Satoru
...
to use DealCombatDamageControlledTriggeredAbility
2023-11-08 23:28:12 -05:00
xenohedron
4a250c48a5
implement [LCI] Kutzil, Malamet Exemplar
2023-11-08 23:09:39 -05:00
xenohedron
87a313e89c
reminder text adjustment: bloodthirst
2023-11-08 22:27:34 -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
Jeff Wadsworth
b1e7e589ee
Refactored Ent's Fury
2023-11-07 10:20:26 -06:00
Oleg Agafonov
ddc1ec8ef8
performance: improved CPU/memory usage with copy of cost's targets (related to #11285 ), added runtime check for wrong targets usage
2023-11-07 02:47:48 +04:00
Oleg Agafonov
d6c858ecaf
performance: added day/night performance test for transform ability (disabled by default, see DayNightTest, related to #11285 ), added day/night rules ref
2023-11-07 01:25:15 +04:00
Oleg Agafonov
70c79fd6a6
performance: improved CPU usage in games with big amount of permanents (related to #11285 )
2023-11-07 01:14:07 +04:00
Susucre
2f3161e83d
[LCI] Implement Abuelo's Awakening
2023-11-05 17:11:21 +01:00
Susucre
ee60325c07
[LCI] Implement Preacher of the Schism
2023-11-05 15:38:02 +01:00