Commit graph

9302 commits

Author SHA1 Message Date
Evan Kranzler
c2ae2f89f0 many find/replace "shuffle" fixes 2021-04-18 17:29:28 -04:00
Evan Kranzler
5540461397 some more text fixes 2021-04-18 16:03:44 -04:00
Evan Kranzler
cae1b271c2 [STX] some final text fixes 2021-04-18 15:09:18 -04:00
Evan Kranzler
9a40ea0335 [C21] Implemented Geometric Nexus 2021-04-18 14:51:54 -04:00
Evan Kranzler
40a374b407 un-reverted change, fixed test failure 2021-04-18 08:12:32 -04:00
Evan Kranzler
402733d6e7 revert change to fix test, will investigate later 2021-04-17 22:12:14 -04:00
Evan Kranzler
efb2a7f3de [STX] more text fixes 2021-04-17 21:56:26 -04:00
Evan Kranzler
213564f8cd changed ExileSpellEffect from being singleton 2021-04-17 18:47:45 -04:00
Evan Kranzler
b5e3ad2814 fixed Ward ability text (fixes #7715) 2021-04-17 18:36:11 -04:00
Evan Kranzler
326c17fe4d [STX] various text fixes 2021-04-17 18:22:43 -04:00
Evan Kranzler
a61d5543fa replaced all instances of converted mana cost with mana value 2021-04-17 17:02:27 -04:00
Evan Kranzler
cb0df438dd [STA] text fixes 2021-04-17 16:34:21 -04:00
Evan Kranzler
cbc949c08e removed deprecated method for adding delayed triggered abilities 2021-04-17 12:13:37 -04:00
Evan Kranzler
4304ba8cce [STX] Implemented Uvilda, Dean of Perfect / Nassari, Dean of Expression 2021-04-17 09:07:09 -04:00
Daniel Bomar
600cac6fc7
[READY FOR REVIEW] Implement a "multi-amount" dialog (#7528)
* Implemented chooseTargetAmount and new GUI dialog (distribute damage, distribute mana)
* Added tests and AI support;
* Test framework: added aliases support in TargetAmount dialogs;

Co-authored-by: Oleg Agafonov <jaydi85@gmail.com>
2021-04-17 14:28:01 +04:00
htrajan
042aa61ad4
[STX] Implement Efreet Flamepainter (#7747)
* [STX] Implement Efreet Flamepainter

* Add null check

* Target needs to be chosen before ability resolution
2021-04-16 22:16:02 -04:00
Evan Kranzler
b8b8deaec2 [STX] Implemented Shadrix Silverquill 2021-04-16 20:43:14 -04:00
Evan Kranzler
f9467d5142 [STX] Implemented Strict Proctor 2021-04-16 18:48:40 -04:00
Evan Kranzler
c408776ad7 [STX] Implemented Mavinda, Students' Advocate 2021-04-15 09:21:01 -04:00
Evan Kranzler
802dacea29 [C21] Implemented Scholarship Sponsor 2021-04-14 18:33:28 -04:00
Evan Kranzler
a3bbc0b470 [STX] Implemented Strixhaven Stadium 2021-04-13 09:47:21 -04:00
Evan Kranzler
ae22f99b54 [STX] Implemented Rowan, Scholar of Sparks / Will, Scholar of Frost 2021-04-13 09:12:10 -04:00
Evan Kranzler
dc42107962 [STX] Implemented Mila, Crafty Companion / Lukka, Wayward Bonder 2021-04-12 22:07:19 -04:00
Evan Kranzler
7d3dfe5b15 [C21] Implemented Ruxa, Patient Professor 2021-04-12 17:16:29 -04:00
Evan Kranzler
e51ebbec93 [C21] Implemented Felisa, Fang of Silverquill 2021-04-12 09:47:27 -04:00
Evan Kranzler
c8e21a8c6a [C21] Implemented Triplicate Titan 2021-04-12 09:32:44 -04:00
Evan Kranzler
f4dd6ba1e7 added new EachTargetPointer object 2021-04-12 09:08:50 -04:00
Evan Kranzler
dab3dfdc5a [STX] Implemented Extus, Oriq Overlord / Awaken the Blood Avatar 2021-04-11 10:52:16 -04:00
Evan Kranzler
f97b6bf538 [STX] Implemented Wandering Archaic / Explore the Vastlands 2021-04-11 10:28:39 -04:00
Evan Kranzler
ed7a91cd60 [ODY] fixed Aven Windreader effect #7733 2021-04-11 09:32:01 -04:00
Evan Kranzler
79b7d49e83 [STX] Implemented Show of Confidence 2021-04-10 21:55:32 -04:00
Evan Kranzler
f37628c5cb [STX] Implemented Plumb the Forbidden 2021-04-10 21:30:26 -04:00
htrajan
af0f705b5e
[STX] Implement Conspiracy Theorist (#7728)
* [STX] Implement Conspiracy Theorist
2021-04-11 04:52:18 +04:00
Evan Kranzler
167d2579ac [C21] Implemented Trudge Garden 2021-04-10 10:19:59 -04:00
htrajan
10cd439955
[STX] add more cards (#7720)
* implement AcademicProbation
* implement AugmenterPugilist // EchoingEquation
* Implement BalefulMastery
* implement BasicConjuration
* implement ClosingStatement
* Test framework: added custom effect to return card from any zone to hand;

Co-authored-by: Oleg Agafonov <jaydi85@gmail.com>
2021-04-09 17:56:34 +04:00
Evan Kranzler
c83db2cad3 [STX] Implemented Dragon's Approach 2021-04-09 08:20:59 -04:00
Evan Kranzler
6ff3ca5c1e [STX] Implemented Dramatic Finale 2021-04-08 18:56:18 -04:00
Evan Kranzler
cf3b3cbb76 [C21] Implemented Archaeomancer's Map 2021-04-08 17:21:41 -04:00
Evan Kranzler
689efae076 [C21] Implemented Paradox Zone 2021-04-08 09:03:28 -04:00
Evan Kranzler
77d22b9960 [C21] Implemented Deekah, Fractal Theorist 2021-04-08 08:22:25 -04:00
Evan Kranzler
bea736aa54 [STX] Implemented Retriever Phoenix 2021-04-07 19:24:41 -04:00
Evan Kranzler
8950d35ec7 [STX] Implemented Test of Talents 2021-04-07 09:18:36 -04:00
Evan Kranzler
2f50958e53 [STX] Implemented Reject 2021-04-07 08:53:03 -04:00
Evan Kranzler
37a4ae27f1 [STX] Implemented Explosive Welcome 2021-04-07 08:33:53 -04:00
Evan Kranzler
5ee335f011 [STX] Implemented Willowdusk, Essence Seer 2021-04-06 18:41:01 -04:00
Evan Kranzler
bcb9e410dd [C21] Implemented Adrix and Nev, Twincasters 2021-04-06 18:23:08 -04:00
Evan Kranzler
1d4fc1369a [STX] Implemented Silverquill Silencer 2021-04-06 09:25:48 -04:00
Evan Kranzler
bffe1b2ce6 [STX] Implemented Pillardrop Warden 2021-04-05 20:43:52 -04:00
Evan Kranzler
cf2771e9fa [STX] Implemented Hall of Oracles 2021-04-05 20:37:06 -04:00
Evan Kranzler
3914aa656a [STX] Implemented Brackish Trudge 2021-04-05 19:13:27 -04:00
Evan Kranzler
f2f04be08b [STX] Implemented Spell Satchel 2021-04-05 19:04:52 -04:00
Evan Kranzler
33b7fa3eda [C21] Implemented Excavation Technique 2021-04-05 18:11:24 -04:00
Evan Kranzler
4a184a94b3 [STX] Implemented Tend the Pests 2021-04-04 23:34:21 -04:00
Evan Kranzler
734bd6f118 fixed Blatant Thievery test failure 2021-04-04 13:19:15 -04:00
Evan Kranzler
8699b847d8 [STX] Implemented Promising Duskmage 2021-04-04 12:45:00 -04:00
Evan Kranzler
2184a18c04 [STX] Implemented Flame Spill 2021-04-04 10:40:13 -04:00
Evan Kranzler
1461a875ff [STX] Implemented Leyline Invocation 2021-04-04 10:19:32 -04:00
Evan Kranzler
ceabb02270 [STX] Implemented Divide by Zero 2021-04-03 21:50:06 -04:00
Evan Kranzler
548ac048d7 [STX] Implemented Sedgemoor Witch 2021-04-03 07:32:12 -04:00
htrajan
0a3a4bc189
Stx add cards (#7709)
* WIP

* Implement Confront the Past

* Don't modify test

* Implement Plargg // Augusta

* Implement Shaile // Embrose

* Fix FDoC

* Fix CtP

* fix ordering

* remove extra plains

* FDoC PR fixes

* Augusta PR fixes

* Shaile PR fixes

* don't capitalize "learn"
2021-04-02 18:07:30 -04:00
Oleg Agafonov
05b1366c39 Fixed missing override, restored and additional comments 2021-04-02 11:43:42 +04:00
Oleg Agafonov
fbb08ab1a8 Devs: added todo with mana calculation freezes (Cascading Cataracts) 2021-04-02 11:32:35 +04:00
Evan Kranzler
dbbb696abf added some hints 2021-04-01 20:43:10 -04:00
Evan Kranzler
01bde741d4 [STX] Implemented Inkling Summoning 2021-04-01 09:21:47 -04:00
Evan Kranzler
b6ca0ca222 [STX] Implemented Manifestation Sage 2021-04-01 07:49:10 -04:00
Evan Kranzler
85684c6bf1 [STX] Implemented Kelpie Guide 2021-03-31 09:09:00 -04:00
Evan Kranzler
8e3f4d89c9 revert changes to dynamic value calculations (will investigate more thoroughly later) 2021-03-31 08:55:49 -04:00
Evan Kranzler
3d078dce93 [STX] Implemented Tanazir Quandrix 2021-03-31 08:15:38 -04:00
Evan Kranzler
2567e56db8 [STX] Implemented Thunderous Orator 2021-03-30 20:34:32 -04:00
Evan Kranzler
f831eac6fc [STX] Implemented Magma Opus 2021-03-30 19:34:16 -04:00
Evan Kranzler
63c7c52d92 [STX] Implemented Stonebound Mentor 2021-03-30 08:08:53 -04:00
Evan Kranzler
b8c83b4b51 [STX] Implemented Illustrious Historian 2021-03-30 07:44:14 -04:00
Evan Kranzler
97af948932 simplified and condensed various effects which discard variable amounts of cards 2021-03-29 21:35:27 -04:00
Evan Kranzler
a55ed17beb [STX] Implemented Torrent Sculptor / Flamethrower Sonata 2021-03-27 11:33:08 -04:00
Evan Kranzler
730ac37930 [STX] Implemented Prismari Apprentice 2021-03-27 08:06:26 -04:00
Evan Kranzler
7dc8133eec [STX] Implemented Waterfall Aerialist 2021-03-26 07:01:14 -04:00
Evan Kranzler
aa271876d0 [STX] Implemented Dragonsguard Elite 2021-03-25 20:43:30 -04:00
Evan Kranzler
69e38a84ce [STX] Implemented Pest Summoning 2021-03-25 20:12:43 -04:00
Evan Kranzler
6d99f28bef [STX] Implemented Pop Quiz 2021-03-25 19:55:55 -04:00
Evan Kranzler
73888133eb [STX] implemented Eager First-Year 2021-03-25 19:40:35 -04:00
Evan Kranzler
83993500e0 [EMN] fixed Imprisoned in the Moon not correctly removing subtypes 2021-03-25 08:25:00 -04:00
Evan Kranzler
3feb2017d3 removed unnecessary overrides of adjustTargets and adjustCosts 2021-03-23 20:43:16 -04:00
Evan Kranzler
043aae6dff updated phrasing on player choice messages 2021-03-23 19:46:47 -04:00
Evan Kranzler
d54e1c6eac [DTK] updated implementation of spells which reveal dragon cards as a cost 2021-03-23 19:44:45 -04:00
Evan Kranzler
707de23436 cleaned up some methods for effects and abilities 2021-03-22 21:47:08 -04:00
Evan Kranzler
2a42bec1f2 simplified various cards to use isInstantOrSorcery method 2021-03-22 20:01:20 -04:00
Evan Kranzler
df866f858e [STX] Implemented Professor Onyx 2021-03-22 19:25:55 -04:00
Evan Kranzler
aa527ea8b2 [STX] Implemented Kasmina, Enigma Sage 2021-03-22 19:23:02 -04:00
Evan Kranzler
9f9cb3327f [IKO] fixed Kaheera, the Orphanguard not correctly counting changelings 2021-03-22 08:53:40 -04:00
Evan Kranzler
583475dfd2 [ORI] fixed Chief of the Foundry text (fixes #7681) 2021-03-21 11:34:26 -04:00
Oleg Agafonov
8a06be7e28 Merge fix 2021-03-20 18:40:22 +04:00
Evan Kranzler
1cbbcddcc6
Improving implementation of cards which use voting (WIP) (#7566)
* created interface for handling voting

* created class for two choice votes, refactored a card to use it

* refactored all cards which use two choice votes

* updated VoteHandler to an abstract class to encapsulate more of its functions

* refactored cards which vote for more than two things

* [CNS] Implemented Brago's Representative

* [CN2] Implemented Ballot Broker

* [CN2] Implemented Illusion of Choice

* [CNS] Implemented Grudge Keeper

* added vote outcomes

* updated implementation of Illusion of Choice to work correctly in multiples

* added test for voting

* updated implementation of extra votes

* simplified vote message handling

* Improved names, additional comments

* Votes: fixed not working getMostVoted

* Votes: added final vote results to game logs;

* Votes: added additional info for the vote choices;

* Votes: added vote step info in choose dialogs, added AI support example for Tyrant's Choice;

Co-authored-by: Oleg Agafonov <jaydi85@gmail.com>
2021-03-20 18:32:54 +04:00
Evan Kranzler
d4792e3665 reworked/simplified/consolidated effects which exchange life totals, added test (fixes #7668) 2021-03-14 15:56:48 -04:00
Evan Kranzler
e0336d4d65 [ROE] fixed Tuktuk, the Explorer token creature type (fixes #7673) 2021-03-13 08:40:30 -05:00
Evan Kranzler
19ec3e399e fixed text on wish effects 2021-03-12 15:05:37 -05:00
Evan Kranzler
9c56a98dc9
Refactor implementation of spell copies for cards like Twinning Staff as well as refactor handling of target changing (WIP) (#7662)
* refactored createCopyOnStack to be void

* added new interface for modifying copied spellsspells

* update implementation of Fork to use new applier

* reworked epic effect

* add applier to spell copy code

* updated implementation of Beamsplitter Mage

* updated cards which copy for each possible target

* added support for additional copies having targets changed

* fixed/ignored failing tests

* updated target changing to prevent unnecessary choosing

* added test for Twinning Staff

* updated implementation of spell copy applier

* added new method for choosing order of copies on stack

* fixed test failures

* [TSR] various text fixes

* fixed a test failure

* [SLD] fixed Rick, Steadfast Leader only counting Human creatures

* updated test framework to handle skips without affecting starting player choice

* fixed another test failure

* updated copy messaging for consistency

* added copy messaging to stack abilities
2021-03-12 12:47:49 -05:00
Evan Kranzler
1dfde6d622 [TSR] various text fixes 2021-03-09 20:01:32 -05:00
Oleg Agafonov
0ab8d0d16f Fixed NPE 2021-03-07 23:45:50 +04:00
Oleg Agafonov
2906f86324 Test framework: simplified AI logic and tests, added usage comments. Devs recommendations:
* in card's code use player.isComputer instead player.isHuman (it help to split Human/AI logic and test both by unit tests);
* usage example: AI hint to skip or auto-calculate choices instead call of real choose dialogs;
* unit tests for Human logic: call normal commands;
* unit tests for AI logic: call aiXXX commands;
2021-03-07 23:38:10 +04:00
Oleg Agafonov
6e661e6d97 * Halvar, God of Battle - fixed rollback error on attached permanent die; 2021-03-07 18:28:19 +04:00