Commit graph

8328 commits

Author SHA1 Message Date
Oleg Agafonov
b6d76a7c02 * Gain abilities - fixed wrong order effects with changeling ability (all creature type effect, #6147); 2020-01-07 06:38:34 +04:00
Evan Kranzler
41407a4aee added lazy loading to getter methods 2020-01-06 21:05:11 -05:00
Evan Kranzler
dff5c73e1c pulled out DamagedPlayerThisTurnPredicate 2020-01-06 21:00:57 -05:00
Evan Kranzler
5239d0258b fixed another compilation error 2020-01-06 20:50:14 -05:00
Evan Kranzler
9e7fcd33cd fixed some import errors 2020-01-06 20:21:10 -05:00
Evan Kranzler
9c3b923b3f refactored ControllerPredicate 2020-01-06 20:04:56 -05:00
Evan Kranzler
c14a079cc5 refactored OwnerPredicate 2020-01-06 19:59:56 -05:00
Evan Kranzler
3f0547a7fa refactored DamagedPlayerThisTurnPredicate 2020-01-06 19:56:08 -05:00
Evan Kranzler
13d76bfc06 refactored PlayerPredicate 2020-01-06 19:53:29 -05:00
Evan Kranzler
8e29454916 add predicates to TargetController 2020-01-06 19:47:34 -05:00
Evan Kranzler
ecf26585b5 refactored SupertypePredicate to be part of SuperType 2020-01-06 19:21:27 -05:00
Evan Kranzler
aa72251627 Implemented Archon of Sun's Grace 2020-01-06 18:53:35 -05:00
Evan Kranzler
5a6f9022c0
Merge pull request #6151 from magefree/refactorSubTypePredicate
Refactored SubTypePredicate to be part of SubType
2020-01-06 18:27:03 -05:00
LevelX2
b68110f60b * Removed redundant applies check. 2020-01-06 23:16:33 +01:00
LevelX2
b2a8d4293a * War's Toll - Fixed the implementation of the restriction effect. 2020-01-06 23:16:10 +01:00
Evan Kranzler
86906ec25f refactored all instances of SubtypePredicate 2020-01-06 16:48:00 -05:00
Evan Kranzler
3b8298e7c2 moved SubTypePredicate into SubType 2020-01-06 14:59:10 -05:00
Evan Kranzler
688be783aa refactored all usages of CardTypePredicate to match the new implementation 2020-01-06 13:18:17 -05:00
Evan Kranzler
f685ee3d69 moved CardTypePredicate to the CardType class 2020-01-06 13:17:45 -05:00
Evan Kranzler
943e8dd827
Merge pull request #6144 from magefree/staticValueRefactor
Replaced instances StaticValue with singletons (ready to merge)
2020-01-06 08:37:53 -05:00
LevelX2
e565863bd2 Added test for Nissa, Sage Animist -7 ability. 2020-01-06 12:58:50 +01:00
Evan Kranzler
06e069c5db updated implementation as suggested 2020-01-05 22:35:20 -05:00
Evan Kranzler
690e042b36 Implemented Arena Trickster 2020-01-05 21:55:44 -05:00
Evan Kranzler
38fe022fc0 Merge branch 'master' into staticValueRefactor 2020-01-05 20:46:59 -05:00
Evan Kranzler
724acc4e14 fixed failing tests 2020-01-05 20:44:43 -05:00
Evan Kranzler
9a603fbaab replaced StaticValue with singletons 2020-01-05 11:33:21 -05:00
LevelX2
7f0d793544 * Fixed a problem with Licid creatures not dying if the enchanted creature dies. 2020-01-05 17:06:36 +01:00
Evan Kranzler
dccc17fac9 Implemented Purphoros's Intervention 2020-01-05 09:30:26 -05:00
LevelX2
ebdba3c57e * Added logic to check if a card had a triggered ability in the graveyard if it was moved from graveyard to a hidden zone. Because if not, the ability does not trigger. 2020-01-04 23:53:47 +01:00
Oleg Agafonov
9110f70e2d Fixed NPE errors in deck editor; 2020-01-05 02:03:01 +04:00
Oleg Agafonov
2dd64cf5cd * Kicker abilities - fixed that AI can't cast cards with kicker for normal cost (AI don't use kicker now); 2020-01-05 01:04:35 +04:00
Oleg Agafonov
bb59cedbd9 AI fixes:
* Gain control abilities - fixed wrong target chooses by AI (selects weakest permanent instead most powerful);
* Target of an opponent’s choice abilities - fixed that AI was able to cancel card cast, fixed wrong target chooses (Evangelize, Echo Chamber, Arena, Preacher, etc);
2020-01-04 22:37:16 +04:00
Oleg Agafonov
bcb37992cc * Buyback abilities - fixed that AI can't cast cards with buyback for normal cost (AI don't use buyback now); 2020-01-04 20:26:59 +04:00
Oleg Agafonov
1ae9fc883e * Replicate abilities - fixed that AI can freeze the game after play card with replicate (AI don't use it now); 2020-01-04 20:22:49 +04:00
Oleg Agafonov
a249dcffd8 Fixed error with no abilities 2020-01-04 20:18:16 +04:00
Oleg Agafonov
13da4fd2b3 fixed Archon of Falling Stars (must be return to battlefield instead hand) 2020-01-04 19:40:25 +04:00
Evan Kranzler
bfdbac5552 updated THB spoiler 2020-01-04 08:56:21 -05:00
Evan Kranzler
d5474df005 Implemented Shimmerwing Chimera 2020-01-03 22:10:45 -05:00
jeffwadsworth
5ed5bce718 - Fixed #6127 2020-01-03 11:30:29 -06:00
Evan Kranzler
9a3d085a81 Implemented Triumph of Anax 2020-01-03 11:13:54 -05:00
jeffwadsworth
a37c9da789 - Fixed issue where one could see the "next" card on top of the library while casting the current one. Example, Bolas's Citadel ability. 2020-01-03 09:05:08 -06:00
LevelX2
19060954ae Merge origin/master 2020-01-03 15:24:27 +01:00
LevelX2
8854871c15 * Fixed problems of Yixlid Jailer that removed abilities from cards in graveyard permanently (fixes #1147). 2020-01-03 15:23:52 +01:00
Oleg Agafonov
c1351c2339 * Play from top library - fixed that unplayable lands marks as playable; 2020-01-03 17:33:03 +04:00
Oleg Agafonov
a381c1954c * Bolas's Citadel - fixed that it can't play cards with mana abilities; 2020-01-03 17:20:46 +04:00
Oleg Agafonov
893bcbb01f fixed The Birth of Meletis (missing defender ability in token) 2020-01-03 12:20:40 +04:00
Oleg Agafonov
65d914ffe7 Fixed missing watchers 2020-01-03 12:18:19 +04:00
Oleg Agafonov
dceb93e7a6 Additional fixes for getNetMana from #6132 (final) 2020-01-03 06:27:39 +04:00
Evan Kranzler
64ae38c632 Implemented Nessian Boar 2020-01-02 18:56:25 -05:00
Evan Kranzler
be32db8a80 Implemented Inspire Awe 2020-01-02 16:40:42 -05:00
Evan Kranzler
9948aca713 Implemented The Birth of Meletis 2020-01-02 16:40:40 -05:00
Oleg Agafonov
62636b5071 Additional fixes for getNetMana from #6132 2020-01-02 23:33:20 +04:00
Oleg Agafonov
0930bdd016
Merge pull request #5690 from magefree/copy_constructor_watchers
refactor the copy functionality for no-args watchers
2020-01-02 18:51:37 +01:00
Evan Kranzler
86fe25e68b Implemented Pharika's Spawn 2020-01-02 09:45:04 -05:00
Oleg Agafonov
862fe69b53 * Adventure cards - improved game logs (card hint works with adventure spell now, added original card info to cast's log); 2020-01-02 14:48:28 +04:00
Oleg Agafonov
b4c55039e5 * Adventure cards - added adventure spell info in permanent's rules on battlefield; 2020-01-02 06:15:17 +04:00
Oleg Agafonov
d860c026bd * Adventure cards - added missing adventure card type info into rules (instant or sorcery); 2020-01-02 05:53:56 +04:00
Oleg Agafonov
50195e8f35 * AI: fixed that computer can't target cards on battlefield if it contains tokens; 2020-01-02 04:46:20 +04:00
Evan Kranzler
14b002bce6 Implemented Glimpse of Freedom 2020-01-01 10:32:40 -05:00
LevelX2
12c4bacc07 * Reworked GainControlAllEffect that fixed a problem of Varchild, Betrayer of Kjeldor gaining control of creatures entering the battlefield after the Varchild left the battlefield. 2020-01-01 13:37:04 +01:00
Oleg Agafonov
3c727eb06b Fixed missing rates for some cards 2020-01-01 14:28:58 +04:00
Oleg Agafonov
4d51d379fe Fixed wrong symbols in rules 2020-01-01 14:28:12 +04:00
spjspj
5b40ca867e
Merge pull request #6110 from spjspj/master
Add an information format for deck
2020-01-01 17:48:37 +08:00
Oleg Agafonov
f5ef16c8cf Additional fixes for getNetMana from #6132, added TODO task for next mana improves; 2020-01-01 02:27:54 +04:00
jeffwadsworth
13cb86d69f - See b9bee56 2019-12-31 15:40:13 -06:00
Evan Kranzler
8b8a05d1c9 Implemented Nadir Kraken 2019-12-31 12:37:56 -05:00
Oleg Agafonov
4445f8556e Fixed multiple calls of mana choice dialogs, related to #6132 2019-12-31 20:24:25 +04:00
Oleg Agafonov
a7233df1c5 Fixed Empowered Autogenerator with new getNetMana 2019-12-31 18:02:52 +04:00
Oleg Agafonov
60781604f3
Merge branch 'master' into fix-tapped-for-mana-event 2019-12-31 12:12:25 +01:00
Oleg Agafonov
dca3e034f4 Refactor: fixed targets from cards list (support filters with player predicate); 2019-12-31 05:11:45 +04:00
LevelX2
b068d10c44 * Nissa, Vastwood Seer - Fixed a bug of the Nissa, Sage Animist that the animated lands lost the creature type as soon as Nissa was cast again from command zone or from hand (fixes #5677). 2019-12-30 21:35:10 +01:00
Evan Kranzler
a0888af73a
Merge pull request #6124 from magefree/updateDevotion
Refactor Devotion dynamic value to enum (ready to merge)
2019-12-30 11:30:37 -05:00
Ingmar Goudt
978309827b remove deprecated discard method 2019-12-30 00:22:33 +01:00
Ingmar Goudt
813aded7f9 Add missing generic 2019-12-29 23:18:38 +01:00
Ingmar Goudt
ee71495a3f fix latest cards from master 2019-12-29 23:08:47 +01:00
Ingmar Goudt
998c3be2a5 Merge branch 'master' of https://github.com/magefree/mage into copy_constructor_watchers 2019-12-29 21:05:37 +01:00
Ingmar Goudt
1a8723697e fix for Set as value of Map, make sure the set is new 2019-12-29 21:05:28 +01:00
Oleg Agafonov
87db04adfc Fixed typo 2019-12-29 23:36:28 +04:00
Ingmar Goudt
ce23f6900d fix conflicts 2019-12-29 19:28:20 +01:00
Ingmar Goudt
702a1f2498 remove all copy constructors and copy methods for all watchers 2019-12-29 19:18:20 +01:00
Evan Kranzler
d9e0b75545 built hints into devotion class 2019-12-29 10:27:23 -05:00
LevelX2
2508de1f82 * Aminatous Augury - Fixed a problem that the cards could not be cast from exile. Added logic so the player could select the card types to consume for the cast from exile. 2019-12-29 16:22:52 +01:00
LevelX2
8710bb5ca2 * PutCardFromHandOntoBattlefieldEffect - Fixed that the rule text did not show if the card entered the battlefield tapped (e.g. for Arboreal Grazer). 2019-12-29 14:30:16 +01:00
LevelX2
42a9aed977 * Tragic Arrogance - Fixed a problem that under some circumstances permanents of the wrong player were sacrificed. 2019-12-29 14:20:24 +01:00
LevelX2
554c5baf25 * Fixed a problem of triggered effects that detect if a creature was exiled but the creature ended in a another zone (e.g. commander) (fixes #5905), 2019-12-28 18:21:32 +01:00
LevelX2
cadae9ee92 * Added checks in all the methods that wait for human response to prevent endless loops if the method is called from a the get playable actions. 2019-12-27 23:28:53 +01:00
LevelX2
1f82e7a4ae Merge origin/master 2019-12-27 23:23:09 +01:00
LevelX2
1dc8f37d20 * Expropriate - Fixed a strange problem that the prompt text of the select permanent selection to get the control of the permanent was not shown. Still not clear what the exact reason was but using a player list to save the voters seemed to cause the problem. 2019-12-27 23:22:32 +01:00
Evan Kranzler
d3cfca6226 begin refactor of Devotion to enum 2019-12-27 10:53:31 -05:00
Evan Kranzler
5856d0744b
Merge pull request #6123 from ssouders412/FaeOfWIshesFix
Fae of Wishes//Granted fix
2019-12-27 10:52:36 -05:00
ssouders412
cfdae6ee9d
Fixed Fae of Wishes//Granted, added Noncreature card filter
Updated Drekavac and Entomber Exarch to use the new filter.
2019-12-27 10:34:27 -05:00
jeffwadsworth
b9bee56c89 - Starting the process of migrating cards that use the player.cast() method to access the full abilities of a card not cast from the hand zone. 2019-12-26 15:54:22 -06:00
LevelX2
06ed2f5927 * Improved display of vote for Council's Dilemma cards. 2019-12-26 14:31:51 +01:00
LevelX2
1798f5a151 * setCheckPlayableState(false) in finally error handling (related to 133cc7342d). 2019-12-26 14:26:16 +01:00
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
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
5b9f0c970c Removed bloated logs 2019-12-24 21:12:20 +04:00
Oleg Agafonov
49ea0205d0 * Enters battlefield, played land triggered abilities - fixed multiple rollback errors on missing target; 2019-12-24 16:19:57 +04:00
Oleg Agafonov
9cf1ee2f42 Questing Beast - fixed rollback error on damage prevent (#6116); 2019-12-24 10:53:51 +04:00
Oleg Agafonov
5cb040607e Refactor PreventAllDamageToAllEffect 2019-12-24 10:48:08 +04:00
Oleg Agafonov
70b37d1d71 * You may choose card from outside or in exile - fixed that it doesn't allows to choose cards from exiled zone (Karn, the Great Creator and Coax from the Blind Eternities); 2019-12-24 02:06:33 +04:00
LevelX2
82371456cd * Commented out showXXX commands in tests to reduce the output. 2019-12-23 19:22:56 +01:00
LevelX2
7fe357708a * Some minor source code updates. 2019-12-23 16:38:54 +01:00
LevelX2
2f998060a2 * Fixed a problem with power/toughness setting of copied transformed permanents (fixes #5893). 2019-12-23 15:35:53 +01:00
spjspj
844500accf Add an information format for deck 2019-12-23 01:12:31 +11:00
Evan Kranzler
51b55fc8b8 Implemented Athreos, Shroud-Veiled 2019-12-21 10:13:11 -05: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
Evan Kranzler
88a1b9fe22 Implemented Underworld Rage-Hound 2019-12-20 20:10:08 -05:00
LevelX2
0a8a9ed00d * Replaced some filters by StaticFilters instances. 2019-12-20 23:50:01 +01:00
LevelX2
43a11cd115 * Enduring Ideal - Improved filter prompt text. 2019-12-20 22:56:11 +01:00
LevelX2
e80cfbeb2c * Fixed a problem of the card filtering of RevealLibraryPutIntoHand (fixes a problem of Brass Herald moving all cards to hand). 2019-12-20 20:54:23 +01: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
jeffwadsworth
4ef9a75fe7 - Fixed #6101 2019-12-18 15:41:08 -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
Evan Kranzler
0bd2a5c270 Implemented Ashiok, Nightmare Muse 2019-12-16 22:31:25 -05:00
Ingmar Goudt
e8303d551d Merge branch 'copy_constructor_watchers' of https://github.com/magefree/mage into copy_constructor_watchers 2019-12-16 23:03:56 +01:00
Oleg Agafonov
0885a01849 Fixed that TargetCard ignore filter in some calls 2019-12-16 02:55:13 +04:00
LevelX2
2413f956ee Fixed a problem with bosster generation for boosters with partners and basic lands. 2019-12-15 16:18:04 +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
Oleg Agafonov
2549634443 Fixed NPE errors 2019-12-15 15:12:13 +04:00
Oleg Agafonov
be6a588a7f Fixed NPE errors 2019-12-15 15:00:31 +04:00
LevelX2
ca0297d7c8
Merge pull request #6015 from t-schroeder/crownoffury
Implemented Crown of Fury
2019-12-15 08:36:12 +01: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
515b55f088 Fixed handling of Guardian Beast, fixed rule text display (fixes #5922). 2019-12-14 22:20:59 +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
Evan Kranzler
f1b9b5aba7 Implemented Daxos, Blessed by the Sun 2019-12-14 11:14:13 -05: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
b3e17ba85f Improved "play the top card" to support adventure and split cards; 2019-12-14 19:11:40 +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
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
Evan Kranzler
447002ee67 Implemented Setessan Champion 2019-12-13 08:17:37 -05:00
Patrick Hulin
27bb6fa432 Conform AdventureCard to new getAbilities plan. 2019-12-11 22:42:32 -05:00
Patrick Hulin
383069f5eb Merge branch 'master' of https://github.com/magefree/mage into adventures 2019-12-11 22:15:38 -05:00
Patrick Hulin
f63561cfb7 Add canActivate flag. 2019-12-11 22:15:07 -05:00
Evan Kranzler
3965061234 Implemented Elspeth, Sun's Nemesis 2019-12-11 20:08:07 -05:00
Oleg Agafonov
be7dea2d16 * UI: fixed that split cards doesn't marks as playable; 2019-12-11 04:44:25 +04:00
Oleg Agafonov
6b5a9846b9 Fixed rules generation 2019-12-11 04:40:07 +04:00
Patrick Hulin
b17bf1ac9f Save and restore controller ID in cardPlayableAbilities. 2019-12-10 16:35:53 -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
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
jeffwadsworth
ca22a7750a - Fixed #5925 and related issues. 2019-12-10 10:25:07 -06:00
Patrick Hulin
19ca9f555c Remove duplicated ability text. 2019-12-10 00:17:22 -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
abcd0512a5 Unused import. 2019-12-09 21:35:43 -05:00
Patrick Hulin
d2cb10d7b7 Clean up visual details. 2019-12-09 21:12:21 -05:00
Patrick Hulin
a2a569195a Fix issue where you could cast Adventure from exile. 2019-12-09 19:38:41 -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
6160bc25ef Remove unused file. 2019-12-09 12:48:05 -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
Oleg Agafonov
899cde4d54
Merge pull request #6073 from ssouders412/pronoun-fixes
Updated pronouns to reflect current rules and oracle text
2019-12-07 01:07:11 +01:00
Oleg Agafonov
1d20069ddf * Fixed wrong selection count in choose ability mode dialog (cards like Planewide Celebration); 2019-12-07 01:48:39 +04:00
ssouders412
50bd6cbc32
More pronoun fixes 2019-12-06 15:17:44 -05:00
jeffwadsworth
57cb023f78 - Fixed an issue with AffinityEffect and multiplayer games. See #5931 2019-12-06 14:16:32 -06: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
jeffwadsworth
30e8fec8df - Fixed #5931 2019-12-06 11:43:12 -06:00
Oleg Agafonov
bf5e603fcb Merge fix 2019-12-06 21:08:20 +04:00
Oleg Agafonov
a8d707b469 Additional watchers fixes for #6065, see comments in f21151bca5 2019-12-06 21:02:41 +04:00
jeffwadsworth
ba78d41034 - Fixed #5969 2019-12-05 11:25:38 -06:00
Sarah Souders
b208dc332f Fixed Rankle's triggered ability (#6064)
* Fixed Rankle's triggered ability

Any number of available modes can now be selected, including zero.

* Update AbilityImpl.java

* getTargets now returns empty Target for null Mode

Reverted null Target check changes in StackAbility.

* Update HumanPlayer.java
2019-12-04 20:59:03 -06: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
f21151bca5 - Fixed #6065 2019-12-03 16:05:30 -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
jeffwadsworth
fda5ac170a - Fixed #5985 2019-11-30 06:58:52 -06:00
jeffwadsworth
5a1fb5f90e - Fixed #6059 2019-11-30 05:27:00 -06:00
Oleg Agafonov
7469d59eee Prepare new release 2019-11-30 01:32:54 +04:00
Oleg Agafonov
236cb46125 Additional token fixes for #6032:
- fixed wrong Elemental token images in BFZ's cards (Omnath, Locus of Rage and Seed Guardian);
 - fixed wrong Elemental token image in OGW's cards (Chandra Flamecaller);
 - removed unnecessary tokens from AKH, HOU and EMN (card duplicates);
 - fixed missing Goblin token in DOM;
 - fixed missing Bird Illusion token in GRN;
 - fixed same Zombie token in C19;
2019-11-28 23:42:39 +04:00
jeffwadsworth
792af6d331 - Fixed #5854 2019-11-27 23:56:22 -06:00
jeffwadsworth
a97ae1b0c6 Fixed an issue related to putting cards into the graveyard in the order wished. The amount was set to >3 for some odd reason. Made it >1. 2019-11-27 10:34:35 -06:00
jeffwadsworth
133b5495f9 Fixed #6051 2019-11-25 11:55:07 -06:00
jeffwadsworth
75b82018e1 - Fixed #6034 2019-11-24 15:37:20 -06:00
jeffwadsworth
d2115b0425 - Fixed #6037 2019-11-24 13:42:03 -06:00
jeffwadsworth
6d21c9d3dc Fixed #6045 - Note that an addition was made to MorphAbility 2019-11-21 17:39:42 -06:00
Jeff
3f9f860f85 Fixed #6047 2019-11-19 15:32:44 -06:00
ssouders412
84701cfbab Fixed K'rrik, Son of Yawgmoth
K'rrik's second ability is no longer active after he leaves the battlefield.

KNOWN ISSUE: Cards you would not normally be able to play without this ability are still not highlighted as playable.
2019-11-13 02:01:24 -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
Tim Schroeder
54552a94ad implemented Crown of Fury 2019-10-16 04:41:06 +02:00
Evan Kranzler
193182aa3d Implemented Mtenda Lion 2019-10-03 19:42:09 -04:00
Evan Kranzler
3d224ffb61 reverted change to triggered abilities (#6001) 2019-09-30 18:45:10 -04:00
Oleg Agafonov
9d2d318a6c [ELD] added tokens 2019-09-27 22:50:18 +04:00
Oleg Agafonov
2227490413 Food token - fixed that it doesn't use multiple images; 2019-09-27 22:49:17 +04:00
Oleg Agafonov
f719503a89 Prepare new release 2019-09-27 21:19:03 +04:00
Evan Kranzler
9170df1344 fixed cost modifying effects requiring snow mana unnecessarily (fixes #6000) 2019-09-25 17:32:49 -04:00
Evan Kranzler
3d5925826c temporary workaround for Rankle, Master of Pranks (still can't choose zero modes) #5979 2019-09-24 22:26:28 -04:00
Evan Kranzler
b245b493b8 Implemented Outlaws' Merriment 2019-09-24 21:41:02 -04:00
Evan Kranzler
84206205ad updated TargetAmount for permanents 2019-09-24 19:45:31 -04:00
Oleg Agafonov
6cc2472ed6 * UI: improved choose target amount dialog (selected targets can be removed/de-selected); 2019-09-24 08:40:58 +04:00
Oleg Agafonov
bad26b182a Added max targets limit support in TargetAmount 2019-09-24 07:44:14 +04:00
Evan Kranzler
316f823ebf cleaned up the TargetAmount classes in preparation for updating them 2019-09-22 20:54:29 -04:00
Evan Kranzler
13ba8b0900 used reset method on triggered abilities 2019-09-21 21:29:08 -04:00
Evan Kranzler
48a678fad9 Implemented Covetous Urge 2019-09-21 19:40:19 -04:00
Evan Kranzler
4afc35caf0 fixed ETB untapped triggered abilities 2019-09-21 10:40:57 -04:00
Evan Kranzler
61bf0f758d Implemented Dwarven Mine 2019-09-20 19:36:09 -04:00
Evan Kranzler
788a879c7f Implemented Festive Funeral 2019-09-19 20:04:53 -04:00
Evan Kranzler
c3d141d83c Implemented The Great Henge 2019-09-18 19:58:19 -04:00
Evan Kranzler
0982e36002 improved implementation of second draw triggers 2019-09-18 13:08:26 -04:00
Evan Kranzler
d557e6a27e Implemented Lucky Clover 2019-09-17 17:28:01 -04:00
Evan Kranzler
ce920fa542 Implemented Fires of Invention 2019-09-16 16:13:40 -04:00
Evan Kranzler
275d28d22c Implemented Idyllic Grange 2019-09-16 15:40:02 -04:00
Evan Kranzler
64dcfb840d Implemented Giant Opportunity 2019-09-16 10:01:06 -04:00
Evan Kranzler
6af989d6a0 Implemented Henge Walker 2019-09-15 10:22:04 -04:00
Evan Kranzler
575b0bca30 updated Adamant implementation 2019-09-14 19:28:26 -04:00
Evan Kranzler
a03e5f11fb Implemented Seven Dwarves 2019-09-14 19:07:41 -04:00
Evan Kranzler
3491b36ae8 Implemented Oathsworn Knight 2019-09-14 18:30:51 -04:00
Evan Kranzler
3867937b38 Implemented Clockwork Servant 2019-09-14 12:32:05 -04:00
Evan Kranzler
0dabd08984 Implemented The Magic Mirror 2019-09-14 11:40:21 -04:00
Evan Kranzler
5579407144 Implemented Bonecrusher Giant 2019-09-13 23:46:50 -04:00
Evan Kranzler
9604aa9bef Implemented Wolf's Quarry 2019-09-13 08:12:09 -04:00
Evan Kranzler
4b8e9d0a09 Implemented Wandermare 2019-09-12 17:41:59 -04:00
Evan Kranzler
d9a934ac4f Implemented Doom Foretold 2019-09-11 13:27:18 -04:00
Evan Kranzler
f7ebf80627 Implemented Giant Killer 2019-09-09 18:23:35 -04:00
Oleg Agafonov
8dc6e152af Prepare next release 2019-09-10 00:33:47 +04:00
Oleg Agafonov
127af50427 Prepare next release 2019-09-09 23:40:22 +04:00
Evan Kranzler
793f0cff67 Implemented Enchanted Carriage 2019-09-09 12:42:00 -04:00
Evan Kranzler
0947df181e Implemented Oko, Thief of Crowns 2019-09-07 08:09:37 -04:00
Evan Kranzler
71a917a5d4 Implemented Steelclaw Lance 2019-09-06 21:08:26 -04:00
Evan Kranzler
cf59a151c8 updated Adventure constructor 2019-09-05 21:54:52 -04:00
Evan Kranzler
c4cea99bea Implemented Lovestruck Beast 2019-09-05 21:19:44 -04:00
Evan Kranzler
aa1190ddba Implemented Order of Midnight 2019-09-05 21:02:04 -04:00
Evan Kranzler
3f31efafcd Implemented Foulmire Knight, added a rudimentary nonfunctional implementation of Adventure cards 2019-09-05 20:54:34 -04:00
Evan Kranzler
a366ec019f Implemented Savvy Hunter 2019-09-05 20:13:13 -04:00
Evan Kranzler
1e272361c0 Implemented Tome of Legends 2019-09-05 19:56:48 -04:00
Evan Kranzler
39ce76f82a Implemented Garruk, Cursed Huntsman 2019-09-05 18:07:52 -04:00
Evan Kranzler
65fee9df99 fixed Food Token errors 2019-09-05 16:39:42 -04:00
Evan Kranzler
2e5e224c93
Merge pull request #5963 from jmharmon/master
Fixed minor errors for ELD cards
2019-09-05 15:24:00 -04:00
jmharmon
f189bd77a0
Remove custom token wording from code 2019-09-04 20:19:30 -07:00
Evan Kranzler
3179d35167 Implemented Slaying Fire 2019-09-04 23:12:11 -04:00
jmharmon
7de8506923
Implement Warlock creature type 2019-09-04 18:49:36 -07:00
Evan Kranzler
52279895cf Implemented Rankle, Master of Pranks 2019-09-04 10:11:49 -04:00
Evan Kranzler
845cca9938 added missing import to Food token 2019-09-04 07:28:46 -04:00
jmharmon
9f304bf4ae
Add TapSourceCost 2019-09-04 00:15:49 -07:00
jmharmon
a10fbc765f
Implement Food Token 2019-09-03 23:38:08 -07:00
jmharmon
52f2d6399c
Implement Food artifact subtype 2019-09-03 23:36:51 -07:00
Patrick Hulin
c085cabbb0 Fix creature type on Rekindling Phoenix token.
Type should be Elemental, not Thrull.
2019-08-17 15:04:16 -04:00
Iain Monro
48fbd30f2d #5935 Fix and standardise firing of TAPPED_FOR_MANA event 2019-08-16 15:26:40 +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
Evan Kranzler
7bf03781aa Implemented Atla Palani, Nest Tender 2019-08-09 21:41:46 -04:00
Evan Kranzler
c75a689efd Implemented Bone Miser 2019-08-09 21:14:05 -04:00
Evan Kranzler
1d39b28563 updated C19 spoiler and reprints 2019-08-07 23:06:33 -04:00
Evan Kranzler
b6b65215e8 Implemented Doomed Artisan 2019-08-07 09:21:21 -04:00
Evan Kranzler
1e8b6ea3b4 Implemented Apex Altisaur 2019-08-05 17:03:30 -04:00
Evan Kranzler
b2bc60efcb Implemented Grismold, the Dreadsower 2019-08-05 16:53:21 -04:00
Oleg Agafonov
2d3804079f Fix missing reset code 2019-08-03 00:44:27 +04:00
Evan Kranzler
2fab876d05 Implemented Ghired's Belligerence 2019-08-02 14:43:23 -04:00
Evan Kranzler
607cef0e79 Implemented Ghired, Conclave Exile 2019-08-01 20:07:25 -04:00
Evan Kranzler
5caf8f79d5 a few more text fixes 2019-07-22 20:22:17 -04:00
Evan Kranzler
aa2c712272 more text fixes 2019-07-22 19:53:15 -04:00
Evan Kranzler
61fa056165 various text fixes for M20 cards 2019-07-22 18:17:34 -04:00
John Gray
7155977cd2 add aether gust unit tests + fix issue #5902 2019-07-21 22:26:11 -04:00
John Gray
b05981020c add unit test for hapatra vizier of poisons + fix issue #5886 2019-07-20 13:21:14 -04:00
Oleg Agafonov
7ac58f9787 * UI: fixed missing text for tokens in Card Viewer; 2019-07-19 10:32:09 +04:00
Oleg Agafonov
181806d16e Fixed tests 2019-07-17 20:56:22 +04:00
Ingmar Goudt
a509e25c16 small text fix for London Mulligan 1st mulligan to show 'card', others after that show 'cards' 2019-07-16 14:49:43 +02:00
Ingmar Goudt
5ba206111a add missing Override annotations 2019-07-14 20:28:48 +02:00
Oleg Agafonov
528ba66e16 Commander abilities - fixed rules text for alternative spells; 2019-07-14 01:21:55 +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
abbbb5dafd * London mulligan - fixed wrong cards number in logs; 2019-07-13 12:48:26 +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
Ingmar Goudt
61ece61c15 remove assignation as parameter 2019-07-11 15:54:33 +02:00
Ingmar Goudt
3163bfa310 move default case down 2019-07-11 15:45:22 +02:00
Ingmar Goudt
b704618f32 small complexity rewrite 2019-07-11 15:44:46 +02:00
Ingmar Goudt
464e9c67c4 remove nullcheck as this happens in the method itself 2019-07-09 22:30:40 +02:00
Ingmar Goudt
178da75e4d Sonar fixes 2019-07-09 21:57:55 +02:00
Evan Kranzler
1621704b12 updated Modular text 2019-07-08 16:51:03 -04:00
Evan Kranzler
62d2426267 updated Treasure token text 2019-07-08 16:46:11 -04:00
Oleg Agafonov
79d40754ed * Library of Leng - fixed that it triggers on discarded cards from cost part instead only effect part (#3047); 2019-07-08 08:31:55 +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
Oleg Agafonov
aad5099a45
Merge pull request #5884 from jgray1206/chandras_embercat_fix
fixed chandras embercat issue #5880 + added unit tests for it
2019-07-07 03:31:38 +02:00
John Hitchings
1230e29ec9 remove nashorn import. 2019-07-06 15:28:36 -07:00
John Gray
f564c522a3 added chandras embercat unit tests + fix for issue #5880 2019-07-06 11:30:26 -04:00
Oleg Agafonov
bce01ce053 Sonar's fixes 2019-07-06 13:09:27 +04:00
Oleg Agafonov
f166724562 Fixed type cast 2019-07-06 12:36:28 +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
e195bddf09 * Grenzo, Havoc Raiser - added triggered player info in logs and choose mode dialog (#4116, #5282); 2019-07-05 15:37:17 +04:00
Oleg Agafonov
39edc3feef Fixed texts 2019-07-05 15:03:24 +04:00
Oleg Agafonov
cdf7f6df6c * Goad abilities - fixed missing text; 2019-07-05 13:55:10 +04:00
Oleg Agafonov
da66fa351a * UI: fixed that cards with same names doesn't selected as playable in hand/graveyard; 2019-07-04 22:04:01 +04:00
Oleg Agafonov
6848626c4b Merge fix 2019-07-04 18:19:46 +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
Evan Kranzler
14c4981c72 fixed Hexproof from color abilities not working on players (fixes Veil of Summer issues) 2019-07-01 13:00:35 -04:00
Oleg Agafonov
e3f5071738 * UI: fixed wrong deck import from cubes and other sources without cards amount; 2019-07-01 12:40:34 +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
628b668ad3 [M20] fixed wrong texts 2019-06-30 22:13:31 +04:00
Oleg Agafonov
9c2714da53 * Images: added tokens from Modern Horizons (MH1); 2019-06-30 20:26:16 +04:00
Oleg Agafonov
4148a572cf [M20] added tokens 2019-06-30 19:53:48 +04:00
Oleg Agafonov
716b929877 Prepare new release 2019-06-30 18:33:29 +04:00
Oleg Agafonov
46d030d37a [M20] added Thunderkin Awakener 2019-06-29 18:03:12 +04:00
richard.coates
1c9aa7904b Implement Tale's End 2019-06-29 13:07:31 +01: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
2ec3036abe * Fixed AI game freeze if it can't pay X mana (#5023); 2019-06-27 21:17:53 +04:00