Commit graph

8443 commits

Author SHA1 Message Date
Oleg Agafonov
4d2790be3f * Thirst for Meaning - fixed that it doesn't allow to discard artifact card as pay;
* Thirst for Knowledge - fixed that it doesn't allow to discard enchantment card as pay;
2020-01-13 15:03:01 +04:00
Oleg Agafonov
4a004a27b3 Refactor damage with power effect, added checking for wrong targets; 2020-01-13 13:49:40 +04:00
Oleg Agafonov
69e52815b6 Tests: added check that filter card must not contain controller predicate; 2020-01-13 10:41:00 +04:00
Evan Kranzler
595b438faa updated SagaChapter getChapter method 2020-01-12 13:30:18 -05:00
Oleg Agafonov
6736f5f3b8 * My turn condition - added card hints about turn; 2020-01-12 21:59:56 +04:00
Oleg Agafonov
1a82eba77c * My turn condition - added card hints about turn; 2020-01-12 21:36:23 +04:00
Oleg Agafonov
3eb4493a45 * My turn condition - added card hints about turn; 2020-01-12 21:25:50 +04:00
LevelX2
62062367e2 Implemented Furious Rise. 2020-01-12 13:19:09 +01:00
LevelX2
7d3f17d578 Implemented Gravebreaker Lamia. 2020-01-12 11:29:43 +01:00
Oleg Agafonov
860c57d9d9 * Chrom Mox - fixed that tapped for mana replacement effects ignore his mana; 2020-01-12 10:09:51 +04:00
Oleg Agafonov
f237c4f388 * Escape abilities - fixed missing game log about cast with Escape; 2020-01-12 07:44:17 +04:00
Evan Kranzler
e3192a7361 fixed Escape not working with targets 2020-01-11 22:02:09 -05:00
Evan Kranzler
0533854d1d Implemented Nightmare Shepherd 2020-01-11 18:08:37 -05:00
Evan Kranzler
35100c2532 Implemented Calix, Destiny's Hand 2020-01-11 18:08:36 -05:00
Oleg Agafonov
a7aa14b125 Merge remote-tracking branch 'origin/master' 2020-01-12 01:18:04 +04:00
Oleg Agafonov
e1fea330dd Test framework - multiple improves:
* Added support of spell ability choice in free cast (chooseSpellAbilityForCast);
* Added support of "up to" targets setup in addTargetAmount (use TestPlayer.TARGET_SKIP to stop target choose);
* Restored multiple checks for addTargetAmount;
* Fixed many wrong tests (wrong order or missing commands);
2020-01-12 01:17:39 +04:00
LevelX2
955c10a91d Merge origin/master 2020-01-11 22:12:11 +01:00
LevelX2
946aff50a2 Implemented Heliod's Punishment, Hydra's Growth, Ilysian Caryatid, Impending Doom and Incendiary Oracle. Fixed Irreverent Revelers. 2020-01-11 22:11:44 +01:00
Evan Kranzler
11c3d33ac0 Implemented Alirios, Enraptured 2020-01-11 12:48:13 -05:00
LevelX2
86f2d22baa Implemented Underworld Fires and Wings of Hubris 2020-01-11 18:22:30 +01:00
Oleg Agafonov
5f5d9046f9 * Choose card in hand - fixed rollback error for some cards like Nicol Bolas, Dragon-God; 2020-01-11 08:47:54 +04:00
LevelX2
1f7a7a10b0 * Panopticon Plane - Fixed draw card abilities. 2020-01-11 01:25:26 +01:00
LevelX2
d3a925d2c9 * Marisi, Breaker of the Coil - Fixed can't cast ability. 2020-01-10 21:11:22 +01:00
LevelX2
35628c205a * Venarian Gold - Fixed rule text according #6170. 2020-01-10 20:43:19 +01:00
LevelX2
8d8d02b07a * Added game to getSharedAbilities() method of split and adventure cards . 2020-01-10 20:03:32 +01:00
LevelX2
eded48648f * Fixed a problem with checkPlayableState (could be reset to early) and fixed a problem of getUsableAcitavedAbilities. 2020-01-10 15:51:44 +01:00
LevelX2
e91639a478 * Implemented handling of up to for TargetAmount. 2020-01-10 15:49:10 +01:00
LevelX2
bd76e54e9d * Xantcha, Sleeper Agent - Fixed wording of the replacement effect (Oracle changes from 2019-09-27) and generalized the effect for 3 cards. 2020-01-10 14:18:56 +01:00
LevelX2
766c4f8bf6 * Fixed card movement handling. 2020-01-10 08:53:35 +01:00
LevelX2
47a8686958 * Some more move actions replaced and added missing methods for move to command zone. 2020-01-09 23:17:39 +01:00
LevelX2
349a2cc612 * Leadership Vacuum - Fixed that the movement of the commanders were not reported in the game log. 2020-01-09 22:46:20 +01:00
Evan Kranzler
3d991635e8 updated Gold token errata 2020-01-09 12:41:48 -05:00
LevelX2
7ce7c2ad70 * Fixed a problem with P/T of permanets that transform back again to the original source card (fixes #6156). 2020-01-09 08:25:29 +01:00
Oleg Agafonov
ab1475d7e0 Little fixes 2020-01-09 08:52:25 +04:00
jeffwadsworth
292a0a2912 - Fixed #6157 2020-01-08 16:47:05 -06:00
Evan Kranzler
23b2bd8b7e Implemented Dryad of Ilysian Grove 2020-01-08 12:23:23 -05:00
Oleg Agafonov
00da778484 Fixed NPE with empty library 2020-01-08 18:48:41 +04:00
Evan Kranzler
6bdd395e8f Implemented Altar of the Pantheon 2020-01-07 22:45:53 -05:00
Evan Kranzler
a9739f12f1 Implemented Kiora Bests the Sea God 2020-01-07 22:45:53 -05:00
Oleg Agafonov
85e65c8f44 Code cleanup 2020-01-08 05:19:52 +04:00
Oleg Agafonov
ca4a4528fb * Play with top card library - fixed that player can see next top card before casting current top card; 2020-01-08 04:54:17 +04:00
Oleg Agafonov
d3b1be2f75 * Adventure cards - added player name to adventure exile window; 2020-01-07 22:43:15 +04:00
LevelX2
3d998a85b8 Merge origin/master 2020-01-07 17:56:57 +01:00
LevelX2
d4ec65cddb Added Test and changed some log messages from info to debug. 2020-01-07 17:56:26 +01:00
Evan Kranzler
463c208a39 removed lazy loading of predicates from TargetController 2020-01-07 10:32:34 -05:00
Oleg Agafonov
339c419d4b * UI: multiple improves for adventure/split cards:
* Split cards shows left and right mana cost (in deck editor, hand, etc);
 * Adventure cards shows adventure and normal cost (in deck editor, hand, etc);
 * Adventure cards shows adventure spell name in deck editor's list;
 * Fixed missing loading cursor in deck editor searching;
2020-01-07 11:49:55 +04:00
Oleg Agafonov
c4ad761ebb Merge fix 2020-01-07 11:41:25 +04:00
Evan Kranzler
14c22137ce Implemented Anax, Hardened in the Forge 2020-01-06 21:55:11 -05:00
Evan Kranzler
48a43a8360
Merge pull request #6152 from magefree/refactorTargetController
Refactored TargetController predicates
2020-01-06 21:56:26 -05:00
Oleg Agafonov
854eaadcc4 Additional fixed for #6147 2020-01-07 06:52:01 +04:00
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
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
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
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
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
Oleg Agafonov
073b003b37 * AI: planeswalkers gets more priority in targets selection; 2019-06-26 21:45:15 +04:00
Oleg Agafonov
7e08b3c3d5 Test framework: added support to create custom instant/sorcery; 2019-06-26 21:40:17 +04:00
Evan Kranzler
61287046f4 Implemented Veil of Summer 2019-06-23 19:29:28 -04:00
Ingmar Goudt
1cf6d99515 fix couple of sonar issues 2019-06-23 23:22:21 +02:00
Evan Kranzler
189aed29b5 Implemented Cavalier of Thorns 2019-06-23 14:33:02 -04:00
Oleg Agafonov
63a9a505e1 Fixed that alternative spell always selected to cast if available; 2019-06-23 17:20:04 +04:00
Evan Kranzler
5c36acd190 Implemented Aether Gust 2019-06-22 20:36:02 -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
bb1c9c072c Improved interactions between pay X and other effects; 2019-06-21 11:41:56 +04:00
Oleg Agafonov
04591a24f7 Improved interactions between pay X and other effects; 2019-06-21 11:40:36 +04:00
Evan Kranzler
33986bebfe Implemented Mu Yanling, Sky Dancer 2019-06-20 19:18:02 -04:00
Oleg Agafonov
af4ec9b3e7 * Do unless any player pays - fixed that it asks to pay remaining players even after payed; 2019-06-20 23:16:17 +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
Evan Kranzler
8ef3ebfc3c Implemented Ajani, Strength of the Pride 2019-06-19 21:10:33 -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
92517cc371 Merge fix 2019-06-17 15:29:58 +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
Oleg Agafonov
e39dc1124b Fixed NPE errors 2019-06-17 12:23:10 +04:00
Oleg Agafonov
dc7ccc6c4e * Buyback ability - fixed that it doesn't work after rollbacks (#5835, #5836); 2019-06-16 22:08:32 +04:00
Evan Kranzler
1887bc149e Implemented Chandra, Awakened Inferno 2019-06-15 16:22:48 -04:00
Oleg Agafonov
75e5ad3d7b * Commander: fixed that spells with dynamic/X targets doesn't work from command zone (#5852); 2019-06-14 21:50:36 +04:00
Oleg Agafonov
1d7cac3059 * Oathbreaker: fixed that signature spell can moves to graveyard instead forced move to command zone (#5819); 2019-06-14 21:20:16 +04:00
Evan Kranzler
0636d470e2 fixed Splice onto Instant or Sorcery causing rollbacks, still need to fix it not working (#5830) 2019-06-07 22:08:41 -04:00
Oleg Agafonov
90a5a55a72 * Move cards from battlefield - fixed that some abilities can duplicates moving cards (#4655); For devs: all cards with CardsImpl and moveCards calls like Winds of Abandon; 2019-06-07 18:35:30 +04:00
Oleg Agafonov
1c41f6418d * Overload - fixed that some cards was able to cast overload price as instant instead sorcery (Winds of Abandon, Mind Rake, Scale Up); 2019-06-07 16:56:51 +04:00
Oleg Agafonov
ecdc47ad68 * Scale Up - fixed that creatures doesn't lose types after overload pay; 2019-06-07 16:56:06 +04:00
Oleg Agafonov
1895a33966 [MH1] fixed Scale Up that it removes abilities; 2019-06-07 16:31:51 +04:00
Oleg Agafonov
77e92d9186 * Fixed that snow lands can be added in draft and sealed modes (#5831); 2019-06-06 22:50:16 +04:00
Oleg Agafonov
0e2cfb7def Fixed tests with multiple X values 2019-06-06 21:07:51 +04:00
Oleg Agafonov
b64a75aa4b Typo fix 2019-06-06 16:55:17 +04:00
Oleg Agafonov
12fc854777 [MH1] added Unbound Flourishing 2019-06-06 16:52:06 +04:00
Evan Kranzler
7130b5acd4 Implemented Watcher for Tomorrow 2019-06-01 19:43:39 -04:00
Evan Kranzler
9def59486e Implemented Birthing Boughs 2019-05-31 21:31:36 -04:00
Evan Kranzler
ba47fee11e Implemented Rotwidow Pack 2019-05-31 08:17:32 -04:00
Oleg Agafonov
12be28483f
Merge pull request #5805 from hitch17/mtga-deck-import
Support for importing mtga decks.
2019-05-30 19:08:04 +02:00
Oleg Agafonov
d313327b21 * Fixed two face card images that it uses wrong image from random set; 2019-05-29 12:13:44 +04:00
Oleg Agafonov
a9329c130d Oathbreaker: added support of 2 partners with 2 spells, improved signature spell hint and checks; 2019-05-29 03:03:17 +04:00
Oleg Agafonov
7154e685d1 * Fixed Zendikar lands download from scryfall 2019-05-28 16:37:21 +04:00
Oleg Agafonov
9a9b304fd5 * UI: improved hand request dialog (users can ask your hand once per game, reset it by re-activate button); 2019-05-28 13:46:29 +04:00
Evan Kranzler
a18c3e1d88 Implemented Kaya's Guile 2019-05-27 21:00:15 -04:00
Oleg Agafonov
913ee65f36 Cards compatibility with oathbreaker format; 2019-05-27 17:21:17 +04:00
Oleg Agafonov
07cf5201ba * Added new game mode: Oathbreaker (#5678); 2019-05-27 16:17:15 +04:00
Evan Kranzler
bf528dfc59 Implemented Splicer's Skill 2019-05-26 17:18:18 -04:00
Evan Kranzler
6abfb1370f Implemented Sword of Sinew and Steel 2019-05-25 20:23:56 -04:00
Evan Kranzler
ca9197b783 Implemented Wrenn and Six 2019-05-25 10:23:31 -04:00
Evan Kranzler
b5f96cacc9 Implemented Fists of Flame 2019-05-25 10:00:15 -04:00
Evan Kranzler
79dd09b0dc Implemented Etchings of the Chosen 2019-05-24 21:10:38 -04:00
Oleg Agafonov
97c8622311 Commander: improved lands compatibility with cost modification and restriction effects; 2019-05-23 14:57:26 +04:00
Oleg Agafonov
42ed14df52 * Commander: added support of lands as commander (#5795); 2019-05-23 12:40:45 +04:00
John Hitchings
6e0e3899b8 Merge branch 'master' into mtga-deck-import 2019-05-19 13:28:27 -07:00
John Hitchings
ce23500ef8 Normalize card names, use specific cards when numbers when possible. 2019-05-19 13:26:12 -07:00
Oleg Agafonov
f1e204408f Fixed umlaut 2019-05-19 22:51:18 +04:00
John Hitchings
b62d4fd20d Support for importing mtga decks. 2019-05-19 11:18:09 -07:00
Oleg Agafonov
085211035f * Ugin, the Ineffable - improved +1 ability (one window for all exiled cards, card's id in lookup window); 2019-05-18 22:24:37 +04:00
Oleg Agafonov
e80ba6383f Added verify tests for watchers copy; 2019-05-18 10:58:30 +04:00
spjspj
1ff1833343
Merge pull request #5800 from gunnim/gunni/cant-attack-unless-pay-typo
Fixed typo in cant attack unless you pay mana hover tooltip.
2019-05-18 15:39:56 +10:00
Oleg Agafonov
85c6528d2d Merge branch 'master' into copy_constructor_watchers 2019-05-18 09:13:42 +04:00
Oleg Agafonov
ec9198fb22 Merge fix 2019-05-17 21:52:50 +04:00
Oleg Agafonov
4d95d72c66 Test framework: added support of commander cards (just add card to command zone by addCard); 2019-05-17 21:42:35 +04:00
Oleg Agafonov
ffbd5d373b * Planeswalker abilities - fixed that plus cost's counters is not affected by replacement effects (#5802, example combo: Planeswalker + Pir, Imaginative Rascal + Doubling Season); 2019-05-17 16:10:34 +04:00
Gunnar Már Óttarsson
9f8c969f29 Fixed typo in cant attack unless you pay mana hover tooltip.
also minor code comment fix
2019-05-16 15:04:57 +00:00
LevelX2
bf8dd78b6e * Fixed player Hexproof ThoughtAsIf handling (fixes #5796). 2019-05-15 17:33:34 +02:00
Oleg Agafonov
1dcdff58d2 Fixed html visible title in choose cards dialog; 2019-05-14 15:36:33 +04:00
Oleg Agafonov
06c9d7941c * Ascend ability - added card hint with permanents count; 2019-05-14 15:03:25 +04:00
Oleg Agafonov
28924c1cb7 * Commander - fixed that instant/sourcery/enchantment don't work from command zone (#5795); 2019-05-13 16:07:29 +04:00
Oleg Agafonov
8448afc709 Test framework: added commander games support (quick start button, "commander" command to put card as commander); 2019-05-13 13:20:41 +04:00
Oleg Agafonov
5c48803ef9 * UI: improved cards appearance:
* added colorized PT values (boosted is green, unboosted is red);
  * added toughness with damage calcs (damaged is red);
  * image render: now title and PT texts are readable/big in small cards;
  * mtgo render: improved image quality (less pixelated now);
  * mtgo render: improved PT font (bold now);
2019-05-10 10:01:51 +04:00
LevelX2
060766bb0a * Updated UntapAllDuringEachOtherPlayersUntapStepEffect to also work correct with EndTurn effects played last turn. 2019-05-08 17:36:31 +02:00
Oleg Agafonov
051c3c4ac0 UI: added test card render modes dialog (available from debug menu); 2019-05-06 20:15:39 +04:00
Oleg Agafonov
7089a09061 * Standard Bearer - fixed that it can broke spells on false Flagbearer checks (#5784); 2019-05-06 01:41:28 +04:00
John Hitchings
0a2c81ad7b DOM set codes get exported as DAR for MTGA. 2019-05-04 14:08:27 -07:00
Oleg Agafonov
878d602b58 Fixed potentional NPE error 2019-05-03 19:10:17 +04:00
Oleg Agafonov
648026ac0b Test framework: fixed not working choices for replacement effects; 2019-05-02 23:14:56 +04:00
Oleg Agafonov
3ff871c6de * Proliferate - fixed that it highlights all permanents instead with counters only; 2019-05-02 17:25:46 +04:00
Oleg Agafonov
14274d8eaf * Threshold abilities - fixed that restriction part of ability is not apply in some cards (#5738); 2019-05-01 20:55:21 +04:00
Oleg Agafonov
0aeab75552 Added ConditionalCostModificationEffect to support cost modification effects with conditions (#5738) 2019-05-01 19:53:54 +04:00
LevelX2
53341c5519 [ICE] Added Fylgja 2019-05-01 17:12:24 +02:00
Oleg Agafonov
367a1fd189 Added ConditionalPreventionEffect to support prevention effects with conditions (#5738) 2019-05-01 12:49:19 +04:00
Ingmar Goudt
853bdac0e1 simplify some of the field setters 2019-04-30 20:28:57 +02:00
Ingmar Goudt
6703ba693d refactor the copy functionality for no-args watchers 2019-04-30 20:28:57 +02:00
Oleg Agafonov
07faf872ea Fixed that some cards doesn't trigger counter remove events; 2019-04-30 18:50:03 +04:00
Ingmar Goudt
a8708e61d7 simplify some of the field setters 2019-04-30 16:41:06 +02:00
Oleg Agafonov
ec5134a663 * Chandra, Fire Artisan - fixed that it doesn't triggers on own damage; 2019-04-30 18:26:37 +04:00
Oleg Agafonov
f7622d3c4a * Awakening of Vitu-Ghazi - fixed that it creates non legendary tokens 2019-04-30 14:40:19 +04:00
Jeff
7a35a76248 - The Adapt effect now works correctly when the permanent is blinked. 2019-04-29 14:18:44 -05:00
Oleg Agafonov
9ef2e0bda7 * No more continuous effects stay on battlefield after player leave the game;
Test framework: added real time check for player in game or not;
2019-04-28 19:32:25 +04:00
Oleg Agafonov
534037e095 * Until end of your turn - fixed that effects discarded too early in multiplayer games (#5759, #5676);
Tests: added dozen tests for end of turn effects and related cards.
2019-04-28 11:27:08 +04:00
Oleg Agafonov
4288e45c23 * AI: improved work with "must attack" player effects, with pay to attack blockers (#5435); 2019-04-28 11:21:34 +04:00
Oleg Agafonov
488ed9ee00 * Melee - fixed that it don't triggers on unblocked attacks and don't untap it; 2019-04-28 11:12:39 +04:00
Oleg Agafonov
dc04092fce Test framework: many improvements and fixes:
* added support to use custom cards with any abilities/effects (addCustomCardWithAbility);
 * added support of multiplayer games with all range (CardTestMultiPlayerBaseWithRangeAll);
 * added realtime checks for permanent counters (checkPermanentCounters);
 * added wrong attack commands check in strict mode;
 * fixed that added by addCard command cards don't init continues effects;
 * fixed that block commands don't removed from actions queue;
2019-04-28 11:10:28 +04:00
Jeff
d8a928051a - ReturnFromGraveyardToHandTargetEffect() will now check to verify the target card is still in the graveyard. 2019-04-25 15:22:08 -05:00
Oleg Agafonov
21c99fae3b Prepare hotfix release 2019-04-24 23:13:51 +04:00
Oleg Agafonov
e51b054249 * Oath of Kaya - fixed that it doesn't triggers on attacks; 2019-04-24 21:41:24 +04:00
Antoni Gierczak
e885bd0e02 Refactor Ugin's Conjurant, Protean Hydra with a new ability. Fixed Ashiok, Dream Renderer (#5737)
* Refactor Ugin's Conjurant, Protean Hydra with a new ability

* pushing bugfix for Ashiok, Dream Renderer not milling correctly.
2019-04-23 17:12:20 -05:00
Oleg Agafonov
a602e2d377 Prepare release 1.4.35 2019-04-24 00:51:05 +04:00
Oleg Agafonov
c6d32bd33d [WAR] added tokens images 2019-04-23 23:32:09 +04:00
Oleg Agafonov
0ef003a4a7 Fixed Awakening of Vitu-Ghazi that it doesn't change the name of the land it is cast on 2019-04-23 17:58:34 +04:00
Oleg Agafonov
e49be97879 * Look at card abilities -- improved dialog (now it's shown that card have extra abilities to call on "no" button); 2019-04-23 17:09:26 +04:00
Oleg Agafonov
081ac7ca3c Fixed Single Combat that it does not prevent cast on next turn; 2019-04-23 16:05:34 +04:00
Oleg Agafonov
33af8939af * Copy effects - fixed that it copy current P/T values (e.g. after effects applied) instead printed/selected values; 2019-04-23 12:03:16 +04:00
Oleg Agafonov
7b7c80c80a [WAR] added God-Eternal Kefnet 2019-04-23 01:02:58 +04:00
Oleg Agafonov
4c899a25bd Test framework: added real time card type check (#4936); 2019-04-22 19:42:25 +04:00
Ian Kahn
ab2995d569
Fix log text with ProliferateEffect
Previously the number of counters would increase: (e.g. "Foo had 1 +1/+1 counter added. Bar had 2 +1/+1 counters added. ...3...")
2019-04-21 13:47:56 -04:00
Oleg Agafonov
eea55c2f76 Fixed Tomik, Distinguished Advokist that it cause wrong class cast error with lands; 2019-04-21 04:42:23 +04:00