Commit graph

2229 commits

Author SHA1 Message Date
Susucre
11373fd75d fix Xanathar, Guild Kingpin (#12133)
fix #12133
2024-04-17 19:59:31 +02:00
Susucre
017286ed94
fix ContinuousEffect that access affectedObjectsSet before it is initialized (#12080) 2024-04-13 16:50:06 +02:00
Susucre
607d55f16b
[OTC] Implement 2 cards, refactor some exile effects ("Gonti-like") (#12118)
[OTC] Implement Gonti, Canny Acquisitor
[OTC] Implement Dream Thief's Bandana
2024-04-13 12:21:05 +02:00
Susucre
c77634c843
separate 'you may play'|'you may cast' AsThoughtEffect approuvers
Also, reworked Gonti, Lord of Luxury and checks it now works properly with Zoetic Cavern.
2024-04-13 12:10:53 +02:00
xenohedron
1198192a13 more text adjustments 2024-04-12 20:45:53 -04:00
Alexander Novotny
8271686cb4
[PIP] Implement Shaun, Father of Synths (#12109)
* Added method to set triggered abilities to optional

* TokenCopy effect now copies permanentModifier

* Implemented Shaun, Father of Synths

* remove TODO

* Made `setOptional` chainable
2024-04-12 19:41:58 -04:00
Susucre
e741a453bf [PIP] Implement Nuclear Fallout 2024-04-11 19:16:36 +02:00
xenohedron
8bf75ed000 text fixes 2024-04-11 00:34:19 -04:00
jimga150
51b1ab4cb6
Implement [REX] Compy Swarm (#12101) 2024-04-10 23:43:37 -04:00
Oleg Agafonov
c3862e7196 server: improved server stability after some memory overflow errors (card not found errors, related to #11285); 2024-04-10 22:35:48 +04:00
Susucre
db5dc89776 [OTC] Implement Smoldering Stagecoach 2024-04-09 20:57:22 +02:00
Susucre
b233fcf4d8 Consolidate, cleanup & test a few MayCastTargetCardEffect cards 2024-04-06 17:37:32 +02:00
Susucre
a86b629abe [OTC] Implement Smirking Spelljacker 2024-04-06 16:26:16 +02:00
Susucre
1ff8cf01cf [MKM] Implement Fugitive Codebreaker 2024-04-05 20:16:28 +02:00
Susucre
d317dd1307 Add test for Voja, Jaws of the Conclave 2024-04-05 12:13:01 +02:00
Susucre
d2356abe31 Fix AddCountersAllEffect 2024-04-05 12:02:56 +02:00
Susucre
2d7349a7bb Fix faulty logic in AddCounters effects amount computation.
When set with DynamicValue, and that value computes to 0,
the amount of counters added was incorrectly the Counters amount.
2024-04-05 11:53:19 +02:00
xenohedron
35a22527f1 another batch of text fixes 2024-04-04 23:21:44 -04:00
Susucre
01ddee2c75 Fix zcc off by 1 in MayCastTargetCardEffect 2024-04-05 02:07:48 +02:00
Susucre
d1de8b8cd3
[OTJ] Implement Tinybones, the Pickpocket + refactor MayCastTargetThenExileEffect (#12040) 2024-04-05 00:16:53 +02:00
Susucre
73287e3878 [OTJ][BIG] Various Fixes (mostly Text) 2024-04-03 22:24:53 +02:00
Susucre
f5b7968492 [OTJ] Implement Smuggler's Surprise 2024-04-03 00:49:20 +02:00
theelk801
911a221a1b [OTJ] Implement Patient Naturalist 2024-04-02 15:23:48 -04:00
Susucre
f41f3feb89 [OTJ] Implement Trick Shot 2024-04-02 12:56:19 +02:00
Susucre
97ab8074b3
[OTJ] Implement Plot mechanic (+8 cards) (#12017)
[OTJ] Implement Aloe Alchemist
[OTJ] Implement Aven Interrupter
[OTJ] Implement Longhorn Shapshooter
[OTJ] Implement Kellan Joins Up
[OTJ] Implement Make Your Own Luck
[OTJ] Implement Jace Reawakened
[OTJ] Implement Lilah, Undefeated Slickshot
[OTJ] Implement Doc Aurlock, Grizzled Genius
2024-03-31 17:06:55 +02:00
xenohedron
a768a4dd8a cleanup access to fields in AbilityImpl
where trivially possible, make private and use getters
2024-03-29 01:53:03 -04:00
xenohedron
0637657616 fix constructor error from #11886 2024-03-29 01:18:53 -04:00
xenohedron
ea843c1bb9 remove unnecessary stringbuilder usage 2024-03-29 00:48:43 -04:00
ssk97
d886b3e450
[WHO] Implement 4 cards, create generic EachOpponentPermanentTargetsAdjuster (#11886)
* Implement Bigger on the Inside
* implement Reverse the Polarity
* Implement Sontaran General
* Implement Everything Comes to Dust
2024-03-29 01:32:38 +04:00
skiwkr
8f6b3e0faf
[WHO] Implement Amy Pond and Rory Williams (#11929)
* [WHO] Implement Amy Pond 

* [WHO] Implement Rory Williams

* Modified ExileSpellWithTimeCountersEffect to include the ability to give the card suspend, simplified Epochrasite

* adjustments

---------

Co-authored-by: xenohedron <xenohedron@users.noreply.github.com>
2024-03-27 23:30:10 -04:00
xenohedron
ad63362c33
fix #9877 (Disorder in the Court) (#11987) 2024-03-23 17:17:50 -04:00
xenohedron
40b55f7a59 fix text gen typo 2024-03-23 01:08:58 -04:00
xenohedron
5df392af64
fix face-down creature spells cost reduction to include disguise (#11962) 2024-03-18 23:09:52 -04:00
xenohedron
d5295b0de3
Improve handling of abilities that let you cast spells from not hand zone once per turn (#11946)
* fix name of existing test

* adjust class name

* generate text

* use common class for Danitha

* add test

* update Gisa and Geralf

* rework Cemetery Illuminator, add test

* simplify effects allowing play from top of library

* simplify common classes which were bloated to support a single card

* simplify another

* remove unused import from test

* rework to check spell ability

* add more test cases

* add test cases

* add failing test case

* common watcher and hint for "once each turn, you may cast..."

* fix Assemble the Players to check spell ability, add test

* apply same improvements to Johann, Apprentice Sorcerer
2024-03-18 23:09:31 -04:00
ssk97
b9bfe2ba48
Megamorph abilities - fixed that face down creatures show megamorph instead morph status (#11957)
* Megamorph should appear as if it were Morph

* review comment
2024-03-18 03:58:02 +04:00
Cameron Merkel
a7f808afb6
Implement [MKM] Connecting the Dots; [PIP] Expert-Level Safe; related refactoring (#11922)
* Switch to common class for exiling top cards of your library

* Replace some custom classes with ReturnFromExileForSourceEffect; text-gen additions to that Effect

* Knowledge Vault: add tap cost to 1st ability, fix text on 3rd ability; Petradon: remove unused import

* [MKM] Implement Connecting the Dots

* [PIP] Implement Expert-Level Safe

* Set staticText in constructor

* Use {this} in Expert-Level Safe text

* Use createObjectRealtedWindowTitle for exile names

* Remove unnecessary field
2024-03-11 00:16:42 -04:00
PurpleCrowbar
e5759bbd9e
[PH17] Implement Inzerva, Master of Insights (#11774)
* Remove superfluous code from fateseal effect
2024-03-07 19:02:52 -05:00
xenohedron
9893032a36
rework Ghastly Conscription and Jeskai Infiltrator to common manifest code (#11898) 2024-03-03 21:16:46 -05:00
xenohedron
bce44f9cb9 fix some text 2024-03-03 21:03:27 -05:00
Oleg Agafonov
11ddfa0087 Manifest abilities - improved combo support for MDF, split and other cards (related to #10803, part of #11873) 2024-03-02 14:49:17 +04:00
Oleg Agafonov
6cd8359fbd merge fix 2024-03-02 12:09:53 +04:00
Oleg Agafonov
00c3efedcf refactor: improved Manifest effects to use shared code, added docs, todos and tests for all simple usages (part of #11873) 2024-03-02 12:01:05 +04:00
Oleg Agafonov
55f1d36695 game: improved visible rules of face down cards, removed visible face up cost (part of #10653, #11884) 2024-03-01 16:47:59 +04:00
Oleg Agafonov
9ea3356b77 [WHO] implemented Disguise ability (new face down type, ability and token image, #10653) 2024-03-01 16:47:59 +04:00
PurpleCrowbar
c39c8be9b6 Fix investigate effect text 2024-03-01 00:11:30 +00:00
Oleg Agafonov
c8a9a1a9db game: improved game logs for faced-down spells and exiled cards - now it support popup hint to view card/permanent (part of #11884, related to #11881, #8781) 2024-03-01 02:08:25 +04:00
Oleg Agafonov
e38a79f231
Face down images and cards rework (#11873)
Face down changes:
* GUI: added visible face down type and real card name for controller/owner (opponent can see it after game ends);
* GUI: added day/night button to view real card for controller/owner (opponent can see it after game ends);
* game: fixed that faced-down card can render symbols, abilities and other hidden data from a real card;
* images: added image support for normal faced-down cards;
* images: added image support for morph and megamorph faced-down cards;
* images: added image support for foretell faced-down cards;

Other changes:
* images: fixed missing tokens from DDD set;
* images: no more client restart to apply newly downloaded images or render settings;
* images: improved backface image quality (use main menu -> symbols to download it);
2024-02-29 01:14:54 +04:00
PurpleCrowbar
0d11a898fc
refactor: GainAbilityControlledSpellsEffect to enforce nonland card filter (#11871) 2024-02-27 22:42:52 -05:00
PurpleCrowbar
3486c57364
[MKC] Implement Printlifter Ooze (#11865) 2024-02-27 22:29:36 +00:00
PurpleCrowbar
ddcd54c0df
[BLB] Implement Byrke, Long Ear of the Law (#11860)
New common class DoubleCountersTargetEffect
2024-02-26 00:12:14 -05:00