Commit graph

3821 commits

Author SHA1 Message Date
xenohedron
4e561b6254
text generation improvements (#11203)
* update ETB trigger effect text gen

* set replace for common abilities

* fix remaining

* rename method, cleanup

* more fixes, better logic
2023-09-25 21:51:51 -04:00
xenohedron
1a13dcd091
Merge pull request #11185 from xenohedron/becomestarget
Rework "whenever ... becomes the target of ..., " abilities
2023-09-24 22:09:14 -04:00
xenohedron
1b9bcb92e6 improve targetMap usage, naming, docs per review 2023-09-24 00:22:21 -04:00
Susucre
b624da7aa8
[ICE] Implement Kjeldoran Guard (#11184)
closes #8593
2023-09-23 20:23:47 -04:00
Oleg Agafonov
b80f440e15 game: fixed some NPE errors 2023-09-23 07:41:18 +04:00
xenohedron
cd5ee1c31d text fixes 2023-09-22 23:38:16 -04:00
xenohedron
48d7d07f93 reimplement Fractured Loyalty 2023-09-22 23:38:16 -04:00
xenohedron
8f92a23302 rename class for consistency 2023-09-22 23:38:16 -04:00
xenohedron
d83d27dfa3 update SourceBecomesTargetTriggeredAbility with proper logic and trigger phrase generation 2023-09-22 23:38:15 -04:00
xenohedron
4ab36880fe new common BecomesTargetSourceFirstTimeTriggeredAbility 2023-09-22 23:38:15 -04:00
xenohedron
6abe9ff821 new common BecomesTargetAnyTriggeredAbility 2023-09-22 23:38:15 -04:00
xenohedron
65523b9fec new common BecomesTargetControllerTriggeredAbility
remove old classes
2023-09-22 23:14:41 -04:00
xenohedron
79b10856b8 use common methods in BecomesTargetAttachedTriggeredAbility 2023-09-22 23:14:41 -04:00
xenohedron
ee68726865 use common methods for WardAbility 2023-09-22 23:14:41 -04:00
Oleg Agafonov
0bf4b63bcf refactor: additional improves for mana choice in some cards, related to Naked Singularity from 81039d6e72 2023-09-23 06:39:01 +04:00
Oleg Agafonov
a9152e886f refactor: improved ContinuousRuleModifying effects:
* removed unused apply methods;
* added miss overrides of checksEventType (related to wrong event usage, see 5f2edde20c).
2023-09-22 21:32:55 +04:00
xenohedron
fa8e93a29d
rework CombatDamageByToughnessAllEffect (#11180)
new CombatDamageByToughnessControlledEffect
add tests
fix #11179
2023-09-19 01:41:55 -04:00
xenohedron
0ad678ff56
enable multiple added subtypes in CreateTokenCopyTargetEffect (#11181)
fix #11176
2023-09-19 01:41:40 -04:00
Oleg Agafonov
5f15e962da Bestow ability - fixed that it could be used with other alternative costs 2023-09-17 15:03:16 +04:00
Oleg Agafonov
4e77ccb381 refactor: removed unused data from special action, improved code (related to #11137) 2023-09-17 14:37:49 +04:00
ssk97
b6dbc782be
Fix casting Transformed (#10778)
* Combine casting Transformed into a shared SpellAbility, apply transform effect before spell is cast

* Minor cleanup

* Use effect.apply() rather than game.applyEffects()

* Add test with Maskwood Nexus
2023-09-15 17:56:32 -04:00
Susucre
8859637844
[CMB1] Implement Innocuous Insect (#11143) 2023-09-15 17:56:08 -04:00
Susucre
58fdbc9345
[CMB1] Implement Frogkin Kidnapper (#11137) 2023-09-15 17:55:24 -04:00
Oleg Agafonov
be4bff6097 game: fixed wrong usage of batch events (related to #10870) 2023-09-13 04:42:46 +04:00
Oleg Agafonov
ba3b0e4cb7 Merge fix 2023-09-13 03:49:59 +04:00
Oleg Agafonov
316e0dc1f3 refactor: improved damaged batch events, added todo to fix (related to #10870) 2023-09-13 03:14:19 +04:00
Vivian Greenslade
8c1a4d1fa6
[WOC] Implement Misleading Signpost (#11084)
* [WOC] Implement Misleading Signpost

* moved effect to common file

* added unit test

* added battle to test

* updated effect name, fixed list of defenders

* fix test text

* added text for effect

* fixed target

* made changes as per PR comments

* added unit test for 508.7c
2023-09-09 15:32:04 -04:00
Susucre
8b79053deb
[WOC] Implement Court of Garenbrig (#10970)
* add DoubleCounterOnEachPermanentEffect

* Clean text generation of ConditionalOneShotEffect to prevent "if if"

* [WOC] Implement Court of Garenbrig

* better rule generation

* fix target, add tests
2023-09-09 15:31:49 -04:00
Susucre
249e7bf31b
[WOC] Implement Court of Embereth (#10971)
* Clean text generation of ConditionalOneShotEffect to prevent "if if"

* [WOC] Implement Court of Embereth
2023-09-08 23:57:36 -04:00
xenohedron
144b261fc2 another batch of text fixes 2023-09-07 02:22:16 -04:00
xenohedron
8c9ecb9b9a adjust Cascade ability reminder text 2023-09-07 02:22:16 -04:00
xenohedron
34b671bc83 cleanup add color/subtype attached effects 2023-09-07 02:22:16 -04:00
xenohedron
72be1856f7 describe targets: look at hand; can't be blocked 2023-09-07 02:22:16 -04:00
Oleg Agafonov
4b3a19b4d5 refactor: improved target usage, replaced setNotTarget by withNotTarget 2023-09-07 05:35:54 +04:00
PurpleCrowbar
692c55e3e1
Do this only once each turn - fixed wrong triggers after optional usage (example: Ondu Spiritdancer, see #11106) (#11107)
* Fix Ondu Spiritdancer. Closes #11106
* Add tests for "Do this only once each turn"
* Add test for Ondu Spiritdancer
2023-09-06 22:12:03 +04:00
Susucre
7b5139742f
[JUD] Fix Wormfang Turtle & Wormfang Newt (#11100)
text generation & wrongly targetting
2023-09-05 22:27:19 -04:00
Oleg Agafonov
8a65b0f149 refactor: removed netbeans's auto-generated comments 2023-09-02 16:05:29 +04:00
Susucre
344ff81a37
[WOE][WOC] Fixed card texts, fixed Free the Fae (#11098)
* fix name compare when both full and small name are used
* fix Free the Fae, it is mandatory
2023-09-02 15:40:40 +04:00
Susucre
24315460fe
Bargain ability - fixed that cards can't be cast without full mana (#11089)
* [WOE] Fix Hamlet Glutton & friends
* add tests
2023-09-02 15:38:45 +04:00
arcox
2f0c1d84c5
Lint: fix 'declarations should use interfaces instead of classes' bugs (#11082) 2023-08-31 21:42:45 +04:00
xenohedron
d6c690601d
Merge pull request #11031 from xenohedron/cleanup-7a-7b
More SetBasePowerToughnessSourceEffect cleanup
2023-08-31 00:29:59 -04:00
Oleg Agafonov
060b8f9dc9 backup ability: fixed wrong duration and discard in Streetwise Negotiator, added related tests and runtime/verify checks (related to #11068) 2023-08-31 07:29:05 +04:00
xenohedron
1903f90b3a better text generation, a couple more individual fixes 2023-08-30 23:25:10 -04:00
Oleg Agafonov
6768184e18 typo fixed (related to #11068), added backup ability docs 2023-08-31 06:06:47 +04:00
xenohedron
22961162ad text fixes related to recent updates 2023-08-30 20:54:27 -04:00
Vivian Greenslade
a65c2204ce
Rework CombatDamageByToughness effects (#11068)
* split effect into three classes for convenience

* added static filter

* refactored cards using effect

* fixed issues as per PR comments

* changed predicate and fixed text

* added unit test, fixed text issues with Baldin

* set static text

* changed outcome

* added stop to test

* fixs issues as per PR comments
2023-08-30 20:16:14 -04:00
Susucre
96a2c277b2
clean some of the most frequent copy constructor / copy method (#11053) 2023-08-30 19:48:03 -04:00
Vivian Greenslade
5ddb69e1ba
Rework DealCombatDamageControlled to allow a creature filter (#11037)
* Added filter to ability

* wip

* updated logic for trigger to use new event

* updated classes using trigger to account for constructor changes

* condensed constructors, added total damage dealt as value, added exception for SetTargetPointer

* fixed set value

* fixed optional flag on cards

* fixed filter
2023-08-30 19:47:52 -04:00
Susucre
9abe115c68
more cleanup of copy method/constructor (#11056) 2023-08-30 19:17:05 -04:00
Susucre
fab00d2f27
[WOE] Implement Curse of the Werefox (#11009)
* [WOE] Implement Curse of the Werefox

* apply review

* Fix aura (and equipment?) tokens not checking for protection on target

* fix targetting of reflexive trigger, by creating a custom fight effect.

* fix reflexive ability target.
2023-08-30 19:16:22 -04:00