Ingmar Goudt
6eef8f9e0c
add assertions for winning and losing the game
2021-05-13 13:19:08 +02:00
Ingmar Goudt
3fc28b3c03
add afr tests
2021-05-12 23:52:23 +02:00
Evan Kranzler
d1f51cae2f
[ZNR] fixed Ashaya, Soul of the Wild and Volrath's Shapeshifter interaction ( fixes #7812 )
2021-05-12 09:41:06 -04:00
Evan Kranzler
f68ed68034
[ZNR] added currently failing test for Ashaya, Soul of the Wild and Volrath's Shapeshifter ( #7812 )
2021-05-12 09:13:05 -04:00
Evan Kranzler
59f02ad17a
[KHM] added test for Crippling Fear ( #7815 )
2021-05-11 09:03:35 -04:00
Evan Kranzler
8d0efaabc9
ignored now failing test (not sure what to replace it with)
2021-05-07 08:45:20 -04:00
Evan Kranzler
7915e74208
[ICE] fixed Zur's Weirding not allowing players to choose not to pay life ( fixes #7793 )
2021-05-04 09:31:18 -04:00
Evan Kranzler
970427e23f
[ULG] reworked Goblin Welder and added currently failing test ( #7672 )
2021-05-04 07:35:53 -04:00
Evan Kranzler
0eb539e016
[PLC] fixed Wild Pair and 0 toughness creatures ( fixes #7798 )
2021-05-03 09:26:39 -04:00
Evan Kranzler
77d792bbaf
fixed a test failure
2021-04-30 08:32:26 -04:00
Ingmar Goudt
251e141b50
test for issue #7772
2021-04-26 22:49:48 +02:00
Evan Kranzler
d6c3ef33f0
[STX] added booster collation
2021-04-25 22:19:00 -04:00
Ingmar Goudt
45a50d9707
Add Deicide Test
2021-04-26 01:01:50 +02:00
Ingmar Goudt
25ad3705ff
add RiteOfPassageTest for #7740
2021-04-26 00:15:16 +02:00
Evan Kranzler
e56264ff74
fixed test failures
2021-04-22 20:45:25 -04:00
Evan Kranzler
054af6afde
fixed a test failure
2021-04-21 09:34:45 -04:00
Evan Kranzler
fbbdb2431d
moved a misplaced test
2021-04-19 09:33:56 -04:00
Evan Kranzler
e0aad69fe0
fix failing test
2021-04-18 18:44:00 -04:00
Evan Kranzler
40a374b407
un-reverted change, fixed test failure
2021-04-18 08:12:32 -04:00
Evan Kranzler
eda562fcda
fixed a test failure
2021-04-18 07:47:42 -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
af0178962d
[STX] fixed Plumb the Forbidden ability not triggering ( fixes #7755 )
2021-04-17 12:44:49 -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
29f7555ac3
[STX] fixed Star Pupil not adding counters ( fixes #7744 )
2021-04-15 09:45:12 -04:00
Evan Kranzler
e4c7b5da53
[STX] Implemented Radiant Scrollwielder
2021-04-13 17:58:47 -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
734bd6f118
fixed Blatant Thievery test failure
2021-04-04 13:19:15 -04:00
Evan Kranzler
8f37428518
[ELD] fixed issues with Robber of the Rich
2021-03-30 17:48:46 -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
d54e1c6eac
[DTK] updated implementation of spells which reveal dragon cards as a cost
2021-03-23 19:44:45 -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
991f154cd7
[IKO] small nonfunctional change to Zirda, the Dawnwaker test
2021-03-15 10:17:04 -04:00
Evan Kranzler
5e2738aab9
[IKO] fixed issue with Zirda, the Dawnwaker static ability not working when reanimated
2021-03-14 18:49:32 -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
13ac8f2c01
[IKO] added test for Zirda, the Dawnwaker
2021-03-14 11:40:08 -04: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
Oleg Agafonov
53a2021a12
* Caller of the Hunt - fixed rollback error on usage, added AI support for the card;
2021-03-07 23:41:52 +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
0e916b6e29
Dev: added additional info to some classes for easy debug;
2021-03-07 17:16:54 +04:00
Oleg Agafonov
b36f915d74
* Copy spell - improved support, now all copied spells are independent (bug example: Seasons Past fizzled after copy resolve, see #7634 , 10f8022043
);
2021-03-06 19:32:17 +04:00
Evan Kranzler
425c1eda26
[TSR] added set
2021-03-05 18:17:01 -05:00
Oleg Agafonov
712cf4576d
* Gain abilities - fixed that objects can get only one instance of triggered ability instead multiple (example: 2+ cascades from copies of Imoti, Celebrant of Bounty, f52753ad61
);
2021-03-05 16:22:46 +04:00
Oleg Agafonov
4e79c83784
Test framework: fixed missing range info for added cards (some ETB effects were broken on "put to battlefield" command usage);
2021-03-05 15:12:47 +04:00
Evan Kranzler
28c0bd55e8
added test for Muraganda Petroglyphs/Tarmogoyf/Muraganda Petroglyphs
2021-03-03 09:06:39 -05:00
Evan Kranzler
3b5147f6ee
updated some methods to support collections of card subclasses
2021-03-02 09:41:39 -05:00
Oleg Agafonov
098796f86e
* Commander: fixed that non hand abilities are castable from command zone (example: Escape, Jumpstart, see #7632 );
2021-03-01 01:14:00 +04:00
Evan Kranzler
6091c7eae3
fixed trample and deathtouch not working when deathtouch is gained by an outside source ( fixes #7633 )
2021-02-28 09:34:09 -05:00
Evan Kranzler
2daf1945e7
[RTR] reworked Nivmagus Elemental and added test
2021-02-27 15:35:04 -05:00
Oleg Agafonov
9d72dad674
[ZNE] added images download
2021-02-27 22:16:19 +04:00
Oleg Agafonov
0d885af05e
Tests: fixed random fails;
2021-02-27 20:36:06 +04:00
Oleg Agafonov
dda69cd009
* AI: improved support of "as though mana" abilities (now computer can choose correct mana ability to pay, example: Draugr Necromancer);
...
* Dev: added card's LKI support of multi part cards (mdf/split/adventure);
* Dev: improved support of adding/removing counters from mdf cards;
* Draugr Necromancer - fixed support of mdf/split/adventure cards (#7620 );
2021-02-27 20:14:12 +04:00
Daniel Bomar
73f594583f
[KHM] Fixed Draugr Necromancer being unable to cast Adventures
2021-02-26 16:10:46 -06:00
Daniel Bomar
27c0f75302
Fixed Archfiend's Vessel not moving to exile ( fixes #7622 )
2021-02-25 16:39:20 -06:00
Evan Kranzler
c01e1cd133
[LEA] added test for Forcefield
2021-02-24 20:55:22 -05:00
Evan Kranzler
f5f7638216
[KHM] updated Draugr Necromancer, added test ( #7620 )
2021-02-23 19:11:21 -05:00
Evan Kranzler
bac2585d83
[KHM] fixed Draugr Necromancer not allowing snow mana to be used for exiled cards
2021-02-23 13:47:23 -05:00
Evan Kranzler
683d5e7c25
[KHM] added new test for Maskwood Nexus
2021-02-23 12:25:08 -05:00
Evan Kranzler
0a68507ef0
reenabled/removed/fixed some ignored tests
2021-02-23 10:37:17 -05:00
Evan Kranzler
2ffa719278
fixed issue with Kruphix, God of Horizons and Horizon Stone causing endless replacement effect loop
2021-02-23 08:41:54 -05:00
Evan Kranzler
5390963d38
Fix handling of damage to permanents (WIP) ( #7592 )
...
* initial refactor of damage events
* cleaned up some instances of classes that need to be removed
* removed old damage event classes
* removed outdated imports
* temporarily refactor Everlasting Torment (this will need to be changed more)
* updated damage handling to use new changes
* some reworking of lethal/excess damage plus a test
* updated damage marking to handle planeswalkers
* updated implementation of Phyrexian Unlife
* updated implementation of Everlasting Torment
* added some more excess damage tests
* small change to wither check
2021-02-22 17:11:24 -05:00
Oleg Agafonov
39f6b69391
Merge pull request #7584 from weirddan455/cascade
...
Implemented updated Cascade ruling 702.84a
2021-02-22 23:03:56 +01:00
Oleg Agafonov
91f4d78992
Changes related to Cascade ability ( #7583 ):
...
* Cascade: added correct spell ability choose for forced cast of mdf and adventure cards (can contains one or both sides);
* Cascade: added tests from latest oracle changes;
* AI: improved spell ability choose for forced cast (example: cast target card without mana cost);
* GUI: improved spell ability choose for forced cast (now you can see only castable spells to choose);
* Other: fixed wrong PlayFromNotOwnHandZone in some cards, fixed NPE;
2021-02-23 02:00:38 +04:00
Evan Kranzler
bd3777997e
updated various cards to improve how they handle exiling with info ( #7615 )
2021-02-22 15:26:58 -05: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 7659039670293ce1ea428dad042511d9d75f9da6.
* 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
4050577d6b
Tests: added tests for Moritte of the Frost (related to #7546 );
2021-02-22 21:55:17 +04:00
Oleg Agafonov
2accab79c5
* Spark Double - fixed duplicated counters on copying of another Spark Double ( #7553 );
2021-02-22 21:22:31 +04:00
Oleg Agafonov
f6c0f4c712
* Geode Golem - fixed duplicated commander tax on damage trigger ( #7593 );
2021-02-22 16:11:13 +04:00
Oleg Agafonov
650acf9e1e
Test framework: fixed support of chooseAbilityForCast for commanders, added destroy target custom effect ( #7593 );
2021-02-22 16:05:48 +04:00
Oleg Agafonov
a377999f57
* Desertion - fixed rollback error on fizzled counter spell ( #7613 );
2021-02-22 08:51:07 +04:00
Oleg Agafonov
b6cb5cef9c
Refactor: removed default comment headers
2021-02-21 08:15:16 +04:00
Oleg Agafonov
d343511d73
* Elsha of the Infinite - fixed that it gives flash ability to cards in the hand instead library's top card ( closes #7605 );
2021-02-21 07:43:29 +04:00
Oleg Agafonov
48e9cc3e07
PlayTheTopCard improves: added correct usage check, fixed outdated rule texts, Bolas's Citadel simplified (related to #7605 );
2021-02-21 05:48:09 +04:00
Evan Kranzler
a8bda04daf
[GTC] updated implementation of Bane Alley Broker
2021-02-19 14:47:47 -05:00
Evan Kranzler
4db47adc19
[LRW] added back previously failing test for Aquitect's Will
2021-02-19 08:29:38 -05:00
Evan Kranzler
8dde735851
fixed an issue with modular keyword and LKI
2021-02-18 13:35:49 -05:00
Evan Kranzler
440adfa18b
fixed The Ozolith test (it wasn't actually failing)
2021-02-18 13:29:06 -05:00
Evan Kranzler
9426da5ad3
[LRW] added test for Aquitect's Will (partially fails) ( #7597 )
2021-02-18 09:16:30 -05:00
Evan Kranzler
57dfba99b7
added a failing test for planeswalker damage
2021-02-16 10:23:20 -05:00
Evan Kranzler
8a16eda062
Implement new way to generate boosters using box mapping info (WIP) ( #7529 )
...
* [THB] added initial common/uncommon collation mechanism
* [THB] added rare/mythic and lands to pack generation
* fixed some card names
* broke out collation into its own separate classes
* built collation into ExpansionSet
* added note about collation information
* [KHM] added collation info
* updated collation to use collector number rather than name
* added shuffle to set constructor
* added some notes on collation methods
2021-02-12 17:35:28 -05:00
Oleg Agafonov
10e557b873
* Performance: memory usage optimization for deck editor (part 2 of removed bloated usage of ManaCosts -> ManaColor objects, see #7515 );
2021-02-12 22:12:18 +04:00
Evan Kranzler
21ef775700
[ZNR] updated booster generation and added test
2021-02-08 18:22:55 -05:00
Evan Kranzler
a90e9923f5
[KHM] fixed issues with booster collation, added test ( fixes #7521 )
2021-02-08 14:04:10 -05:00
Oleg Agafonov
cf216c6802
Prepare new release
2021-02-07 22:24:40 +04:00
Oleg Agafonov
9b8df48183
Improved commander support for mdf/split/adventure cards (additional fixes for ac98a3a31a
)
2021-02-06 17:07:10 +04:00
Oleg Agafonov
f692a1f097
* Choice of Damnations - improved AI support, fixed rollback error in AI games;
...
* Pain's Reward - improved AI support, fixed rollback error in AI games;
* Volcano Hellion - improved AI support, fixed rollback error in AI games;
2021-02-06 12:48:53 +04:00
Oleg Agafonov
ac98a3a31a
* Commander: fixed duplicated triggers after play (example: Esika, God of the Tree, see #7501 , #7503 , #7505 );
2021-02-06 10:51:41 +04: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
Daniel Bomar
cd9c57fead
[KHM] Dream Devourer - Fixed being unable to cast foretold MDFCs, split cards, and adventure cards ( #7498 )
...
* [KHM] Dream Devourer - Fixed being unable to cast foretold MDFCs, split cards, and adventure cards
* [KHM] Dream Devourer - Fixed mana costs and added check for MDFC lands
* [KHM] ForetellAbility - Add text when selecting which half of split card to cast
* Updated test for Dream Devourer
2021-02-04 16:27:51 -06:00
Oleg Agafonov
0de71e0348
* Flashback ability - fixed that split cards shows duplicated abilities in choose dialog ( #7500 );
2021-02-04 21:55:56 +04:00
Evan Kranzler
bc99de1a48
[KHM] fixed Frostpyre Arcanist being used incorrectly by AI ( #7488 )
2021-02-04 10:50:10 -05:00
Oleg Agafonov
f38639e1db
Token's zone change counter (ZCC) improves:
...
* Now token's zcc uses same logic as card's zcc: enters to battlefield with +1 zcc instead +0 zcc
* It can improve support of copied spells that store zcc related data (bug example: lost kicked status for copied spell/token);
* Kicker abilities - improved support with copied creature spells (example: Verazol, the Split Current, #7431 , #7433 );
* Refactor: simplified kicker code;
2021-02-04 19:15:54 +04:00
Oleg Agafonov
4b9de96a6b
Test framework: added support to put mdf cards on battlefield by cheats or unit tests;
2021-02-03 14:23:50 +04:00
Oleg Agafonov
c03279d835
* Repeated Reverberation - fixed rollback error on creatures cast ( #7474 );
2021-02-03 10:27:23 +04:00
Evan Kranzler
a70e50419b
fixed a random test failure
2021-02-02 17:10:17 -05:00
Oleg Agafonov
31d134843a
* Modal double faces cards - fixed that color identity doesn't contains second side colors;
2021-02-02 20:22:12 +04:00
Oleg Agafonov
2393485320
* Mana increase effects - fixed that some infinite mana combos gives 0 mana on too much permanents/effects (example: Nyxbloom Ancient);
2021-02-02 19:26:49 +04:00
Oleg Agafonov
4aeb94b41c
Tests: added test for Spreading Plague from #6984
2021-02-02 07:33:31 +04:00
Oleg Agafonov
50e5809a79
New commander types support:
...
* [KHM] fixed legendary status of mdf cards (closes #7370 , #7404 , #7465 , #7481 );
* Game: added support of split cards as commander (signature spell);
* Game: added support of adventure cards as commander;
* Game: added support of modal double faces cards as commander;
2021-02-02 06:40:49 +04:00
Evan Kranzler
14f7c02b1f
[KHM] fixed Codespell Cleric not triggering correctly
2021-01-31 21:26:27 -05:00
Evan Kranzler
df38d7213e
[KHC] text fixes
2021-01-31 15:01:02 -05:00
smartinsempere
68613672b1
Fire discard cards event when discarding as a cost ( #7436 )
...
Fire discard cards event when discarding as a cost, fixes #7368
2021-01-31 23:03:30 +04:00
Oleg Agafonov
2d96d36ec8
AsThough effects improves and fixes:
...
* AsThough: added documentation about code usage and restrictions;
* AsThough: added additional checks for correct usage;
* AsThough: simplified some code;
* PlayFromNotOwnHandZoneTargetEffect - added permanents support as targets;
* Release to the Wind - fixed that it can't cast exiled cards (#7415 , #7416 );
* Test framework: fixed that checkExileCount checking card's owner;
* GUI: fixed typo in Trample card icons;
2021-01-31 22:32:23 +04:00
Evan Kranzler
3a4b0159a9
Add a limit to how many tokens are made ( #7469 )
...
* added a simple token limit
* updated implementation of token limit
* added token limit test
2021-01-31 12:55:30 -05:00
Evan Kranzler
bcdaebf3ee
fixed some more text
2021-01-30 11:08:35 -05:00
Oleg Agafonov
a1da5ef437
* GUI: new reworked GUI and card render engine, card icons and dozens of other fixes (see full list in related PR);
2021-01-30 16:38:55 +04:00
Oleg Agafonov
df98cc3e62
[KHM] foretell improves (related to bc25c3d60a
):
...
* reverted code format of AsThoughEffectType;
* fixed disabled test;
* added test for Dream Devourer;
* simplified some code;
2021-01-30 11:21:51 +04:00
jeffwadsworth
bc25c3d60a
- [KHM] Added Cosmos Charger and Dream Devourer. Refactored ForetellAbility to work with Dream Devourer. Text fixes are required in some cases. Ignored a test for foretell.
2021-01-29 20:35:35 -06:00
Oleg Agafonov
91bac931b7
[KHM] fixed Vorinclex, Monstrous Raider - can't double counters on planeswalkers ( #7463 );
2021-01-29 17:41:49 +04:00
Oleg Agafonov
6f2ce47885
Tests: added verify test for wrong mdash usage and fixed related cards ( #7457 ), added tests for ( #7460 );
2021-01-29 11:35:13 +04:00
Oleg Agafonov
e3db50f111
* Double faces and adventure cards: improved support with some "exile and cast" effects like Hostage Taker ( #7446 );
2021-01-27 10:13:10 +04:00
Evan Kranzler
a535cb5adc
Refactoring methods which add counters to track which player adds the counters (ready for review) ( #7448 )
...
* added parameter for player adding counters to players
* added parameter for player adding counters to cards/permanents
* updated methods to use new parameter
* fixed a few initial errors
* refactored instances of cards that add counters by a player other than the controller
* fixed some instances of incorrect arguments
* refactored abilities that trigger off of a particular player adding counters
* a few more cards that were missed
* [KHM] Implemented Vorinclex, Monstrous Raider
* added test for Vorinclex, Monstrous Raider
* fixed a test failure
2021-01-26 19:06:13 -05:00
Evan Kranzler
13ce938fd0
[KHM] added test for Giant Ox
2021-01-26 15:51:35 -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
Jeff
dbf0789238
- Fixed test
2021-01-25 19:13:46 -06:00
Evan Kranzler
83c103f17f
[KHM] Implemented Karfell Harbinger
2021-01-24 15:44:03 -05:00
Oleg Agafonov
c3b391b42f
Fixed verify tests config
2021-01-23 09:45:25 +04:00
Evan Kranzler
e5344b7a96
Refactoring snow mana to allow tracking how much is spent (Ready for Review) ( #7406 )
...
* refactored mana methods to WUBRG order
* more WUBRG refactoring
* added new mana tracking object
* fixed code error
* fixed missing mana count
* fixed null pointer exception in tests
* fixed issue with equality
* more equality fixes
* some cosmetic changes to ManaTest
* added copy method to setToMana
* fixed some initialization issues
* fixed serialization issue
* [KHM] Implemented Search for Glory
* updated mana handling to track snow
* added tests for snow mana tracking
* updated implementation of setter methods
* updated paramater to use copy methods
* fixed snow mana test to ensure proper mana tapping
* replaced instances of getPayment with getUsedManaToPay
* updated tracking of snow mana
* reverted snow mana tracking removal
* finished reverting change
2021-01-21 18:13:51 -05:00
Oleg Agafonov
286cc63342
Test framework: improves
2021-01-19 08:30:01 +04:00
Oleg Agafonov
639c68cd76
Additional tests and fix for God-Eternal Kefnet ( #7397 );
2021-01-18 04:23:46 +04:00
Evan Kranzler
5d7fc394fd
[KHM] Implemented Rune of Flight
2021-01-14 17:14:07 -05:00
LevelX2
9fc0e2f25a
* Added some trace output for continous effects and triggered abilities. Changed duration of AffinityEffect to WhileOnStack to prevent wrong handling for removement of the effect.
2021-01-13 09:14:29 +01:00
Oleg Agafonov
6dcbcbe962
Tyvar Kell and gain ability fixes:
...
* GainAbilityTargetEffect - reworked to support static/dynamic targets, added support of spells (card + related permanent);
* SpellCastControllerTriggeredAbility - now it can setup the target to a card instead a spell;
* Added checks/errors on wrong ability adding code (example: if you add permanent's ability by game state instead permanent's method);
* Tyvar Kell Emblem now use a standard code;
* Test framework: added additional logs for some errors;
2021-01-12 04:41:35 +04:00
LevelX2
c67ce93ec4
* Fixed some problems with color changes of cards and spells - e.g. Painter's Servant ( fixes #7325 fixes #6487 ).
2021-01-08 11:03:39 +01:00
Evan Kranzler
06b0e4f247
fixed a test failure
2021-01-07 19:40:45 -05:00
LevelX2
8098dd690c
* Fixed that effects with custom duration are not automatically removed from the game if source permanents leaves the game ( fixes #6997 ).
2020-12-28 18:36:05 +01:00
Oleg Agafonov
aa7226a1af
* Archive Trap - fixed that it doesn't apply alternative cost after searched library ( #7274 );
2020-12-28 07:10:15 +04:00
Oleg Agafonov
767644f1c8
GUI: fixed that user can target/click on second side of mdf card instead the main side (related to #7297 );
2020-12-27 01:39:18 +04:00
Ingmar Goudt
34e9c2fdfb
Merge branch 'master' of https://github.com/magefree/mage
2020-12-26 15:26:17 +01:00
Oleg Agafonov
81e0cc6403
Merge pull request #7158 from fburato/app-wiring-refactor
...
Application wiring refactor and externalise configuration path for server
2020-12-26 07:42:46 +01:00
Oleg Agafonov
a307e5934f
Improved some source related filters in effects:
...
* Fixed that some cards ignore range of influence or source related filters;
* Improved ChosenSubtypePredicate to work with gain abilities;
2020-12-25 19:06:36 +04:00
Oleg Agafonov
6f34d514f9
* Archelos, Lagoon Mystic - fixed broken ETB effect ( #7283 );
2020-12-24 20:24:42 +04:00
Oleg Agafonov
64e948e4b3
* AI: improved game performance by x10 for cards with target amount;
...
AI: added targeting name and amount info to simulation logs;
AI: removed duplicated target variations from target amount simulations;
2020-12-24 15:02:28 +04:00
Ingmar Goudt
f0dea44773
small Negan fix
2020-12-23 21:38:42 +01:00
LevelX2
2ce90b1e0a
* Fixed that the dies trigger of Ashen Rider also triggers if Ashen Rider is copied by other creatures (e.g. Volrath the Shapestealer) ( fixes #7107 ).
2020-12-23 18:02:00 +01:00
Oleg Agafonov
10cf9c4a4e
* Genesis Ultimatum - fixed rollback error on usage with modal double faces cards ( #7275 );
2020-12-23 09:15:04 +04:00
Oleg Agafonov
796c8fb22e
Tests: added Inferno Titan AI tests, related to #6330 ;
2020-12-23 02:51:52 +04:00
Oleg Agafonov
255c292104
* Deals damage divided as you choose - fixed that some cards can't choose planeswalkers (example: Arc Lightning, see #7276 );
...
Refactor: simplified FilterCreaturePlayerOrPlaneswalker to use single permanent filter;
2020-12-23 02:31:41 +04:00
Oleg Agafonov
347a3b1e1a
* Jeweled Lotus - fixed that mana can't be used to cast commanders without normal mana ( #7272 );
2020-12-22 23:22:41 +04:00
LevelX2
29184316f2
* Cumulative Upkeep - Fixed that a permanent with CU was wrongly sacrificed if the control of the permanent has changed since CU begin of upkeep trigger was put on the stack. Added tests for CU.
2020-12-21 14:36:22 +01:00
Oleg Agafonov
cc5fce4256
Prepare new release
2020-12-19 23:59:44 +04:00
Oleg Agafonov
a1ed8e01b3
[CMR] fixed Eligeth, Crossroads Augur - wrong event type for replacement effect ( #7234 );
2020-12-19 18:45:49 +04:00
Oleg Agafonov
a50f3c5416
Tests: added Hans Eriksson's play tests, related to #7234 ;
2020-12-19 18:35:02 +04:00
Oleg Agafonov
9f67765e2d
[CMR] fixed Armix, Filigree Thrasher - not working card, missing target ( #7234 );
2020-12-19 18:18:47 +04:00
Oleg Agafonov
1b830032ac
* Militant Angel - fixed rollback error on usage ( #7239 );
2020-12-19 04:48:55 +04:00
Oleg Agafonov
3cccad2138
Test framework: added dynamic code support in unit tests (command: runCode - use it same way as real time checks);
2020-12-19 04:46:19 +04:00
Oleg Agafonov
384ff2e7ac
* Gain cost modification abilities - fixed that commanders can't be played without full mana (example: gained Affinity by Mycosynth Golem, gained Convoke by Chief Engineer, see #7249 #7171 , #6698 );
2020-12-18 18:33:44 +04:00
Oleg Agafonov
53c5abea14
Added additional test for #7251 ;
...
Added last error info in too many errors game message;
2020-12-18 16:46:05 +04:00
Oleg Agafonov
c13d07b73d
[CMR] fixed Rakshasa Debaser - class cast exception in filter on usage;
2020-12-18 15:54:59 +04:00
LevelX2
d39575c24e
* Fixed bug in DamagedBatchEvent ( fixes #7241 ). Fixed some spelling in test classes.
2020-12-17 17:39:17 +01:00
Oleg Agafonov
3f44d9eef3
* Exile card and return it from exile - fixed rollback error on commander creature exile ( #7250 );
...
[CMR] fixed PromiseOfTomorrow - not working ability;
2020-12-17 10:07:15 +04:00
Oleg Agafonov
926f5f0621
* Copy spell for each other permanents that it could target - fixed that AI can freeze the game, fixed wrong highlighting;
2020-12-17 06:37:41 +04:00
Oleg Agafonov
f8206df3ba
[CMR] fixed Sphinx of the Second Sun - wrong extra phase and server freeze on usage;
2020-12-16 04:17:03 +04:00
Oleg Agafonov
ac7910159e
Tests: added game stats table after load testing finished;
2020-12-16 01:32:24 +04:00
Oleg Agafonov
0c2c33e940
* Kicker abilities - fixed that some cards don't see kicked status of multikicker spells (example: Hallar, the Firefletcher, #4895 );
2020-12-15 21:23:09 +04:00
Oleg Agafonov
4d362d7edc
* Copy spells - improved combo support with other abilities like Kicker or Entwine ( #7192 ):
...
* Now ZCC of copied spells syncs with source card or coping spell (allows to keep ability settings that depends on ZCC);
* Fixed bug that allows to lost kicked status in copied spells after counter the original spell or moves the original card (see #7192 );
* Test framework: improved support of targeting copy or non copy spells on stack;
2020-12-15 20:06:53 +04:00
Oleg Agafonov
936be75a66
Tests: added test for Krark, the Thumbless ( #7198 )
2020-12-14 22:40:12 +04:00
Oleg Agafonov
c1dfbbda63
Test framework: added support for flip coin tests (command: setFlipCoinResult);
2020-12-14 03:00:38 +04:00
Oleg Agafonov
fde24f349f
* Modal Double Faces cards - fixed that it can be returned to battlefield as second side instead the main side only ( #7212 );
2020-12-14 00:57:30 +04:00
Oleg Agafonov
35f5a8257b
Refactor: replaced sourceId by source and introduced source param in some methods (part 2);
2020-12-13 02:01:49 +04:00
Oleg Agafonov
db239a1055
Refactor: replaced sourceId by source and introduced source param in some methods;
2020-12-12 20:23:19 +04:00
Oleg Agafonov
c548b3fd1d
[CMR] fixed Hellkite Courser - missing command zone support in target ( #7198 );
2020-11-28 23:14:24 +04:00
Oleg Agafonov
2b78388eab
[CMR] fixed Akroma's Will - missing copy of new condition in modes ( #7210 );
...
Improved compatibility of new modes condition with choose dialogs and test framework;
2020-11-28 19:49:16 +04:00
Oleg Agafonov
64821a50d3
[CMR] fixed Akroma, Vision of Ixidor - missing target in effect ( #7209 );
2020-11-28 14:22:38 +04:00
Oleg Agafonov
c2a636e2b2
[CMR] implemented Opposition Agent and other changes:
...
* You may play cards and you may spend mana of any color - refactored cards to use same code;
* Library search event allows to change searching controller (gives full game control for another player);
* Library searched event allows to remove founded cards from result;
* Improved library searching effects with Panglacial Wurm's effects;
* Little changes to test framework;
2020-11-24 23:49:19 +04:00
LevelX2
13fa98ec44
* Added missing check for damage prevention by protection for planeswalkers ( fixes #7194 ).
2020-11-24 17:33:03 +01:00
LevelX2
137070d523
* Chorus of the Conclave - Fixed a problem with game copy logic (related to rollback and AI) ( fixed #7195 ).
2020-11-24 16:07:53 +01:00
Oleg Agafonov
c1e7a08c68
* Modal Double Faces cards - fixed that a second side can't be played from non hand zones in some cases ( #7200 );
...
Play lands from graveyard effect - reworked as AsThoughEffect;
2020-11-23 02:30:54 +04:00
Oleg Agafonov
24e2728fca
* Double lands - fixed duplicated choices in choose dialog ( #7197 );
2020-11-21 12:44:23 +04:00
Oleg Agafonov
aeb2d31d47
[CMR] fixed Gilanra, Caller of Wirewood - duplicated triggers on unused mana ( #7191 );
2020-11-20 12:53:13 +04:00
Oleg Agafonov
39a556f233
* Long-Term Plans and Volrath's Dungeon - fixed that it shows card name in game logs to other players ( #7179 );
2020-11-18 12:44:58 +04:00
Oleg Agafonov
656653f38b
Modal Double Faces cards fixes:
...
* Fixed that mdf card can duplicate triggers (example: Skyclave Cleric, see #7187 );
* Fixed that mdf card can raise triggers from another side (example: Kazandu Mammoth, see #7180 );
2020-11-18 02:04:32 +04:00
Evan Kranzler
01a0d23a55
removed method for preventing library search triggers
2020-11-13 09:40:18 -05:00
Francesco Burato
6e3750d50a
[app-wiring-refactor]: Apply review comments:
...
- Add reference to original library in `FluentBuilder`.
- Change `I<Name>` notation to `<Name>Impl` notation.
- Move error config to test resources
- Add comment with config instruction
- Add config to the documentation
2020-11-12 20:12:50 +00:00
Francesco Burato
d0c2135e17
[app-wiring-refactor]: Remove static initialisation
...
- Remove all enum static managers
- Introduce interfaces for the managers
- Define new application wiring class (`ManagerFactory`)
- Externalise the configuration
2020-11-12 20:12:48 +00:00
Oleg Agafonov
ea46afbe62
Prepare new release
2020-11-10 13:11:45 +04:00
Oleg Agafonov
5578437dde
* GUI: increased ignore list max size from 100 to 500;
2020-11-09 00:42:43 +04:00
Oleg Agafonov
cff67085b7
[ZNR] Fixed MDF cards with put to battlefield effects ( #7174 )
2020-11-07 21:24:59 +04:00
Oleg Agafonov
02e19f0a3f
[ZNR] Improved modal double faces cards implementation and more tests ( #7012 )
2020-11-01 10:03:09 +01:00
Oleg Agafonov
e4c8ba046a
[ZNR] Improved modal double faces cards implementation and more tests ( #7012 )
2020-11-01 10:03:09 +01:00
Oleg Agafonov
19cd742f40
Tests: fixed BlazingTorchTest
2020-11-01 10:03:09 +01:00
Oleg Agafonov
a73c9bddae
[ZNR] Added all modal double faces cards ( #7012 )
2020-11-01 10:03:09 +01:00
Oleg Agafonov
70514124a6
* Disrupting Shoal - fixed that it counter spells by CMC from any payed split card's parts instead combined CMC only;
2020-11-01 10:03:09 +01:00
Oleg Agafonov
8ac78b4b9e
Added modal double faces cards implementation (MDF cards, #7012 )
2020-11-01 10:03:09 +01:00
Oleg Agafonov
bbed5a16b8
Test framework: added library realtime check command;
2020-11-01 10:03:09 +01:00
Evan Kranzler
8617bc128e
Fixing issues with Changelings and general problems with creature types (ready to merge) ( #7098 )
...
* updated Changelings to use setIsAllCreatureTypes
* updated Dr Julius Jumblemorph and Mistform Ultimus to not use changeling
* added test for Mistform Ultimus
* updated effects which give all creature types to controlled creatures
* updated effects which give all creature types to targeted creatures
* Update LoseAllCreatureTypesTargetEffect.java
* updated effects which give all creature types to attached creatures
* Update EgoErasure.java
* added another test for changelings
* updated two tokens I left out before
* updated hasSubtype
* updated shareCreatureTypes
* fixed an incorrect test
* cleaned up some cards which check for shared creature types
* added new changeling test
* fixed issue with shareCreatureTypes
* fixed a text issue
* added new tests for subtype effects
* various individual card fixes and cleanups
* fixed and updated various effects
* many more fixes
* a few more fixes
* added test for One with the Stars
* added changeling verify test
* updated effects which add additional subtypes
* more miscellaneous fixes
* added additional test
* some fixes for card type checks
* updated methods for adding types to make it easier to avoid duplicates and illegal additions
* small test update
* fixed a recursive loop issue
* fixed another error
* fixed it for real this time
* streamlined type removal process
* streamlined subtype set generation
2020-10-30 22:32:59 -04:00
Evan Kranzler
a66428b2b6
updated implementation of equipment which use themself in a gained ability
2020-10-22 21:37:03 -04:00
Evan Kranzler
9f7a873e5b
added test for Omnath, Locus of Rage and protection effects ( closes #7133 )
2020-10-14 20:36:50 -04:00
Evan Kranzler
e65d769e47
fixed Chainer, Nightmare Adept not triggering off of creatures owned by other players
2020-10-12 21:08:37 -04:00
Evan Kranzler
92445ace3d
added more tests for Pelt Collector
2020-09-29 20:41:47 -04:00
Evan Kranzler
3f4698434b
fixed random mystery booster test failures
2020-09-29 19:35:32 -04:00
Evan Kranzler
827ffb5fb2
changed how effects are applied for triggered abilities, added test ( fixes #7083 )
2020-09-29 18:55:51 -04:00
Evan Kranzler
27a4f27727
reworked Chainer, Nightmare Adept and added test
2020-09-29 18:03:56 -04:00
Evan Kranzler
4162c3e5cb
[ZNC] fixed Whispersteel Dagger, added test ( #7085 )
2020-09-28 19:22:30 -04:00
Evan Kranzler
7647a3d8f0
Support for copying permanent spells (WIP, do not merge) ( #7084 )
...
* added initial support for permanent tokens
* [ZNR] Implemented Lithoform Engine
* [ZNR] Implemented Verazol, the Split Current
* permanent spell tokens no longer count as created
* small change to token generation
* added test, currently incomplete
* found a potential solution for kicker issue, possibly too much of a hack
* fixed a test failure
* reversed hack changes
* skipped failing tests
* added more tests
2020-09-27 10:54:44 -04:00
Evan Kranzler
ee94eb3553
[ZNR] small update to Ashaya test
2020-09-24 22:07:18 -04:00
Evan Kranzler
5cad7d9bff
[ZNR] added test for Ashaya, Soul of the Wild (needs more cases)
2020-09-24 21:59:36 -04:00
Evan Kranzler
66235dc6e0
[ZNR] added a test for Moraug, Fury of Akoum
2020-09-23 21:18:15 -04:00
Evan Kranzler
a022d79b65
fixed Pelt Collector implementation, expanded test
2020-09-22 17:23:42 -04:00
LevelX2
2fec825523
* Some standardisation of dies trigger handling ( fixes #7063 Midnight Reaper triggers when dies face down).
2020-09-18 16:15:21 +02:00
LevelX2
e1ab14e0f5
Merge pull request #7071 from Dilnu/Haruspex
...
Create a test to verify Grim Haruspex's ability.
2020-09-18 13:19:33 +02:00
LevelX2
1125d9cca1
Added a test. Some mionor changes.
2020-09-17 10:02:08 +02:00
LevelX2
4050631807
Fixed that some AlternativeCostSourceAbilities had no sourceId set.
2020-09-17 10:00:46 +02:00
Oleg Agafonov
6e0c7e868c
Additional and alternative costs improved:
...
* Now player must choose additional costs before ability's modes;
* Fixed broken kicker ability from ZNR (see comments from d4ca287f0f
);
* Improved compatibility of additional cost with cost modification effects (fixed that optional multi-costs doesn't affected by cost modification);
* Improved compatibility of additional cost with alternative cost (some cards ignores additional cost on alternative usage, e.g. on play free);
2020-09-13 09:57:17 +04:00
Oleg Agafonov
586538a66c
Test framework: added fast command to add cost modification effect in test game (addCustomEffect_SpellCostModification)
2020-09-13 09:57:17 +04:00
Evan Kranzler
439303882c
updated cost adjustment for Mobilized District, added test
2020-09-10 17:08:01 -04:00
Evan Kranzler
4daaaddbb0
updated cost adjustment for Pteramander, added test
2020-09-10 17:07:29 -04:00
Evan Kranzler
649ff35359
[ZNR] small additional fix to party count test
2020-09-10 12:44:48 -04:00
Evan Kranzler
100c130cec
[ZNR] fixed party count including opposing creatures, updated test ( fixes #7061 )
2020-09-10 12:40:01 -04:00
Oleg Agafonov
5831ba81fc
Merge pull request #7030 from BrunoChevalier/master
...
Additional fixes for pvs-studio report, see #7021
* Rename BasicSaheekiSublimeArtificerTest.java to BasicSaheeliSublimeArtificerTest.java
* S3Uploader.java: Remove redundant null check
* Effects.java: remove redundant check. When in the else part, the lastRule already is guaranteed to not end on a dot
* TableController.java: change warning message when match == null to avoid nullpointer exception
* Reverted already fixed line from, see #7021
Co-authored-by: Oleg Agafonov <jaydi85@gmail.com>
2020-09-08 23:04:30 +02:00
LevelX2
d0ccafd2a8
Added test for Pako Arcane Retriever.
2020-09-08 15:29:58 +02:00
LevelX2
8e465acb11
Primordial Mist - Fixed selection of face down targets ( fixes #7045 ).
2020-09-08 13:14:15 +02:00
Evan Kranzler
91067e89cb
rewrote party count test to allow for more easily adding additional cases
2020-09-05 16:50:51 -04:00
Evan Kranzler
cc0bb84dad
[ZNR] Implemented party mechanic ( #7036 )
...
* added incomplete party count implementation
* updated party count implementation
* added party count test
* fixed tests, updated test framework
* added an additional test
* fixed some errors in party count computation, should be good now
* fixed a small error with test generation
* fixed an NPE issue
2020-09-03 19:22:05 -04:00
Evan Kranzler
0d12f566e5
fixed an NPE issue
2020-09-03 18:39:05 -04:00
Evan Kranzler
003fd098b0
fixed a small error with test generation
2020-09-03 18:36:27 -04:00
Evan Kranzler
86446f4977
added an additional test
2020-09-03 18:25:39 -04:00
Oleg Agafonov
535e49b89f
Test framework: added aliases support for activated abilities (related to #7036 );
2020-09-04 02:18:40 +04:00
Evan Kranzler
f0df4267a3
fixed tests, updated test framework
2020-09-03 18:12:43 -04:00
Evan Kranzler
fa40ffe837
added party count test
2020-09-03 16:34:25 -04:00
LevelX2
1f869fab4d
* Added Test for Plague Engineer.
2020-09-02 15:05:39 +02:00
LevelX2
61315ec741
* Improved some FixedTarget initializations.
2020-08-31 10:54:59 +02:00
Bruno Chevalier
1dccb62d10
Rename BasicSaheekiSublimeArtificerTest.java to BasicSaheeliSublimeArtificerTest.java
2020-08-31 10:51:24 +02:00
LevelX2
323b4f8880
* Fixed wrong Kard name in MTGO Legacy Cube July 2019 (Kozilek, Butcher of Truth), added a test.
2020-08-30 12:07:23 +02:00
Oleg Agafonov
87d8383eb8
* Undercity Reaches - fixed rollback error on plane's draw trigger
2020-08-29 20:40:02 +04:00
Oleg Agafonov
30fe344e23
Test framework: added planes support in tests (command: addPlane)
2020-08-29 20:38:57 +04:00
Oleg Agafonov
ede06098e0
Fixed typos in tests and additional refactor
2020-08-29 19:04:26 +04:00
LevelX2
f819340297
* Added Entwine Test.
2020-08-28 17:17:02 +02:00
LevelX2
83ac7f7bc2
* Nim Deathmantle - Fixed that creature was not returned to battlefield ( fixes #7018 ).
2020-08-28 13:46:21 +02:00
LevelX2
cd5c1c282c
* Angel of Jubilation - Fixed possible Null Pointer Exception in Player.canPayLifeCost method ( fixed #7019 ).
2020-08-28 09:26:38 +02:00
Oleg Agafonov
a0c16dc4e1
Added charset check and hint in startup logs (related to #7020 )
2020-08-28 08:34:01 +04:00
Oleg Agafonov
b610d0a31a
Added default charset information in startup logs
2020-08-28 07:33:42 +04:00
LevelX2
11de701ee8
Merge origin/master
2020-08-26 17:03:02 +02:00
LevelX2
863829085e
* Added a test.
2020-08-26 17:02:23 +02:00
Oleg Agafonov
6787688610
Tests: fixed random failed test testMysteryBooster1, removed redundant logs;
2020-08-26 14:20:39 +04:00
LevelX2
f1d2d2fb22
* Safe Passage - Fixed a problem that damage to player was not prevented ( fixes #6995 ).
2020-08-25 16:30:48 +02:00
LevelX2
b5a1971aa3
* Some minor changes.
2020-08-24 16:50:47 +02:00
LevelX2
149635a9f1
* Added test for Propaganda.
2020-08-23 11:36:01 +02:00
LevelX2
b14c9c341b
* Added test for Palace Jailer.
2020-08-23 10:51:08 +02:00
Oleg Agafonov
920697d2e5
Prepare new release
2020-08-23 01:52:55 +04:00
Oleg Agafonov
1b430e5d99
Added verify test to check missing second face cards in sets, fixed missing cards;
2020-08-22 18:48:15 +04:00
LevelX2
c16fb75668
* replaces all [source} by {this}. ATTENTION !!!: Only supporting [this} from now on in rule text.
2020-08-22 12:52:49 +02:00
LevelX2
d51acbf090
* Removed unused imports.
2020-08-22 11:51:34 +02:00
LevelX2
546205bba4
* Fixed failing test.
2020-08-22 11:26:21 +02:00
LevelX2
82ae1f9cb7
Revert "* Fixed failing test."
...
This reverts commit 7508de950d
.
2020-08-22 11:25:01 +02:00
LevelX2
7508de950d
* Fixed failing test.
2020-08-22 11:16:20 +02:00
LevelX2
01d0183e49
* Fixed failing test.
2020-08-22 10:46:44 +02:00
LevelX2
90c6637dc2
* Implemeented consumable flag for asThoughtEffects and a player choice which effect to use if multiple consumable effects allow the same action.
2020-08-21 21:24:42 +02:00
LevelX2
8105d8b26c
* Improved handling of asThoughtAs approval by abilities that allows a clear and easy assignment of the approving effect.
2020-08-21 14:58:22 +02:00
LevelX2
0565d32f55
* Added test for The Ur-Dragon.
2020-08-20 17:17:27 +02:00
LevelX2
783239e79e
* Aminatou's Augury - Fixed that spells in exile where not shown as castable and that AI usage prevented casting of multiple spells from exile ( fixes #6987 ).
2020-08-20 16:48:13 +02:00
LevelX2
89639f5e9b
* Karador, Ghost Chieftain - Fixed not correct usage detection, simplified/fixed asThoughtAs effect handling.
2020-08-20 14:37:36 +02:00
LevelX2
22e6fee101
* Fixed a bug that non permanent cards could be moved to battlefield instead of staying in the zone they are.
2020-08-18 19:02:15 +02:00
LevelX2
c19af65431
* Added calculation of mana sources of hand cards (related to #6698 ).
2020-08-18 14:52:26 +02:00
LevelX2
818952bf2d
* Fixed a bug that prevented to show cards as playable if castable by alternateSourceCosts (fixes Dream Halls problem related to #6698 ).
2020-08-18 14:00:06 +02:00
LevelX2
c48331f216
* Doubling Cube - Added support for possible mana calculation (related to #6698 ).
2020-08-18 00:22:53 +02:00
Ingmar Goudt
a9627e6101
m21 tests 'F'
2020-08-16 23:39:15 +02:00
LevelX2
768f1bec4f
* Fixed available mana calculation for Cryptic Trilobite and Titans' Nest. Added some improvements for available mana calculation of conditional mana.
2020-08-16 01:16:52 +02:00
Oleg Agafonov
dd7978e106
Merge pull request #6953 from magefree/dependabot/maven/org.apache.maven.plugins-maven-clean-plugin-3.1.0
...
Bump maven-clean-plugin from 2.5 to 3.1.0
2020-08-15 21:17:17 +02:00
Oleg Agafonov
b7c84c9342
[AKR] fixed card numbers, fixed booster generation;
2020-08-15 21:11:17 +04:00
Oleg Agafonov
b89c1c03ca
* Dire Fleet Warmonger - fixed that it asks user two times, fixed text ( #6643 );
2020-08-14 15:12:59 +04:00
LevelX2
27b5c920f7
* Offering - Fixed handling of hybrid mana in casting costs of offered creatures ( fixes #6961 ).
2020-08-14 10:25:47 +02:00
LevelX2
3e498e23e6
* Offering ability - Fixed use in available mana calculation (related to #6698 ).
2020-08-12 16:26:22 +02:00
LevelX2
6a65e5bb23
* Mana Clash - Fixed use in available mana calculation (related to #6698 ).
2020-08-12 13:58:06 +02:00
LevelX2
0d83a8e09a
* Once Upon A Time - Added test ( #6954 ).
2020-08-11 15:15:08 +02:00
Ingmar Goudt
bbefed9b6d
fix test, seems ability triggers twice, need double check
2020-08-10 23:28:10 +02:00
Ingmar Goudt
452ba945e0
add some m21 tests
2020-08-10 23:03:12 +02:00
LevelX2
12c50420bf
* Fixed possible game exception with empty library and commander movement ( fixes #6952 ).
2020-08-10 17:25:48 +02:00
Oleg Agafonov
b16d30b79b
Merge pull request #6190 from luziferius/refactor_promo_sets
...
[RFC] Refactor promo sets, add missing sets as listed on Scryfall
2020-08-10 16:57:00 +02:00
Oleg Agafonov
8b2bc064cd
Fixed test and sample decks
2020-08-10 18:24:21 +04:00
dependabot[bot]
3b7376def1
Bump maven-clean-plugin from 2.5 to 3.1.0
...
Bumps [maven-clean-plugin](https://github.com/apache/maven-clean-plugin ) from 2.5 to 3.1.0.
- [Release notes](https://github.com/apache/maven-clean-plugin/releases )
- [Commits](https://github.com/apache/maven-clean-plugin/compare/maven-clean-plugin-2.5...maven-clean-plugin-3.1.0 )
Signed-off-by: dependabot[bot] <support@github.com>
2020-08-10 06:04:11 +00:00
Oleg Agafonov
c5d7a3e9f9
* GUI: added auto-fix for deck files on usage (if deck contains wrong card numbers then it will be fixed and saved automaticity);
2020-08-08 21:27:20 +04:00
LevelX2
fcf27e55d6
* Archetype cards - Fixed layer to interact correctly with ability adding/removing continuous effects.
2020-08-07 22:52:45 +02:00
LevelX2
457557852e
* Benthic Explorer - Fixed mana type calculation.
...
* DynamicManaEffect - Fixed mana type calculation.
Some code clean up.
2020-08-07 17:15:06 +02:00
Oleg Agafonov
9e6a348cb1
Merge branch 'master' into refactor_promo_sets
2020-08-07 02:48:40 +02:00
Oleg Agafonov
2eeefd91ef
Added additional test for prevent damage effects, improved 3358e2da80
( #6915 )
2020-08-06 21:16:59 +04:00
Oleg Agafonov
bb148c9cb5
* Special mana abilities: fixed that it can be used to skip card's mana payments ( #6937 );
2020-08-04 22:09:57 +04:00
Oleg Agafonov
f69477d8d5
Added test for bug from #6937 (can cast cards with delve without full payment)
2020-08-04 18:11:15 +04:00
Oleg Agafonov
3430013f8d
* Server: fixed that too much permanents or mana sources on battlefield can crush or slow down the server ( #6938 );
2020-08-04 05:36:43 +04:00
LevelX2
985d4205bf
* Harvest Mage - Fixed available mana generation ( #6698 ).
2020-08-03 21:26:47 +02:00
LevelX2
244cf2a1e9
* K'rrik, Son of Yawgmoth - Fixe phyrexian mana like payment of mana costs ( closes #6928 related to #6698 ).
2020-08-03 19:17:07 +02:00
Oleg Agafonov
e95b9f145c
GUI: deck legality improves:
...
* Added partly valid status for deck legality panel (if all cards are fine but user must add more cards to complete, see #6854 );
* Improved legality errors sorting (important errors visible at the top now, e.g. commander's errors);
2020-08-03 02:03:54 +04:00
LevelX2
9dfc6eed69
* Squandered Resources - Fixed available mana calculation ( #6698 ).
2020-08-02 22:47:03 +02:00
Oleg Agafonov
00411b4a9b
* Regeneration abilities improved:
...
* Fixed that regeneration shield isn't added to permanent on aura sacrifice cost (example: Stamina, Carapace, see #2221 );
* Fixed that regeneration shields accumulated in attached aura instead permanent (bug example: re-attached aura gives old shields to new permanent, see #6846 );
* Added card hint with regeneration shields amount (#6846 );
2020-08-02 14:01:58 +04:00
LevelX2
516a4104f1
* Treasonous Ogre - Fixed available mana generation ( #6698 ).
2020-08-02 11:34:19 +02:00
LevelX2
67dd45c1c7
* Added getProducableManaTypes method for mana effects to handle Squandered Resources or Reflecting Pool like abilities.
...
* Fixes to Soldevi Adnate, Skirge Familiar, Mana Web.
2020-08-02 10:51:22 +02:00
LevelX2
c343767e8e
* Fixed available mana generation of Jungle Patrol (was no mana ability) and Priest of Yawgmoth ( #6698 ).
2020-07-31 13:53:07 +02:00
LevelX2
06968ad921
* Fixed a problem of available mana generation caused by order of usage of mana sourced with costs (example Coal Golem and then Dromar's Attendant - related to #6698 ).
2020-07-30 23:37:04 +02:00
Oleg Agafonov
0824d2901a
* Transform abilities - fixed duplicated triggered abilities from transformed permanents;
...
* Accursed Witch // Infectious Curse - fixed wrong cost modification effect (#6684 );
2020-07-30 12:13:32 +04:00
LevelX2
7cfe39ae21
* Fixed that not all Equip abilities were correctly identified for abilities that changed Equip timig (e.g. Leonin Shikari - fixes #6907 ).
2020-07-29 16:16:47 +02:00
LevelX2
ffa837ae95
* Angel of Jubilation - Fixed that it did not only prevent life payment from casting spells or activating abilities ( fixes #3663 ).
2020-07-29 14:48:14 +02:00
LevelX2
57de10d609
* Fixed failing M21 Tests (related to 51af4e7e1d
).
2020-07-29 11:49:54 +02:00
Ingmar Goudt
51af4e7e1d
new m21 tests, tests failing for Conspicuous Snoop and Chandras Magmutt. New testmethods: assertTopCardRevealed and assertAbilityCount that can check on a ability class
2020-07-28 21:22:36 +02:00
LevelX2
c1ac2ac6ae
* Conduit of Ruin - Fixed a problem with the spell cost reduction not working ( #6698 ).
2020-07-28 16:28:23 +02:00
LevelX2
0458778c44
* Fixed bug of Druids Repository (related to b5c93cf2da
),
2020-07-28 13:28:24 +02:00
LevelX2
7e771a2fc3
* Changes to execute stop assert and execute assert again a single test (e.g. druidsRepositoryTest()).
2020-07-28 13:27:31 +02:00
Oleg Agafonov
3810a6230d
Tests: fixed random fail (if player got Entreat the Dead on the draw)
2020-07-28 03:59:52 +04:00
LevelX2
b5c93cf2da
* Fixed available mana generation of Druids Repository, Workhouse, Iceberg, Krak Clan Ironworks, Rasputin Dreamweaver and Sirk Prospector ( #6698 ).
2020-07-28 01:03:33 +02:00
LevelX2
82a9726a35
* Fixed available mana generation of Virdian Joiner ( #6698 ).
2020-07-27 23:50:07 +02:00
LevelX2
82dfd76ee3
* Fervent Champion - Fixed that it's possible to equip the Champion also without having the regular mana ( #6698 ).
2020-07-27 22:27:11 +02:00
LevelX2
6e68e038b6
* Bartered Cow - Fixed that it does nothing when discarded ( fixes #6884 ).
2020-07-27 21:47:31 +02:00
LevelX2
7d7defe2c3
* Obosh, the Preypiercer - Fixed that the damage doubling was always done ( fixes #6871 ).
2020-07-27 16:46:52 +02:00
LevelX2
e5529d5835
* Demon's Horn - Added test ( #6890 ).
2020-07-27 16:02:05 +02:00
LevelX2
8402c6afb1
* Norn' s Annex - Updated test.
2020-07-27 12:49:58 +02:00
dependabot[bot]
402ef6c232
Bump jaxb-runtime from 2.3.2 to 2.3.3
...
Bumps jaxb-runtime from 2.3.2 to 2.3.3.
Signed-off-by: dependabot[bot] <support@github.com>
2020-07-27 06:43:58 +00:00
Ingmar Goudt
134bb63185
add m21 tests for B
2020-07-26 12:32:21 +02:00
LevelX2
7a78be8c6a
* Some target pointer changes and code clean up.
2020-07-26 00:16:14 +02:00
Ingmar Goudt
142681c354
new m21 tests
2020-07-25 23:49:58 +02:00
Ingmar Goudt
ffb649b414
Merge branch 'master' of https://github.com/magefree/mage
2020-07-25 22:22:07 +02:00
Ingmar Goudt
40f73375da
add comments, strictmode and assertAllCommandsUsed to m21 tests
2020-07-25 22:21:53 +02:00
LevelX2
85d18899b1
* Fixed a problem that conditional mana could not be correctly used with AsThoughEffects ( fixes #6880 ).
2020-07-25 22:11:30 +02:00
Oleg Agafonov
3abe5e796a
Server: removed unnecessary logs, extra comments
2020-07-25 19:06:38 +04:00
Oleg Agafonov
848c5b6052
Fixed missing watchers from DelayedTriggeredAbility:
...
* Planeswalkers Mischief - fixed rollback error on play;
* Psychic Theft - fixed rollback error on play;
2020-07-25 19:01:49 +04:00
Ingmar Goudt
41b7439403
Merge remote-tracking branch 'origin/master' into m21_test
2020-07-25 12:38:33 +02:00
Ingmar Goudt
9e7efc8da3
some m21 tests
2020-07-25 12:37:58 +02:00
Oleg Agafonov
97c427375d
Fixed face down cost modification (related to 653a2dd7b2
)
2020-07-24 21:30:03 +04:00
LevelX2
4d43914673
* Morselhoarder - Fixed calculation of available mana and some cleanup to other mana abilities ( #6698 ).
2020-07-24 16:41:36 +02:00
LevelX2
98ebcc07ca
* Fixed spell cost reduction for bestow not working during calculation of castable spells ( #6698 ).
2020-07-24 16:04:52 +02:00
LevelX2
a90dbd8533
* Some minot code clean up.
2020-07-24 12:08:08 +02:00
LevelX2
653a2dd7b2
* Available mana calculation - Fixed a problem with repeatable mana converting abilities (e.g. Farrelite Priest) that were only considered once ( #6698 ).
2020-07-24 12:06:14 +02:00
LevelX2
04176350db
* Pyromancer's Gauntlet - Fixed that the effect was applied to all damage of planeswalker not only to planeswalker of the Gauntlets's controller ( fixes #6877 ).
2020-07-23 11:52:09 +02:00
Ingmar Goudt
5dc707339e
move single tests to set package
2020-07-23 08:43:23 +02:00
LevelX2
a2511cad32
Merge pull request #6388 from nivertius/satyr-firedancer-multiple-opponents
...
Satyr Firedancer doesn't triggers for each opponent
2020-07-22 12:52:35 +02:00
LevelX2
7f3b24365e
* Essence of the Wild - Fixed the copy effect.
2020-07-21 00:20:12 +02:00
LevelX2
ba31b956dc
* Meld Keyword - Fixed that the melt status was not correctly handled related to rollbacks or AI game simulation ( fixes #6723 ).
2020-07-18 16:33:28 +02:00
LevelX2
ecc05f9535
* Fixed some corner cases for Worl Enchantment State-Based actions (704.5k).
2020-07-18 12:36:35 +02:00
LevelX2
a2ae232b43
* Fixed some corner cases for Worl Enchantment State-Based actions (704.5k).
2020-07-18 12:23:19 +02:00
LevelX2
8c4c2728d6
* Improved rollback handling of the test framework. Test metadata will no longer rollbacked by a rollback and one can now define different actions after the executed rollback.
2020-07-17 17:44:52 +02:00
LevelX2
3a82840e66
* Fixed some more available mana calculation problems. Mana of the pool is now taken into account (e.g. Coal Golem problem). Crucible of the Spirit Dragon - Conditional mana curretnly not handled correctly in available mana calculation. Crystalline Crawler works now.Related to #6698 .
2020-07-16 22:37:51 +02:00
LevelX2
7ad7d5f03d
* Fixed available mana generation for Caged Sun and storage lands (e.g. Calciform Pools) related to #6698 .
2020-07-16 12:44:01 +02:00
LevelX2
eecaa232f5
* Fixed a problem where for copies of cards/permanent the included spell ability was not correctly copied and the copied card had the spell ability twice. That could cause in some rare cases problems with spell ids of copies (this fixes #6824 ) or did allow on the other side some unproper handling of things (Animate Dead).
2020-07-14 21:28:45 +02:00
LevelX2
c6c1b0ed3a
* Fixed a bug that by countering a copied spell (e.g. by copied Memory Lapse), the copy could be removed from stack instead the originally countered spell ( fixes #6823 ).
2020-07-13 11:23:36 +02:00
LevelX2
983019251e
* Added test for #6823 .
2020-07-13 01:23:48 +02:00
LevelX2
31163eec6d
* Fixed that mana sources that produce any mana type that other sources produce (e.g. Reflecting Pool) could erroneously produce colorless mana from mana sources that could only produce any color mana ( fixes #6814 ).
2020-07-12 08:50:56 +02:00
LevelX2
81e5650972
* Fixed calcultion of available mana for Goblin Clearcutter, Seton Krosan Protector, Urza, Lord High Artificer, Heritage Druid, Birchlore Ranger and Grand architect.
2020-07-11 16:43:38 +02:00
LevelX2
8db0c00b42
* Some comments removed.
2020-07-11 01:06:53 +02:00
LevelX2
89249888b5
* Added handling of triggered mana to available mana calculation ( fixes #585 ).
2020-07-11 00:53:47 +02:00
Oleg Agafonov
c4f028ffa0
Prepare new release
2020-07-10 16:50:38 +04:00
Oleg Agafonov
06b6e482a0
* Exile and return to battlefield - fixed that some cards can return commander from command zone but they shouldn't (example: Cloudshift, Conjurer's Closet, see #5151 , #5278 );
2020-07-10 14:37:46 +04:00
Oleg Agafonov
589866c6a6
Fixed random test fail (Oath)
2020-07-10 14:34:18 +04:00
LevelX2
40b7d723ef
* Some minor code clean up and a test.
2020-07-10 09:06:25 +02:00
arcox
9c7982e8f6
Update *.sh and *.java files to use Unix line endings
2020-07-09 13:07:26 -04:00
Oleg Agafonov
81452833f6
Merge pull request #6785 from aidan-coward/master
...
Add July 2020 Vintage Cube decklist
2020-07-07 20:08:46 +02:00
dependabot[bot]
68cf61fc92
Bump jaxb-impl from 2.3.2 to 2.3.3
...
Bumps jaxb-impl from 2.3.2 to 2.3.3.
Signed-off-by: dependabot[bot] <support@github.com>
2020-07-07 08:55:35 +00:00
Oleg Agafonov
ecaa5a5b42
Eon Frolicker - fixed rollback error on play ( #6780 );
2020-07-07 06:32:46 +04:00
Oleg Agafonov
802aca942a
Play card without mana cost - fixed that AI and other players can play cards without additional cost in some use cases ( #6760 );
2020-07-06 21:06:49 +04:00
Oleg Agafonov
1532daf9c4
Updated test for #6760
2020-07-06 20:33:48 +04:00
LevelX2
2f77d1d14c
* Fixed that Offering ability did not work from command zone ( fixes #4909 ).
2020-07-06 15:15:02 +02:00
Oleg Agafonov
d1ccb621a1
* Bolas's Citadel - fixed that opponent can use Bolas's play ability for own cards ( #6741 );
2020-07-06 15:44:31 +04:00
Oleg Agafonov
49f4e54aaa
* Amplify abilities - fixed that it allows reveal itself when put onto battlefield from hand ( #6776 );
2020-07-06 15:29:53 +04:00