Commit graph

248 commits

Author SHA1 Message Date
DeepCrimson
853cf591aa
Remove redundant variable controllerOfFirstTarget (#9039) 2022-05-30 07:54:13 -06:00
DeepCrimson
9084180937
Fix 'chosen' spelling (#9021) 2022-05-27 21:45:07 -06:00
Alex Vasile
561a5a3d0e Fixed error I introduced in canTarget() 2022-05-25 23:18:01 -06:00
DeepCrimson
49c02387d4
Remove redundant branch in TargetPermanent canTarget method (#9003) 2022-05-25 23:03:47 -06:00
DeepCrimson
0c8ef41012
Fix spelling of doneChoosing() (#9002) 2022-05-25 22:25:15 -06:00
Alex Vasile
eb63ea1e32 - Improved TargetCardInASingleGraveyard to restrict all targets after the 1st to the same graveyard as the first chosen target
- Added slight documentation to Target and TargetCard
- Minor cleanup to Unlicensedhearse
2022-05-25 10:57:13 -06:00
Evan Kranzler
758f1cb896 [CLB] Implemented Alora, Merry Thief 2022-05-23 21:20:49 -04:00
Evan Kranzler
913f88d573 [SNC] fixed NPE with Rocco, Cabaretti Caterer (fixes #8886) 2022-04-27 08:30:14 -04:00
Alex W. Jackson
d95d8378fb Various text fixes 2022-04-26 07:10:13 -04:00
Evan Kranzler
9ead88bacb [SNC] Implemented Endless Detour 2022-04-19 18:40:45 -04:00
Evan Kranzler
2619333ff5 [SNC] Implemented Psychic Pickpocket 2022-04-11 18:36:38 -04:00
Evan Kranzler
20a577fc5a [SNC] Implemented Incriminate 2022-04-09 10:08:23 -04:00
Alex W. Jackson
081b2f2f39 Replace more custom effects with SavedDamageValue 2022-04-02 02:11:12 -04:00
Evan Kranzler
945b60c8d0 fixed some NPE issues with player target choosing 2022-03-25 21:16:38 -04:00
Evan Kranzler
effdf14579 [VOW] fixed Savior of Ollenbock issues (fixes #8786) 2022-03-25 17:35:27 -04:00
Evan Kranzler
80e11b2052
(WIP) Replacing blocking/blocked by predicates (#8729)
* replaced blocking/blocked by predicates

* added test for knight of dusk (currently fails)

* added source parameter to filters and everything else that needs it

* some changes to various predicates

* test fix

* small changes to filter code

* merge fix

* fixed a test failure

* small change to Karn, Scion of Urza

* removed sourceId from filter methods and other similar places

* added new getobject method to fix some test failures

* a few more fixes

* fixed merge conflicts

* merge fix
2022-03-23 18:45:02 -04:00
Evan Kranzler
8b7a5c370a added shared class for cards which search for different names 2022-03-16 16:52:13 -04:00
Evan Kranzler
d3ebac1776 [SHM] fixed Repel Intruders not being able to be cast when stack is empty (fixes #8715) 2022-02-19 18:32:43 -05:00
Evan Kranzler
ac56e8dd24 [NEO] fixed Mechtitan Core error when exiling only tokens 2022-02-19 09:49:50 -05:00
Evan Kranzler
4591ac07cc
Reworking goad effects (ready for review) (#8034)
* changing goad to designation, refactored goad effects to be continuous

* [AFC] Implemented Vengeful Ancestor

* reworked effects which goad an attached creature

* updated goading implementation

* updated combat with new goad logic

* some more changes, added a test

* another fix

* update to test, still fails

* added more failing tests

* more failing tests

* added additional goad check

* small fix to two tests (still failing

* added a regular combat test (passes and fails randomly)

* fixed bug in computer player random selection

* some changes to how TargetDefender is handled

* removed unnecessary class

* more combat fixes, tests pass now

* removed tests which no longer work due to combat changes

* small merge fix

* [NEC] Implemented Komainu Battle Armor

* [NEC] Implemented Kaima, the Fractured Calm

* [NEC] added all variants
2022-02-15 09:18:21 -05:00
Evan Kranzler
cff38b74b9 [NEO] fixed implementation of March additional costs (#8524) 2022-02-12 14:27:35 -05:00
Evan Kranzler
442859497b [NEO] Implemented Invoke Justice 2022-02-07 19:09:06 -05:00
Evan Kranzler
0345580fa7 [NEO] Implemented Farewell 2022-02-04 17:41:45 -05:00
Daniel Bomar
105e1f8ed9
[MID] Teferi, Who Slows the Sunset - Fixed targets on +1 ability (fixes #8423) 2021-10-31 08:28:58 -05:00
Daniel Bomar
bcacb870af
Text fixes (fixes #8399) 2021-10-22 23:50:30 -05:00
Jeff Wadsworth
77845bd1df Fixed #8286. 2021-09-20 15:54:52 -05:00
Oleg Agafonov
021a2d251c Improves in some effects:
* ConditionalAsThoughEffect - improved support with target effects (see comments from e6e802033b);
* TargetCardInLibrary - added additional checks on wrong usage (must be used inside effects only, not as ability's target);
* PlayFromNotOwnHandZone - fixed wrong playable mark on battlefield's permanents (AI related too);
2021-09-17 21:21:37 +04:00
Evan Kranzler
244cacfe3b [MIC] Implemented Sigardian Zealot 2021-09-16 09:09:41 -04:00
Evan Kranzler
11238333b5 [MID] Implemented Burn Down the House 2021-09-10 08:42:44 -04:00
Oleg Agafonov
4f5e43b630 Fixed NPE 2021-09-05 19:53:51 +04:00
Oleg Agafonov
e9c68d2a5c Test framework improves (related to #7896):
* added real time command to check card's counters (example: suspended cards with Time counters, see checkCardCounters);
* added target type support: TargetPermanentOrSuspendedCard;
* improves error logs for miss modes and unsupported target types;
2021-08-21 15:02:42 +04:00
Evan Kranzler
daf77b2ee8 [MH2] various text fixes 2021-06-22 09:20:05 -04:00
Ingmar Goudt
96d026e4af remove explicit null checks, match(..) checks on null itself by instanceof calls 2021-04-28 20:53:50 +02:00
Evan Kranzler
bf2e90feae [C21] Implemented Yedora, Grave Gardener 2021-04-28 09:21:39 -04:00
Evan Kranzler
01b797f494 reworked alara heralds 2021-04-23 09:42:06 -04:00
Evan Kranzler
f7340a946e text fixes 2021-04-22 08:41:54 -04:00
Evan Kranzler
a61d5543fa replaced all instances of converted mana cost with mana value 2021-04-17 17:02:27 -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
Evan Kranzler
b8b8deaec2 [STX] Implemented Shadrix Silverquill 2021-04-16 20:43:14 -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
f4dd6ba1e7 added new EachTargetPointer object 2021-04-12 09:08:50 -04:00
Evan Kranzler
ceabb02270 [STX] Implemented Divide by Zero 2021-04-03 21:50:06 -04:00
Oleg Agafonov
0ab8d0d16f Fixed NPE 2021-03-07 23:45:50 +04:00
Daniel Bomar
bb0a995541
Tibalt, Cosmic Impostor - fixed that emblem can't cast not owned cards (#7598)
* Fixed ability.canChooseTarget not using correct playerId

* Fixed Necrotic Plague

* Revert "Fixed Necrotic Plague"

This reverts commit 7659039670.

* Set target controller on Necrotic Plague and add check in canChooseTarget

* Add test for Tibalt + Ephemerate interaction

* Tests improved

Co-authored-by: Oleg Agafonov <jaydi85@gmail.com>
2021-02-22 23:06:43 +04:00
Oleg Agafonov
b6cb5cef9c Refactor: removed default comment headers 2021-02-21 08:15:16 +04:00
Oleg Agafonov
2dfde7f41a Refactor: correct predicate packages 2021-02-21 08:00:21 +04:00
Evan Kranzler
223c576359 [STX] Implemented Quandrix Command 2021-02-19 09:08:14 -05:00
Oleg Agafonov
dc0a29007c Commanders improves:
* [KHM] fixed that some effects can't find mdf commanders on battlefield (example: Fierce Guardianship, #7504);
* Oathbreaker: fixed that some cards that refer to commander can affects signature spells too;
2021-02-05 17:19:30 +04:00
Evan Kranzler
bc99de1a48 [KHM] fixed Frostpyre Arcanist being used incorrectly by AI (#7488) 2021-02-04 10:50:10 -05:00
Evan Kranzler
dacf30f4b9
Refactoring subtypes to make Maskwood Nexus work (ready for review) (#7432)
* removed and renamed SubTypeList

* updated subtype test

* refactored Changeling to be an ability that actually does something

* moved isAllCreatureTypes into SubTypes class

* renamed copyTo method to copyFrom

* added removeAllCreatureTypes where usable

* replaced some subtype methods

* replaced some more subtype methods

* replaced subtype mass add/remove methods

* updated more subtype methods

* fixed some errors

* made common shared creature type predicate

* refactored another card involving subtypes

* Added usage of object attribute in subTypes's write operations;

* Refactor: use same param styles in subtype methods

* Refactor: simplified usage of copy appliers;

* Refactor: fixed code usage in CopyApplier

Co-authored-by: Oleg Agafonov <jaydi85@gmail.com>
2021-01-26 08:52:35 -05:00