Oleg Agafonov
2460408da8
* Until your next turn effects - fixed that continuous effects of lost/leaved players can be discarded by combat or some cards before next turn starts;
2019-12-26 07:44:46 +04:00
Oleg Agafonov
61a58d36c2
Refactor: added missing getPlayersInRange in cards code (to ignore leaved/lost players);
2019-12-26 05:24:44 +04:00
LevelX2
1977e7f986
* Opportunistic Dragon - Fixed that the can't attack effect was not discarded if the Opportunistic Dragon left the battlefield.
2019-12-25 17:05:52 +01:00
LevelX2
133cc7342d
* Fixed a problem with check playable methods causing e.g. endless loop if Shared Fate was on the battlefield.
2019-12-25 16:01:02 +01:00
Oleg Agafonov
9cf1ee2f42
Questing Beast - fixed rollback error on damage prevent ( #6116 );
2019-12-24 10:53:51 +04:00
LevelX2
82371456cd
* Commented out showXXX commands in tests to reduce the output.
2019-12-23 19:22:56 +01:00
Oleg Agafonov
fac7ea1388
* AI: fixed rollback errors with copy spell abilities;
...
Tests: added copy spell support for test player;
2019-12-23 21:47:01 +04:00
LevelX2
2f998060a2
* Fixed a problem with power/toughness setting of copied transformed permanents ( fixes #5893 ).
2019-12-23 15:35:53 +01:00
Oleg Agafonov
d26fde8dbc
Prepare new release
2019-12-21 18:23:15 +04:00
Oleg Agafonov
bd71c98e3e
Fixed AI freeze with non available targets
2019-12-21 18:10:29 +04:00
Oleg Agafonov
7a7a9c20ec
Tests: fixed false positive tests (AI related, see prev commit);
2019-12-20 20:22:38 +04:00
Oleg Agafonov
8cce5a3648
* AI: reworked computer choices for "target permanent" targets:
...
* Fixed that computer was able to target own permanents for bad effects and opponent permanents for good effect;
* Improved target choices on card score (as example: boost most valuable, discard most weaker);
* Tests: fixed false positive tests (AI depended);
* Tests: fixed that test player can't find permanents for some filters/predicates;
2019-12-20 20:20:16 +04:00
jeffwadsworth
27a505ced9
- Fixed #6096 .
2019-12-19 15:31:48 -06:00
Oleg Agafonov
cde9957f54
* UI: added playable card marks in look-at windows;
2019-12-18 22:44:42 +04:00
Oleg Agafonov
ff1299cca9
* Copy activated ability - fixed that it raise error on triggering on copied permanents;
2019-12-18 18:16:16 +04:00
Oleg Agafonov
23ef0e4269
* Spark Double - fixed that copy of spark contains legendary type ( #6097 )
2019-12-18 17:57:41 +04:00
Oleg Agafonov
419cbf3c28
* AI: fixed that computer was able to choose non valid targets/cards (from all graveyards, hands, etc);
2019-12-16 02:58:10 +04:00
Oleg Agafonov
0885a01849
Fixed that TargetCard ignore filter in some calls
2019-12-16 02:55:13 +04:00
LevelX2
af9f2c93dd
Merge pull request #5910 from magefree/set_lint
...
Fix various hints and warnings on many set & block classes (via Intel…
2019-12-15 13:21:08 +01:00
LevelX2
8d46f46cf8
Fixed a problem that DiesTriggeredAbilities from Tokens that were removed by an effect did nevertheless trigger ( fixes #5825 ).
2019-12-15 13:10:11 +01:00
LevelX2
d458e73795
Merge pull request #5826 from drmDev/ut/trickster
...
Unit Tests for Merfolk Trickster, confirming #5825
2019-12-15 12:23:48 +01:00
Patrick Hulin
5d35ee675d
Fix Mysterious Pathlighter.
2019-12-14 23:31:39 -05:00
LevelX2
81ff37ad17
Fixed a bug that sometimes wrongly power of new source instance was used to determine a number and fixed also a bug that counters were added wrongly to an already new instance of the source object ( fixes #6035 ).
2019-12-15 00:50:44 +01:00
LevelX2
b7b3bc4474
Merge origin/master
...
Conflicts:
Mage/src/main/java/mage/players/PlayerImpl.java
2019-12-14 18:41:12 +01:00
LevelX2
da9f24e008
Removed deprecated AdjustingSourceCosts interface.
2019-12-14 18:33:11 +01:00
Oleg Agafonov
732a48e936
Fixed and improved tests for latest changes like asThough and adventure cards;
2019-12-14 19:19:32 +04:00
Oleg Agafonov
a05da68493
Improved alternative cost from dynamic effects (it's like #5913 PR):
...
* Game: added multiple cards/effects support (old version supported only 1 effect per game);
* Game: added combo support with split and adventure cards;
* AI: computer can see and play cards with dynamic added alternative cost (like Bolas's Citadel);
* UI: users can see playable cards with alternative cost.
2019-12-14 19:09:25 +04:00
Oleg Agafonov
ddedabad85
Improved cards with "may spend mana as though":
...
* Game: added combo support with adventure and split cards;
* AI: computer can see and play it;
* UI: users can see playable cards for as though mana cost.
2019-12-14 18:59:18 +04:00
Oleg Agafonov
c9ea0f1877
Fixed Bolas's Citadel combo with adventure cards
2019-12-14 18:51:35 +04:00
Oleg Agafonov
d271feb0cb
Reworked asThough effects:
...
* Game: improved asThough effects processing and combo with different cards/abilities (e.g. adventure cards, play from non own hand, etc);
* AI: computer can see and play non hand cards with dynamic effects in all zones (not only graveyard);
* AI: computer can see and play "as though" mana and alternative costs;
* UI: added non hand cards highlights of available abilities/cards;
2019-12-14 18:47:56 +04:00
Oleg Agafonov
cac761e45d
Test framework: added realtime check for playable ability
2019-12-13 13:42:41 +04:00
Patrick Hulin
555a177dd2
Ignore failing Bolas's Citadel test for now.
2019-12-11 22:49:50 -05:00
Patrick Hulin
b0bac1f751
Fix Bolas's Citadel and add test.
2019-12-10 18:01:32 -05:00
Patrick Hulin
fbc88f152e
Fix Teferi, Time Raveler behavior and ignore W6 emblem failure for now.
2019-12-10 14:24:35 -05:00
Patrick Hulin
d3ee51c155
Add tests for W6 and flash effects like Teferi, Time Raveler.
2019-12-10 13:48:15 -05:00
Patrick Hulin
2f138a04ae
Fix issue with casting opponents' cards.
2019-12-10 13:33:27 -05:00
Patrick Hulin
cd890d329a
Fix behavior for Garruk's Horde, Melek, W6.
2019-12-10 11:34:19 -05:00
Patrick Hulin
317a81678f
Remove cast ability when adventure is a permanent.
...
This prevents the adventure ability text from displaying when the card is on the battlefield.
2019-12-10 00:10:34 -05:00
Patrick Hulin
1bbfc32886
Add test for multiple adventures.
2019-12-09 19:57:54 -05:00
Patrick Hulin
a2a569195a
Fix issue where you could cast Adventure from exile.
2019-12-09 19:38:41 -05:00
Patrick Hulin
5af4942d15
Add test for copying and more test comments.
2019-12-09 14:16:38 -05:00
Patrick Hulin
af5ccf6914
Implement AdventurePredicate.
...
This adds support for Edgewall Innkeeper (and similar cards) and Memory Theft.
2019-12-09 13:50:07 -05:00
Patrick Hulin
19a9d98287
Adventures basically working.
...
No graphics yet.
2019-12-09 12:46:43 -05:00
Patrick Hulin
04a4b91a59
Begin implementing adventures.
2019-12-09 11:30:11 -05:00
ssouders412
50bd6cbc32
More pronoun fixes
2019-12-06 15:17:44 -05:00
ssouders412
2d3247d732
Updated pronouns to reflect current rules and oracle text
...
Replaced all instances of "her or she", "him or her", and "his or her", with "they", "them", and "their", or sometimes "that player". Updated verbs where appropriate.
2019-12-06 14:29:36 -05:00
Sarah Souders
e437577b5a
K'rrik fixes, payment for triggered abilities ( #6060 )
...
* K'rrik fixes, payment for triggered abilities
K'rrik's Phyrexian ability is now handled separately from actual Phyrexian mana costs. It can now be used to pay for triggered abilities like Extort.
* K'rrik tests added
Tests include:
- only usable by 1 player
- usable with activated/triggered abilities
- usable as an alternative to true Phyrexian mana, getting around Trinisphere
2019-12-04 16:27:41 -06:00
jeffwadsworth
2de7c136ea
- Fixed #6056 . Please test when you can. Now you will see other abilities/spellAbilities from cards presented during the cast from exile. Overload, Emerge, Surge, etc.
2019-12-01 21:53:01 -06:00
Oleg Agafonov
7469d59eee
Prepare new release
2019-11-30 01:32:54 +04:00
Adrian Petrescu
272d72caae
Fix filtering bug in Leyline of Abundance.
...
Basically the abundance effect was triggering on your opponents' mana
creatures too. Now it should only trigger on your own. Added
previously-failing test as well.
Fixes #6052 .
2019-11-25 17:23:13 -05:00
Jeff
3f9f860f85
Fixed #6047
2019-11-19 15:32:44 -06:00
Oleg Agafonov
22fbe57d84
Merge pull request #6041 from ssouders412/MustBeBlockedFix
...
Irresistible Prey "must be blocked" fix
2019-11-14 01:33:58 +01:00
ssouders412
98c94a487b
Added Must Be Blocked test
2019-11-13 17:29:45 -05:00
ssouders412
6fd9cab283
Implemented K'rrik, Son of Yawgmoth
...
KNOWN ISSUE: K'rrik's ability allowing the player to pay Phyrexian for black mana remains active after K'rrik leaves the battlefield.
2019-11-11 00:17:57 -05:00
Adrian Petrescu
00fd8d18da
Remove unneeded import in an unrelated test, just for kicks
2019-10-11 09:59:54 -04:00
Adrian Petrescu
69cff6c920
Fix buggy login in SyrKonradTheGrimTriggeredAbility.checkTrigger()
...
Basically needed to check that creatures leaving the graveyard belong to
the controlling player.
2019-10-11 09:59:06 -04:00
Adrian Petrescu
e9bbefb814
Adding incorrectly-failing test for SyrKonradTheGrim
...
His ability should only trigger on creatures leaving the controller's
graveyard, not any graveyard.
2019-10-11 09:48:26 -04:00
Oleg Agafonov
f719503a89
Prepare new release
2019-09-27 21:19:03 +04:00
Adrian Petrescu
12828b78d6
Check Archfiend of Spite trigger on CREATURE_DAMAGED
...
Currently, it ignored the trigger unless a player was also damaged (by
other unblocked attacking creatures, for example), so there are plenty
of situations where it will fail to occur.
The included test fails against current master, but passes with the
patch.
Fixes #5971 .
2019-09-12 15:53:13 -04:00
Oleg Agafonov
8dc6e152af
Prepare next release
2019-09-10 00:33:47 +04:00
Iain Monro
48fbd30f2d
#5935 Fix and standardise firing of TAPPED_FOR_MANA event
2019-08-16 15:26:40 +01:00
Iain Monro
8ab0b487f3
#5938 Make Identity Thief's ability optional
2019-08-15 09:18:28 +01:00
Oleg Agafonov
e53ce49327
Merge pull request #5916 from jgray1206/aether_gust_fix
...
add aether gust unit tests + fix issue #5902
2019-08-14 19:08:25 +02:00
Iain Monro
d53b9fd656
Fix rules text for abilities with up to one target
2019-08-14 17:16:01 +01:00
John Gray
d2005be8c2
add strictChoiceMode and allCommandsUsed
2019-07-26 23:55:05 -04:00
Oleg Agafonov
ff6b961e7c
Merge pull request #5914 from jgray1206/repeated_reverb_fix
...
added unit test for Repeated Reverberation + add fix for loyalty counter (issue #5882 )
2019-07-22 19:49:14 +02:00
John Gray
71464f4fcb
add strictChoiceMode and allCommandsUsed
2019-07-22 06:46:43 -04:00
John Gray
5b4ba490c3
add strictChoiceMode and allCommandsUsed
2019-07-22 06:45:11 -04:00
John Gray
7155977cd2
add aether gust unit tests + fix issue #5902
2019-07-21 22:26:11 -04:00
John Gray
ca79db489a
add better comments + refactor card names into variables
2019-07-21 21:33:38 -04:00
John Gray
f5d4046903
added unit test for Repeated Reverberation + add fix for loyalty counter (issue #5882 )
2019-07-21 11:51:16 -04:00
John Gray
b05981020c
add unit test for hapatra vizier of poisons + fix issue #5886
2019-07-20 13:21:14 -04:00
Mike Simons
8d08f005af
Fix various hints and warnings on many set & block classes (via IntelliJ IDEA linting):
...
- replacing hard coded strings of set codes with reference to 'mage.sets.<set>.getInstance().getCode()' allows for set class names to no longer show as unreferenced & adds for more consistence between other block units
- various protected variables were able to be changed to private to clean up additional warnings
- some JavaDoc comments were generating warnings due to missing documentation
- removed some unused imports and unused variables
- there were multiple conditional logic checks for 'rarity != Rarity.LAND' within an if block where the outer condition was 'if rarity == Rarity.COMMON' rendering the inner condition always true and thus redundant
- a few ExpansionSet.buildDate parameters wer using octal values (eg. '03' instead of '3') which triggered some warnings
- added a booster generation test for WarOfTheSparks to make sure every booster contains a planeswalker
- added a booster generation test for ModernHorizons to make sure every booster contains a snow land
- booster generation test for Battlbond set referenced the Coldsnap set class instead of Battlebond
2019-07-18 23:28:48 -04:00
Oleg Agafonov
9db80a0cf3
* Commander abilities - added support of cards with alternative spells like overload;
2019-07-14 01:06:07 +04:00
Oleg Agafonov
d6d67b78db
* Added London mulligan as default mulligan type for all games (except Canadian Highlander);
2019-07-13 18:46:41 +04:00
Oleg Agafonov
8c40a1d1a7
* Commander abilities - fixed that it increases commander tax after cast/play from non-command zone (as example: after Remand effect);
2019-07-13 10:47:02 +04:00
Oleg Agafonov
2197d8ee4a
* Praetor's Grasp - fixed that it freeze the game after cast;
2019-07-12 21:49:00 +04:00
Oleg Agafonov
9a08ccda95
Extra tests for AI;
2019-07-12 19:57:23 +04:00
Oleg Agafonov
5cf95d3ed1
Test framework: fixed that add counters command adds wrong amount of counters;
2019-07-12 19:41:06 +04:00
Oleg Agafonov
02b1e86f20
Extra tests for AI;
2019-07-12 19:09:26 +04:00
Oleg Agafonov
ae7623e118
AI: fixed that AI never use alpha strike to kill opponent (doesn't use "all in" attack, #4486 );
2019-07-12 18:36:32 +04:00
Oleg Agafonov
be281ff402
Test framework: added AI support for attack/block phases, added attack/block skip commands;
2019-07-12 13:54:24 +04:00
John Gray
1d0da973ac
added boneclad necromancer unit tests + fix for issue #5875
2019-07-07 22:48:51 -04:00
Oleg Agafonov
0d6be669de
Merge pull request #5881 from jgray1206/vizier_fix
...
add vizier of the menagerie unit tests + fix for issue #5816
2019-07-07 03:34:24 +02:00
John Gray
f564c522a3
added chandras embercat unit tests + fix for issue #5880
2019-07-06 11:30:26 -04:00
John Gray
3a7419d870
add vizier of the menagerie unit tests + fix for issue #5816
2019-07-05 12:06:42 -04:00
Oleg Agafonov
6e5ba7a446
* Affinity abilities - added support of other cost modification effects like combo with commander tax ( #5856 );
...
* Affinity abilities - added artifact/land count hints to card;
2019-07-04 14:02:25 +04:00
Oleg Agafonov
699329f522
* Woodland Champion - fixed that it doesn't trigger on tokens put ( #5871 );
2019-07-01 12:00:10 +04:00
Oleg Agafonov
716b929877
Prepare new release
2019-06-30 18:33:29 +04:00
Oleg Agafonov
f6123037ec
* UI: added playable/activatable cards highlight in all zone and windows (mana abilities, commander, graveyard, revealed, etc);
2019-06-28 03:30:57 +04:00
Oleg Agafonov
34ff038053
AI: improved target amount abilities:
...
* added support to search targets from multiple opponents instead one;
* added support of TargetCreaturePermanentAmount and all new target types;
* added new priorities (kills most valuable first);
* added bad and good conditions (choose most valuable in good case and most weakest in bad case, e.g. damage yourself);
* fixed that AI targets opponent for good ability instead yourself;
2019-06-26 21:46:11 +04:00
Oleg Agafonov
7e08b3c3d5
Test framework: added support to create custom instant/sorcery;
2019-06-26 21:40:17 +04:00
Evan Kranzler
20d1aa4b91
fixed Embodiment of Agonies tests
2019-06-24 19:28:52 -04:00
Evan Kranzler
2f72726a7f
fixed implementation of Embodiment of Agonies, added a test
2019-06-24 19:20:03 -04:00
Oleg Agafonov
d0638e71af
Fixed symbols and images download from wizards;
2019-06-23 18:56:25 +04:00
Oleg Agafonov
63a9a505e1
Fixed that alternative spell always selected to cast if available;
2019-06-23 17:20:04 +04:00
Oleg Agafonov
d25ae47104
Alternative spell abilities: added support of modes and other extra things in commander, awaken, jump-start, spectacle, retrace and surge abilities;
2019-06-21 17:11:44 +04:00
Oleg Agafonov
437861ec20
Improved and fixed X mana cost and pays, mana pool:
...
* Pay X abilities - fixed that it spends all available mana pool instead only needed;
* Pay X abilities - added support of interactions with other X effects like Rosheen Meanderer's mana usage for "pay X to prevent";
* Rosheen Meanderer - fixed that it can't use mana for "you may pay X" like Flameblast Dragon's effect (#5206 );
* Devs: added support to use VariableManaCost to pay X in code (without generic's workaround, use ManaUtil.createManaCost to generate cost to pay);
2019-06-20 21:18:01 +04:00
Oleg Agafonov
cc54a92daa
* Kicker - added support of X and mana cost interactions like Rosheen Meanderer + Verdeloth the Ancient combo ( #3538 );
...
* Rosheen Meanderer - fixed that mana can be payed for mana cost with X instead any cost with X (#3538 );
2019-06-18 11:28:41 +04:00
Oleg Agafonov
fe28c9c7d9
* Flashback ability -- added support of additional cost like flashback with kicker combo ( #5389 );
2019-06-17 15:03:37 +04:00