Commit graph

8705 commits

Author SHA1 Message Date
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
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
55bc61000a Prepare new release 2019-06-06 23:03:38 +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
bbf1c1343a Prepare release 1.4.35 2019-04-23 23:32:54 +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
Oleg Agafonov
73f7855e4d Fixed that amass don't create token is opponent have it; 2019-04-20 20:15:21 +04:00
Evan Kranzler
d0dc6c7731 fixed Vraska's Assassin token not destroying planeswalkers (fixes #5732) 2019-04-20 09:27:37 -04:00
Evan Kranzler
8bc01775dd fixed Kasmina token creation text (fixes #5731) 2019-04-20 08:57:28 -04:00
Evan Kranzler
7cea71d6f2
Merge branch 'master' into master 2019-04-20 08:52:33 -04:00
Oleg Agafonov
08616b6ec9 * Mind's Desire - improved exile windows; 2019-04-20 09:00:04 +04:00
Oleg Agafonov
8db2e63ae4 Fixed error with card texts 2019-04-19 19:35:16 +04:00
Oleg Agafonov
03795f1aae * Fixed AI game freeze on choose new targets (#5023); 2019-04-19 18:57:36 +04:00
Evan Kranzler
a2592ef36e implemented Sarkhan the Masterless 2019-04-19 08:36:52 -04:00
Oleg Agafonov
7912d217cb
Merge pull request #5714 from ketsuban/alliances
Implement some Alliances cards
2019-04-19 14:25:43 +02:00
antonig@sas.upenn.edu
fcf3fb672b implemented and tested Finale of Devastation. 2019-04-19 02:42:30 -04:00
Oleg Agafonov
ec202e1bc3 Fixed proliferate texts 2019-04-19 09:24:22 +04:00
Oleg Agafonov
ac286a586d Fixed mode text, added 4 modes support; 2019-04-19 09:03:16 +04:00
Oleg Agafonov
03b28cfc1c Fixed amass text 2019-04-19 08:40:35 +04:00
Evan Kranzler
41acfbb2fd Implemented Planewide Celebration 2019-04-18 22:26:36 -04:00
Evan Kranzler
d2a74e9062 Implemented Ugin, the Ineffable 2019-04-18 19:51:25 -04:00
Evan Kranzler
45526c5cc9 Implemented God-Eternal Oketra 2019-04-18 08:08:25 -04:00
Oleg Agafonov
184af3f681 * Fixed AI game freeze on put cards to library (#5023); 2019-04-18 15:46:48 +04:00
Oleg Agafonov
886b96072e God-Eternal Bontu - fixed game freeze with NPE error 2019-04-18 08:44:44 +04:00
Evan Kranzler
e6138d7e7f Implemented Finale of Glory 2019-04-17 18:27:44 -04:00
Evan Kranzler
892a39a2ed Implemented Huatli, Heart of the Sun 2019-04-16 08:47:38 -04:00
Oleg Agafonov
108fba8ab6 Firemind Vessel - fixed AI game freeze, improved choose logic (#5023); 2019-04-16 10:52:48 +04:00
Evan Kranzler
fe83f6ac25 Implemented The Elderspell 2019-04-15 19:14:09 -04:00
Evan Kranzler
254972be77 Implemented Ashiok, Dream Render 2019-04-15 14:10:06 -04:00
LevelX2
c1b2ffdaa7 Merge origin/master 2019-04-14 19:19:25 +02:00
LevelX2
8c11ab8505 * Some minor rule text fixes to WAR cards. 2019-04-14 19:18:46 +02:00
Oleg Agafonov
688a3fa516 * Fixed AI game freeze on random targets selection (#5023); 2019-04-14 18:52:09 +04:00
Evan Kranzler
a4d035100c fixed Revel of the Fallen God creating incorrect tokens (fixes #5715) 2019-04-13 20:59:14 -04:00
Thomas Winwood
fad76ba4e0 Implement Rogue Skycaptain 2019-04-14 01:47:40 +01:00
Evan Kranzler
0b11df3a00 broke out LookAtTopCardOfLibraryAnyTimeEffect into its own class 2019-04-13 15:03:54 -04:00
Evan Kranzler
c780838d29 Implemented God-Eternal Rhonas 2019-04-13 13:15:39 -04:00
Evan Kranzler
b28bef8f62 Implemented Nissa, Who Shakes the World 2019-04-13 12:56:33 -04:00
Evan Kranzler
15d389a5ba Implemented Tamiyo, Collector of Tales 2019-04-13 12:01:31 -04:00
Evan Kranzler
09bf817f1a Implemented God-Eternal Bontu 2019-04-13 11:02:01 -04:00
Oleg Agafonov
bd06d3df51
Merge pull request #5711 from hitch17/draft-log-deck-importer
Ability to import draft logs as decks.
2019-04-13 05:23:33 +02:00
Oleg Agafonov
ba54654ac1 * UI: added support to import deck without card amount numbers (txt-format and clipboard); 2019-04-13 05:48:04 +04:00
John Hitchings
61d40902ab Ability to import draft logs as decks. 2019-04-11 22:27:21 -07:00
Oleg Agafonov
35f705e07b Fixed copy 2019-04-12 08:53:58 +04:00
Oleg Agafonov
9eb8dd6ce5 * Delve ability - improved text; 2019-04-12 08:45:12 +04:00
Evan Kranzler
708b1a6dc9 Implemented Gideon's Company 2019-04-11 22:05:56 -04:00
Evan Kranzler
785917deb6 Implemented Chandra, Fire Artisan 2019-04-10 16:14:34 -04:00
Jeff
59deea27e3 - added message to inform players of a Proliferate event. 2019-04-09 11:55:19 -05:00
Evan Kranzler
ed2612e01a Implemented Tolsimir, Friend to Wolves 2019-04-09 10:55:14 -04:00
Jeff
6e681ab615 - Fixed #5697 2019-04-09 09:50:48 -05:00
Oleg Agafonov
42f5847ba7
Merge pull request #5694 from ketsuban/unglued
Implement two Unglued cards
2019-04-09 03:31:19 +02:00
Evan Kranzler
7e2724ed59 Implemented Kasmina, Enigmatic Mentor 2019-04-08 18:26:19 -04:00
Thomas Winwood
4881b8b08b Set customSet=true for Lady of Proper Etiquette type 2019-04-08 19:24:42 +01:00
Evan Kranzler
53fbe7e502 updated WAR booster checking to guarantee exactly one walker in every pack 2019-04-08 13:43:28 -04:00
Oleg Agafonov
98f29f7c8a * UI: increased richman draft time limits from 75->25 to 70->40 (#5672); 2019-04-08 20:59:03 +04:00
Oleg Agafonov
7a556ea58f * UI: added save/load packs list in random/richman mode (#5672); 2019-04-08 20:15:34 +04:00
Thomas Winwood
44214d65fc Implement Miss Demeanour 2019-04-08 05:10:32 +01:00
Ingmar Goudt
1852de2f47 refactor the copy functionality for no-args watchers 2019-04-07 20:22:14 +02:00
Evan Kranzler
36f5fd365e Implemented Tenth District Legionnaire 2019-04-05 20:14:50 -04:00
Evan Kranzler
ec9b6ac135 Implemented Courage in Crisis 2019-04-05 14:18:39 -04:00
Evan Kranzler
2ec5a47f05 Merge branch 'master' of https://github.com/magefree/mage 2019-04-05 08:00:33 -04:00
Oleg Agafonov
57283c3cca * UI: fixed infinite popup messages about illegal action while skip button activated (#4685); 2019-04-05 13:11:27 +04:00
Evan Kranzler
0b703b1be0 Implemented Role Reversal 2019-04-04 22:15:33 -04:00
Evan Kranzler
997bf86f20 small change to last update 2019-04-03 11:21:30 -04:00
Evan Kranzler
e0ce04c436 updated damage triggers to include planeswalker damage 2019-04-03 11:18:11 -04:00
Oleg Agafonov
6c3b48b2a7 [WAR] - added token image; 2019-04-03 13:02:21 +04:00
Oleg Agafonov
3ca57533b5 Fixed wrong class package, pom config and broken code (visual studio code compatibility) 2019-04-03 02:45:52 +04:00
Evan Kranzler
25627183a2
Merge pull request #5671 from ketsuban/proliferate
Proliferate now doesn't choose a type of counter
2019-04-02 08:14:33 -04:00
Thomas Winwood
be2898d2f9 Proliferate now doesn't choose a type of counter 2019-04-02 03:46:15 +01:00
Evan Kranzler
3e18305890 Implemented Angrath's Wrath 2019-04-01 22:44:38 -04:00
Evan Kranzler
86f651b871 Implemented Teyo, the Shieldmage 2019-04-01 19:03:25 -04:00
Evan Kranzler
7fec2e9837 Implemented Davriel, Rogue Shadowmage 2019-04-01 18:52:22 -04:00
Evan Kranzler
9b43285df4 Implemented The Wanderer 2019-04-01 16:32:57 -04:00
Oleg Agafonov
ef4c223bcf * Jace's Archivist - fixed AI freeze the game (#5023); 2019-04-01 21:52:11 +04:00
Thomas Winwood
dfcb795ada Implement some WAR cards 2019-04-01 18:33:16 +01:00
Jeff
8fea509ed7 - little text fix. 2019-04-01 11:48:33 -05:00
Oleg Agafonov
de4befb9c2 * Sideboarding: fixed that it possible to auto-submit 40 cards deck instead 60 in constructed formats (#5579);
Sideboarding: fixed that cheated deck with sideboard can be used instead lose the game;
2019-04-01 07:34:46 +04:00
Evan Kranzler
3dd6836559 Implemented Vraska, Swarm's Eminence 2019-03-31 20:13:39 -04:00
Evan Kranzler
54a1010c36 updated WAR details 2019-03-31 17:59:28 -04:00
Evan Kranzler
c4efb77e1f Implemented Tibalt, Rakish Instigator 2019-03-31 16:02:37 -04:00
Evan Kranzler
fb20ac0998 Implemented Dreadhorde Invasion 2019-03-31 13:32:34 -04:00
Evan Kranzler
ffef19fe43 Implemented Invade the City 2019-03-31 12:43:00 -04:00
Evan Kranzler
bebc8a8ac4 implemented Herald of the Dreadhorde 2019-03-31 12:29:23 -04:00
Oleg Agafonov
b8782d572d Tests: added test to check copy() methods removes; 2019-03-30 20:26:35 +04:00
Oleg Agafonov
6f4d000518
Merge pull request #5643 from magefree/copy-rewrite
initial rewrite for copy method
2019-03-30 11:45:57 +01:00
Oleg Agafonov
65bb9b2161 Prepare new release 1.4.34 2019-03-29 18:31:00 +04:00
Oleg Agafonov
ff640a942e UI: improved skips and stops for declare blocker step:
* added options to STOP skip on any or zero blockers available;
 * added auto-stop before declare blockers step (e.g. user can cast instants and crew abilities);
2019-03-29 18:10:00 +04:00
Oleg Agafonov
893e9384b1 * Urza, Academy Headmaster - fixed that it freeze the game (#5589); 2019-03-28 19:59:38 +04:00
Jeff
5a3fd7c558 - Added requested card Mercadian Lift. 2019-03-27 15:48:05 -05:00
Jeff
07adaa06ab - Fixed #5654 2019-03-25 11:02:37 -05:00
Oleg Agafonov
70f41c7807 Little fixes 2019-03-23 15:44:55 +04:00
Oleg Agafonov
42658d5cff UI: added mulligan option to new tournament dialog, added mulligan type saving; 2019-03-23 05:49:21 +04:00
Oleg Agafonov
3330680e81
Merge pull request #5644 from hitch17/additional-mulligan-support-5600
Additional mulligan support #5600
2019-03-22 22:48:18 +01:00
Oleg Agafonov
270ec615af Sync old changes 2019-03-22 21:51:26 +04:00
Oleg Agafonov
caf1a98759 * UI: added deck export to MTG Arena format (#4243); 2019-03-22 20:33:36 +04:00
Oleg Agafonov
b26132f300 Fixed text deck import (empty lines); 2019-03-22 20:12:35 +04:00
Oleg Agafonov
a2feda38ce Fixed mtgo deck export (sorting, empty lines); 2019-03-22 20:12:06 +04:00
Jeff
263c9acfcc - Fixed #5538 and #5629 2019-03-21 16:21:46 -05:00
Oleg Agafonov
04cb20f46a UI: improved deck editor exports:
* added deck export to files (#4243);
 * fixed wrong card sorting in deck files after save (#3719);
2019-03-21 19:17:41 +04:00
John Hitchings
1ca876c2ed Fixed LondonMulligan to give mulligan choice after discarding to bottom, which fixes the interaction with Serum Powder. 2019-03-20 23:23:28 -07:00
John Hitchings
47c9aab877 Merge branch 'master' into additional-mulligan-support-5600 2019-03-19 23:39:39 -07:00
John Hitchings
f7d785e406 Add rules comments and handle mulliganing to less than 0 cards for London. 2019-03-19 23:32:18 -07:00
Ingmar Goudt
75dbdbdd32 initial rewrite for copy method 2019-03-19 23:35:38 +01:00
Oleg Agafonov
a260030069 Fix tests 2019-03-19 21:44:06 +04:00
John Hitchings
4a232b148c Add mulligan options to NewTableDialog, passing mulligan information to games. 2019-03-19 06:08:12 -07:00
Oleg Agafonov
7140a41445
Merge pull request #5636 from hitch17/deck-exporters
Refactor Sets.saveDeck into a deck exporter series of classes.
2019-03-19 03:32:54 +01:00
Jeff
a5197ec954 - Fixed the emblem of Garruk, Apex Predator. 2019-03-18 15:23:13 -05:00
Ingmar Goudt
72c8c267a1 move Google Guava to mage-root pom in dependencyManagement, so other modules can use it 2019-03-18 15:48:35 +01:00
Jeff
efb357747d - Fixed #5637 2019-03-18 09:18:39 -05:00
Ingmar Goudt
b638ef4fad delete old performance debug code 2019-03-18 12:54:19 +01:00
John Hitchings
7885a42168 Refactor mulligans out of GameImpl and add Paris, Vancouver, London, and Canadian Highlander. Refactor GameImpls to use their specific mulligan. 2019-03-17 23:23:52 -07:00
Oleg Agafonov
410fd68996 Fixed that triggered abilities shows cancel button in target definition; 2019-03-18 06:10:08 +04:00
John Hitchings
0ea73b19df Refactor Sets.saveDeck into a deck exporter series of classes. 2019-03-17 14:58:05 -07:00
Oleg Agafonov
83d8f5a538 * UI: improved mulligan dialog with color, added free mulligan info in game log; 2019-03-17 06:11:20 +04:00
Oleg Agafonov
bf2861c309 * UI: improved skip buttons and preferences:
* added new setting for STACK skip button: stops on full empty stack (default) or on new objects added;
 * added new dynamic hints for skip buttons to see current settings and modes;
 * fixed that some skip buttons not de-activated after goal was achieved;
 * fixed wrong default render mode for cards, MTGO must be default (#4409);
2019-03-17 04:38:31 +04:00
Ingmar Goudt
c4eeec1bb2 changed the constructor for a Watcher. Before, you had to explictly pass the name of the watcher as an argument. But most of the time this was the name of the class itself. So the watcher now determines internally its name. The method 'getBasicKey' can be overridden. Also updated some encapsulation 2019-03-16 08:35:26 +01:00
Jeff
5c1f41f3a7 - First steps towards fixing Phased/Phased indirectly permanents. 2019-03-15 10:01:02 -05:00
Oleg Agafonov
b6f075c505 * UI: added drag & drop text to deck editor (like drag & drop deck file); 2019-03-13 04:21:31 +04:00
Jeff
678f77c2a3 - little spelling fix 2019-03-12 11:43:16 -05:00
Oleg Agafonov
0f4c6c0260 Improved scry and surveils text dialog; 2019-03-11 18:18:40 +04:00
Jeff
c784753ee6 - little fixes. #5625 2019-03-11 08:50:05 -05:00
Oleg Agafonov
3fb18b334d * Tap cost abilities - added cancel button; 2019-03-11 02:04:49 +04:00
Oleg Agafonov
dab481ee17 * UI: added cancel button for all target definition abilities; 2019-03-10 23:31:11 +04:00
Oleg Agafonov
904660e624 Fixed freeze while disconnects on choose target and card in library dialogs; 2019-03-10 16:04:25 +04:00
Oleg Agafonov
9d5fade2fb * Abilities with sacrifice cost - added cancel button to sacrifice target dialog; 2019-03-10 15:55:33 +04:00
Oleg Agafonov
b432b4b431 Fixed freeze and npe error while disconnects on choose target dialog; 2019-03-10 15:53:53 +04:00
Oleg Agafonov
83afca8bda * Crew ability - added selected and needed power info while choosing, colorozing; 2019-03-10 15:33:04 +04:00
Oleg Agafonov
e08fe53672
Merge pull request #5612 from hitch17/dnd-deck-lists
Ability to drag-and-drop decklists onto DeckEditorPanel in deck editor.
2019-03-08 01:03:07 +01:00
Oleg Agafonov
fa75ac2727 Typo fix 2019-03-07 12:14:27 +04:00
Jeff
5220e44b16 - little fixes 2019-03-06 17:11:45 -06:00
Oleg Agafonov
e68b79336a Typo fix 2019-03-06 14:06:47 +04:00
Jeff
26fd9f6088 - Fixed #5614 2019-03-04 17:38:52 -06:00
Ingmar Goudt
553d263526 add missing diamond operators 2019-03-04 11:57:53 +01:00
Ingmar Goudt
45f665eb1d Sonar cleanups 03032019 2019-03-04 10:43:20 +01:00
Oleg Agafonov
d9fb1d3706 Prepare hotfix release 2019-03-04 06:47:30 +04:00
Oleg Agafonov
f0e56ae71c Merge fix 2019-03-04 05:18:56 +04:00
Oleg Agafonov
e30eecead3 Refactor set's legality, Modern Horizons now available for modern formats; 2019-03-04 04:49:49 +04:00
Oleg Agafonov
6bfea7bfd9 Fixed NPE error in momir emblem; 2019-03-04 03:07:29 +04:00
Oleg Agafonov
8df43cfbb6 Refactor set's legality 2019-03-04 02:31:51 +04:00
John Hitchings
13efdd5b0b Ability to drag-and-drop decklists onto DeckEditorPanel in deck editor. 2019-03-03 13:48:51 -08:00
Ingmar Goudt
8319fbf9ad replace public fields with encapsulation 2019-03-03 09:51:14 +01:00
Evan Kranzler
1724a13f44 Implemented Serra the Benevolent 2019-03-01 19:41:57 -05:00
Oleg Agafonov
d76c764d64 Fixed wrong date format on client/server databases; 2019-03-01 21:59:14 +04:00
Oleg Agafonov
842d3d2ba1 Prepare new release 2019-03-01 20:12:21 +04:00
Oleg Agafonov
f788af1f6a * Improved connection performance on new release, no more empty cards on startup; 2019-03-01 18:55:20 +04:00
Oleg Agafonov
6846db75f4 * Fixed cards with skip untap optional ability that cause game freezes (#5606) 2019-03-01 18:10:32 +04:00
Ingmar Goudt
132e322d6e fix NPE, both spellAbility and spellAbility.getTarget could be null. resolves #5599 2019-02-24 08:13:28 +01:00
Ingmar Goudt
59f8c94af7 nullpointer fix, resolves issue #5602 2019-02-24 08:06:27 +01:00
Ingmar Goudt
3359c1f3f1 sonar 220219, criticals 2019-02-22 12:06:11 +01:00
Ingmar Goudt
c45fe5c701 rename from battlefield to graveyard event comparing to .isDiesEvent 2019-02-20 10:20:07 +01:00
Ingmar Goudt
056226d83c Sonar fixes 19022019 2019-02-19 21:51:45 +01:00
Oleg Agafonov
8cf681dff2 Updated libraries to latest versions and code compatibility fixes; 2019-02-17 16:12:57 +04:00
Oleg Agafonov
971a98061d Fixed SQL errors on non escaped symbols in usernames/emails/passwords; 2019-02-17 16:09:00 +04:00
Ingmar Goudt
f2c64629a5 couple of Sonar fixes 2019-02-15 13:31:10 +01:00
Jeff
ac4e51ce0d - Fixed Rivals' Duel 2019-02-13 10:19:07 -06:00
Oleg Agafonov
f778d95f54 Prepare next release 2019-02-09 17:42:46 +04:00
Oleg Agafonov
00ad61b6bd Added new Mythic Edition (MED) set (16 cards, scryfall download) 2019-02-09 16:45:27 +04:00
Oleg Agafonov
c29b68f030 Disabled cards rating and classes preloading on startup (lags problem); 2019-02-09 16:09:07 +04:00
Oleg Agafonov
e285b2770d * Curse cards - fixed that it triggers on planeswalker attack only (#5566); 2019-02-09 15:40:23 +04:00
Oleg Agafonov
c6f0239bcd
Merge pull request #5570 from EvanMurawski/splitcardimport
Recognize split card names in mtggoldfish format
2019-02-09 14:46:21 +04:00
Oleg Agafonov
c52a3c8a48
Merge pull request #5580 from magefree/5497-dynamic-hints-for-cards
UI: Add dynamic hints for cards
2019-02-09 14:44:42 +04:00
Oleg Agafonov
d97229cbcd Fix 2019-02-09 12:41:21 +04:00
Oleg Agafonov
7e4767fd30 Hints: removed duplicated hints from popup; 2019-02-09 12:28:29 +04:00
Oleg Agafonov
f341d35ece Hints: disable card hints in m15 render mode; 2019-02-09 12:00:24 +04:00
Jeff
24e24a968e - Added Phantasmal Sphere and Misfortune. 2019-02-08 17:25:28 -06:00
Oleg Agafonov
60a0ec03c0 Fixed NPE errors in canBlock restrict checks; 2019-02-09 02:48:11 +04:00
Oleg Agafonov
454d76e30b Fixed NPE errors in canAttack restrict checks; 2019-02-08 17:30:47 +04:00
Oleg Agafonov
dd2cf5a939 Added gate you control hint for cards; 2019-02-08 17:17:40 +04:00
Oleg Agafonov
0d4e6772ed Added ferocious hint for cards (you control reature with power 4); 2019-02-08 03:32:52 +04:00
Oleg Agafonov
1b32793388 Added restrict effect hints to permanents; 2019-02-08 03:08:28 +04:00
Oleg Agafonov
92ce8be91d Added hints to cards; 2019-02-07 15:21:01 +04:00
Oleg Agafonov
ae410d4d8d Added creatures you control hint 2019-02-07 03:55:30 +04:00
Oleg Agafonov
cb289b1b04 Refactor creature/s you control to use static filters and values 2019-02-06 21:28:26 +04:00
Jeff
e28bb36b72 - Fixed #5572. Reverted #5566. 2019-02-06 10:52:46 -06:00
Oleg Agafonov
f0c76eb529 Added spectacle hints to cards (opponents lost life) 2019-02-06 18:27:23 +04:00
Oleg Agafonov
283b101a08 Refactor OpponentsLostLifeCount to enum 2019-02-06 17:31:34 +04:00
Oleg Agafonov
d3f9e1d2f2 Refactor 2019-02-05 23:36:47 +04:00
Oleg Agafonov
4ffc40ff69 Added dynamic value hints for cards 2019-02-05 23:35:39 +04:00
Oleg Agafonov
6a7253d22f Added delirium hint as enum 2019-02-05 23:12:42 +04:00
Oleg Agafonov
0e61a0adeb Added city blessing hint as enum 2019-02-05 17:38:36 +04:00
Oleg Agafonov
043a7af086 Added condition hints with good/bad icons for cards 2019-02-05 13:05:10 +04:00
Oleg Agafonov
2a63314714 Added condition hints for cards 2019-02-05 02:43:13 +04:00
Oleg Agafonov
13ed3c6dbd Added static and colored hints for cards 2019-02-04 18:48:45 +04:00
Brik Royster
fce93c66e1 Fixed NullPointerException when Accursed Witch transforms (#5571)
* Fixed NullPointerException when Accursed Witch transforms

Feedback issue: #5529
Aura replacement code tried to remove the second face from the original zone which had ownerId == null. Now, we remember the first face (the original card) and remove it from the old zone before creating a permanent out of the second face.

* Accursed Witch's death trigger now requires targetting opponent instead of using aura replacement effects

Feedback issue: #5529
Previously you could attach Infectious Curse to either player and get around hexproof
The ability text has also been updated to match the Oracle text of Accursed Witch.
2019-02-03 19:40:46 -06:00
Oleg Agafonov
b36465e5c9 Refactor: removed unused custom set filters in SubType requests; 2019-02-04 00:53:51 +04:00
Oleg Agafonov
e9c6c4fefa Fixed that choose creature type dialog don't shows custom sets (#5569) 2019-02-04 00:51:35 +04:00
Ingmar Goudt
2cd9e25229 better use of the CardsImpl constructor 2019-02-03 21:08:31 +01:00
Evan Murawski
5fe5fd01c3 Replace single slash with double slash in split card names when importing with TxtDeckImporter.java 2019-02-02 18:43:11 -05:00
Evan Murawski
ec02774818 Replace single slash with double slash in split card names when importing with TxtDeckImporter.java 2019-02-02 18:41:56 -05:00
Ingmar Goudt
dc112215d4 change looping over maps (Sonar) 2019-02-02 22:37:02 +01:00
Ingmar Goudt
63718e7a6e Sonar fixes
remove the deprecated GameState.getWatchers()
2019-02-02 22:09:55 +01:00
Jeff
cd23125664 - Fixed #5566 2019-02-01 10:04:46 -06:00
Oleg Agafonov
0697cbe24c UI: added draft rating column to deck editor 2019-02-01 18:57:24 +04:00
Oleg Agafonov
7eba755666 Refactor card ratings, fixed rare error exception "comparison method violates its general contract" (different ratings in same card); 2019-02-01 17:41:29 +04:00
Evan Kranzler
c46b268819 Implemented Energy Vortex 2019-01-30 16:28:26 -05:00
Oleg Agafonov
53f4241518 Fixed NPE error on empty library 2019-01-30 20:38:53 +04:00
Jeff
3595a7fa79 - Fixed #5560. Eventually I will get to the other similar effects. 2019-01-29 16:13:27 -06:00
Evan Kranzler
f4401b32f9 fixed High Alert allowing opposing defenders to attack 2019-01-28 18:58:02 -05:00
Oleg Agafonov
d18325b268 Missing from last release 2019-01-27 22:19:35 +04:00
Evan Kranzler
22971b63fa fixed Benthic Biomancer triggered ability being optional 2019-01-27 10:49:13 -05:00
L_J
7ffbb939a1
Implemented Brine Hag, Venarian Gold, Wall of Shadows 2019-01-27 08:55:39 +01:00
jeffwadsworth
d07415e08c - Fixed #5440 2019-01-26 16:19:44 -06:00
Evan Kranzler
9a5ac6a848 fixed several of my old implementations 2019-01-26 14:19:19 -05:00
Evan Kranzler
bd652632f9 various em dash text fixes 2019-01-26 13:44:39 -05:00
Evan Kranzler
34e3bb42db fixed Rhythm of the Wild not giving Riot to creatures that weren't cast 2019-01-25 10:32:29 -05:00
Jeff
e1292a0ea3 - Fixed #5547 #5546 2019-01-24 11:58:13 -06:00
Oleg Agafonov
d25bca748d Fixed Arrays.asList code 2019-01-23 19:15:03 +04:00
Evan Kranzler
9b94b27e54 updated Flagbearer ability to reflect rules change 2019-01-22 19:13:21 -05:00
Evan Kranzler
1431e69b43 updated some oracle text 2019-01-22 19:07:15 -05:00
Oleg Agafonov
8e84df23b7 Prepare new release 2019-01-22 18:32:51 +04:00
Jeff
1ef5d878c6 - added some null checks. #5537 2019-01-21 10:33:42 -06:00
Oleg Agafonov
ff5839860e Improved target messages for users: added extra hints;
Applied Biomancy - added target's choose hints;
2019-01-21 12:53:02 +04:00
LevelX2
678118c79d * Fixed a problem with commander game resatrt from Karn Liberated. 2019-01-20 19:40:38 +01:00
LevelX2
fa859a6bfd * Aftermath - Fixed that aftermath cards were no longer castable from graveyard (fixes #5539). 2019-01-20 19:39:40 +01:00
Evan Kranzler
6466acb70a fixed Growth-Chamber Guardian not triggering when it enters with counters 2019-01-20 11:28:22 -05:00
L_J
fe3cafc121
Merge pull request #5473 from Zzooouhh/Zzooouhh-urza
Implemented Urza, Academy Headmaster
2019-01-20 08:44:24 +01:00
Evan Kranzler
fa0e295932 updated Ajani's Pridemate to reflect recent errata 2019-01-17 17:40:15 -05:00
Ingmar Goudt
dbdd9c00a3 Merge branch 'master' of https://github.com/magefree/mage 2019-01-17 18:22:19 +01:00
Ingmar Goudt
8a05db7fd8 small text fix 2019-01-17 18:22:07 +01:00
Evan Kranzler
908d8acc9f
Merge pull request #5532 from magefree/coinFlips
Added support for multiple copies of Krark's Thumb
2019-01-17 11:12:02 -05:00
Evan Kranzler
cbc814d38e some log message changes 2019-01-17 10:57:53 -05:00
Evan Kranzler
837503d8f4 reworked coin doubling again for some reason 2019-01-17 10:32:02 -05:00
Ingmar Goudt
7c2f55eda0 couple of sonar fixes 2019-01-17 12:03:22 +01:00
Evan Kranzler
1144bf3b4f finished adding support for multiple copies of Krark's Thumb 2019-01-16 18:20:36 -05:00
Evan Kranzler
21d7bef21f fixed Domri, Chaos Bringer's emblem not triggering 2019-01-16 15:24:16 -05:00
Evan Kranzler
b21f60bc0f
Merge pull request #5531 from magefree/master
merge
2019-01-16 15:12:30 -05:00
Evan Kranzler
74c1cbf6d9 begin fix for multiple copies of Krark's Thumb 2019-01-16 15:11:14 -05:00
Oleg Agafonov
975cff93e3 Merge remote-tracking branch 'origin/master' 2019-01-16 21:04:00 +04:00
Oleg Agafonov
14f66029f8 Missing v33 commit 2019-01-16 20:59:45 +04:00
Evan Kranzler
63fb5964d4
Merge pull request #5527 from magefree/coinFlips
Fixing coin flip implementation (WIP - Do Not Merge)
2019-01-16 11:44:01 -05:00
Oleg Agafonov
68177b9fe4 Fixed SacrificeTargetCost text 2019-01-16 05:52:19 +04:00
Evan Kranzler
335dab7160 fixed broken tests 2019-01-15 19:43:41 -05:00
Evan Kranzler
c34f611279 updated Krark's Thumb, still doesn't work in multiples 2019-01-15 16:55:45 -05:00
Evan Kranzler
57a362ae29 updated abilities which trigger off of a coin flip 2019-01-15 16:16:56 -05:00
Evan Kranzler
535fe221e3 rewrote how coins are flipped 2019-01-15 15:56:40 -05:00
Jeff
da3fdee621 - more text fixes 2019-01-15 11:07:53 -06:00
Evan Kranzler
f5fffcf417 initial refactor 2019-01-15 11:51:49 -05:00
Oleg Agafonov
1d43b38a5f Karn Liberated - fixed watchers errors on game restart ability 2019-01-15 20:48:21 +04:00
Jeff
14018a4004 - little text fix for OneOrMoreCountersAddedTriggeredAbility 2019-01-15 08:59:24 -06:00
jeffwadsworth
efe0c222c4 - little text fix on AfterlifeAbility 2019-01-15 02:28:52 -06:00
Oleg Agafonov
0b648343bc Fixed AddCountersTargetEffect text for cards with target pointers (#5523) 2019-01-14 11:37:02 +04:00
Ingmar Goudt
4e4d46437c update riot test 2019-01-14 00:18:21 +01:00
Ingmar Goudt
3b5b535de1 change Riot option to +1/+1 counter 2019-01-13 23:15:01 +01:00
Ingmar Goudt
1eb668b608 fix tooltip for Gate Colossus, update the Riot ability choose popup 2019-01-13 23:12:14 +01:00
Evan Kranzler
fd7b8f29ca made many dynamicvalues into singleton enums 2019-01-12 21:29:02 -05:00
L_J
23456d4fce
Implemented more Legends cards 2019-01-13 02:14:58 +01:00
Ingmar Goudt
661eae6d1f exclude one 2019-01-13 00:20:34 +01:00
Ingmar Goudt
5759957aad fix generating text for Priest Of Forgotten Gods 2019-01-12 23:56:57 +01:00
Ingmar Goudt
c1f9586948 Add a space in the generated rules text 2019-01-12 23:27:54 +01:00
Evan Kranzler
0ca71a2616 fixed Sentinel's Mark trigger 2019-01-12 17:25:34 -05:00
Evan Kranzler
0311ca8c6e fixed Mass Manipulation targeting issues 2019-01-12 17:18:31 -05:00
Evan Kranzler
8629977f14 refactored many other predicates to singleton enums 2019-01-12 16:30:49 -05:00
Evan Kranzler
dc409c9a9e refactored ColorlessPredicate to singleton enum 2019-01-12 16:15:19 -05:00
Evan Kranzler
e6b99215e1 refactored AnotherPredicate to singleton enum 2019-01-12 16:12:51 -05:00
Evan Kranzler
92b5535a0e fixed an issue with cost adjusters 2019-01-12 15:48:52 -05:00
Evan Kranzler
3483b3a181
Merge branch 'targetAdjustment' into master 2019-01-12 14:42:58 -05:00
Oleg Agafonov
2f32951707 Domri, Chaos Bringer - fixed wrong emblem creature; 2019-01-12 23:09:44 +04:00
Oleg Agafonov
1b55cbd44c [RNA] added tokens and download support from scryfall; 2019-01-12 21:13:56 +04:00
Evan Kranzler
581db3d6e0 Implemented Tin Street Dodger 2019-01-12 10:19:54 -05:00
LevelX2
0e19ffd173 * Fixed a problem with TapEnchantedEffect that could cause cast exceptions (fixes #5509). 2019-01-12 15:18:53 +01:00
L_J
bec74bbd4a
Added missing Legends counters 2019-01-12 11:51:22 +01:00
Jeff
da7b91095c - correct spelling 2019-01-11 16:23:30 -06:00
Evan Kranzler
f239e8dd44 Implemented Haazda Officer 2019-01-11 15:09:57 -05:00
Oleg Agafonov
c3848b7530
Merge pull request #5503 from hitch17/add-cockatrice-deck-format-5493
Adding o8d deck format.
2019-01-11 08:14:38 +04:00
John Hitchings
1e6e279bc8 Merge branch 'add-cockatrice-deck-format-5493' of github.com:hitch17/mage into add-cockatrice-deck-format-5493 2019-01-10 19:40:54 -08:00
John Hitchings
aac3e3fdc1 add importer for o8d and some more decks to test. 2019-01-10 19:33:42 -08:00
Oleg Agafonov
8f0351896c
Merge pull request #5502 from ZeldaZach/address_mage_stuff
Address Json Tests
2019-01-11 07:24:56 +04:00
Oleg Agafonov
11f93cf762
Merge pull request #5501 from hitch17/add-cockatrice-deck-format-5493
UI: add cockatrice deck format support for import (*.cod)
2019-01-11 07:17:48 +04:00
Zach Halpern
163a5e45d3 update wordings so they are not blank 2019-01-10 22:14:29 -05:00
Zach Halpern
1712b05c33 Merge branch 'master' into address_mage_stuff 2019-01-10 21:35:12 -05:00
Zach Halpern
8a5f2288f9 Address crash points of JSON tests 2019-01-10 21:27:38 -05:00
Evan Kranzler
7a89d22880 Implemented Sphinx of the Guildpact 2019-01-10 19:05:38 -05:00
Ingmar Goudt
d5003a6f8f add null check 2019-01-11 01:04:34 +01:00
Ingmar Goudt
d7e68cf932 clean up cipherEffect 2019-01-11 01:02:45 +01:00
Evan Kranzler
88374751b1 Implemented Forbidding Spirit 2019-01-10 18:08:35 -05:00
Evan Kranzler
acf34f9429 Implemented Plaza of Harmony 2019-01-10 17:59:47 -05:00
Evan Kranzler
3ff26721e8 Implemented Charging War Boar 2019-01-10 17:01:26 -05:00
John Hitchings
5bf748e2b5 Move tests to the Mage directory and stub out looking up cards by names for tests. 2019-01-10 11:04:00 -08:00
Evan Kranzler
84a4681767 Implemented Persistent Petitioners 2019-01-10 13:40:40 -05:00
John Hitchings
9372ba63e2 Move tests to the Mage directory and stub out looking up cards by names for tests. 2019-01-10 09:52:38 -08:00
John Hitchings
58e629dca6 Refactored DeckImporter and obsoleted DeckImporterUtil. Added/refactored a PlainTestDeckImporter as a base class for text formatted importers to extend. 2019-01-10 08:27:05 -08:00
Evan Kranzler
8b2cae6176 added missing cost to Priest of Forgotten Gods 2019-01-09 22:34:43 -05:00
Evan Kranzler
6aeedac387 Implemented Font of Agonies 2019-01-09 12:43:15 -05:00
Oleg Agafonov
942ecc5328 Fixed errors on empty targets in some effects;
Added export code example for mtgjson4 project;
2019-01-09 10:54:59 +04:00
Evan Kranzler
0608d2cf3d combined "one more more counters added" triggers into a single class 2019-01-08 20:02:22 -05:00
Evan Kranzler
ddcb383486 Implemented Thrash // Threat 2019-01-08 18:49:29 -05:00
Oleg Agafonov
b313ab3b7c Fixed missing watchers on game start, added error on missing watcher; 2019-01-08 13:50:19 +04:00
Oleg Agafonov
8a9619bf80 Fixed build time 2019-01-08 11:00:26 +04:00
Oleg Agafonov
503f383963 Fixed NPE error on some tournaments finish; 2019-01-08 09:26:14 +04:00
Oleg Agafonov
063be44523 Fixed NPE errors for some cards (#5471) 2019-01-08 07:15:39 +04:00
Evan Kranzler
32b800d99e Merge branch 'master' of https://github.com/magefree/mage 2019-01-07 22:02:47 -05:00
Oleg Agafonov
d0c8d6a707 Fixed NPE errors for some cards (#5471) 2019-01-08 07:00:14 +04:00
Evan Kranzler
61de630f5a Implemented Domri, Chaos Bringer 2019-01-07 21:00:39 -05:00
Evan Kranzler
44115b93d0 Implemented Gruul Beastmaster 2019-01-07 19:30:47 -05:00
Evan Kranzler
c1c09020a6 Implemented Mesmerizing Benthid 2019-01-07 19:13:03 -05:00
LevelX2
1146a38fca * Fixed a problem with exception by getting the build time for version. 2019-01-07 21:47:57 +01:00
Jeff
2b4c7eba13 - Added Musician and Illusionary Terrain. 2019-01-07 14:37:44 -06:00
LevelX2
704972b6b1 * Lord Windgrace - Fixed tooltip rule text. 2019-01-07 17:25:09 +01:00
LevelX2
e938f91e3e * Myth Unbound - Fixed the two working abilities(fixe #5347). 2019-01-07 16:39:49 +01:00
LevelX2
7ef0a5f654 Merge origin/master 2019-01-07 11:39:10 +01:00
LevelX2
f7ccca6964 * Old Fogey - Shortened the generated rule text, so that nothing was cut at the end of the text. 2019-01-07 11:38:08 +01:00
Oleg Agafonov
5c4dc104f7 Typo fix 2019-01-07 14:22:13 +04:00
Oleg Agafonov
8c7df840f3 Fixed NPE errors for some cards (#5471) 2019-01-07 14:04:33 +04:00
Ingmar Goudt
9a310732d8 rewrite watchers to GameState.getWatcher(), rather than getWatchers().get(). This hides away the implementation of the watchers. Accepts the class rather than the name. Always returns the specific subclass, so there is no more casting needed. Only 1 line in the common library remains, that is still using the old 'deprecated' method. Needs a new version release to do that. 2019-01-06 20:59:13 +01:00
Oleg Agafonov
f01b3d3ca3 Improved new version cleanup and more:
* fixed db cleanup on new version (sets + cards);
 * fixed empty sets list after update;
 * fixed NPE errors in sets list on new install/version;
 * added joke sets filter to deckeditor.
2019-01-06 15:41:30 +04:00
LevelX2
554e8076cf * Fixed that the becomes land effects of Gaea's Liege and Graceful Antelope did not end when the source left the battlefield. 2019-01-06 11:11:09 +01:00
Ingmar Goudt
95a31759b5 add nullchecks on watchers 2019-01-06 00:35:26 +01:00
Evan Kranzler
8463d693d4 Condensed "targets a permanent you control" conditions into a single class 2019-01-05 13:41:34 -05:00
LevelX2
285beab3a2 * Fixed player target handling of TargetPermanentOrPlayer.java (fixes Shalai + Burning Sun's Avatar #5252 problem). 2019-01-05 17:00:31 +01:00
Oleg Agafonov
0293b91c25 Tests: added random results image generators (random, shuffle, dice, planar dice); 2019-01-05 13:12:59 +04:00
Evan Kranzler
53720149c6 updated the Addendum condition to take into account whether a spell was actually cast 2019-01-04 21:31:29 -05:00
Evan Kranzler
fd709bcd28 Implemented Verity Circle 2019-01-04 20:58:02 -05:00
Oleg Agafonov
0670c401e0 * Fixed Brood Of Cockroaches text 2019-01-05 01:42:43 +04:00
Oleg Agafonov
207e95e001 Fixed card texts: instant or sorcery spell; 2019-01-05 00:46:53 +04:00
Oleg Agafonov
d81d253395 Fixed GainAbilityAttachedEffect that it can't apply some effects after enchantment dies (from gitter); 2019-01-04 23:57:28 +04:00
Oleg Agafonov
f6585ef734 Improved and fixed cards texts:
* fixed wrong texts for draw card abilities;
 * added multi-effects text generation instead copy-paste (concatBy).
2019-01-04 23:51:42 +04:00
Oleg Agafonov
83cf370cc6 Merge remote-tracking branch 'origin/master' 2019-01-04 23:34:15 +04:00
Evan Kranzler
89454f9c8e Implemented High Alert 2019-01-04 14:19:05 -05:00
Evan Kranzler
1f24af8716 Implemented Carnival // Carnage 2019-01-04 12:28:14 -05:00
Evan Kranzler
958503cff2 Merge branch 'master' of https://github.com/magefree/mage 2019-01-04 11:51:03 -05:00
Evan Kranzler
d49cd6f304 Implemented Electrodominance 2019-01-04 11:40:11 -05:00
LevelX2
50cd0af601 * Kess, Dissident Mage - Fixed that it did not allow split cards from graveyard. Fixed some other problems with the card. 2019-01-04 17:21:07 +01:00
Evan Kranzler
a7b0f05890 Implemented Ravager Wurm 2019-01-03 21:09:39 -05:00
Evan Kranzler
965fa971a3 updated implementation of Adapt 2019-01-03 16:20:36 -05:00
Oleg Agafonov
0bd9bd6015 Merge remote-tracking branch 'origin/master' 2019-01-03 21:23:58 +04:00
LevelX2
423115ced5
Merge pull request #5487 from ninthworld/Omnath
Fix ManaTypeInManaPoolCount to include conditional mana (Fixes #5458)
2019-01-03 17:38:34 +01:00
LevelX2
e8eaf49280 * Fixed possible class cast exception. 2019-01-03 17:33:52 +01:00
LevelX2
4365449be3 * Fixed a problem with variable life costs (e.g. Toxic Deluge) and prevent pay life effects (e.g. Angel of Jubilation) that did not work for those spells. 2019-01-03 16:35:10 +01:00
Oleg Agafonov
a4e374f96a Refactor: improved emblem rules generation; 2019-01-03 11:41:34 +04:00
ninthworld
8183797c41 fix manatype in pool count to include conditional mana 2019-01-02 23:29:11 -08:00
Ingmar Goudt
e1630b3c6f remove deprecated String subtype methods 2019-01-03 06:35:36 +01:00
Oleg Agafonov
a995643512 Fixed card texts 2019-01-03 04:13:24 +04:00
Evan Kranzler
47b943021f Implemented Mass Manipulation 2019-01-02 18:56:15 -05:00
Oleg Agafonov
e9f9b05141 Fixed NPE errors for some cards (#5471) 2019-01-02 20:06:01 +04:00
Oleg Agafonov
2ebad63595 Added seeds support to random util:
* all xmage code uses shared util to generate random values;
 * tests can uses seeds to repeat "random" results like deck builds or AI plays;
2018-12-30 03:52:30 +04:00
Ingmar Goudt
799fe34b02 change HashMap to EnumMap 2018-12-29 10:30:40 +01:00
L_J
d0fbe6d35c Implemented Alliances cards (#5470)
* Implemented Alliances cards (#84)

* Fixed Storm Elemental

* Fixed Sworn Defender
2018-12-27 22:53:10 -06:00
jeffwadsworth
d20872dcb9 - Fixed #5474 2018-12-27 02:51:24 -06:00
L_J
a48ed51373
Reverted BrainstormEffect 2018-12-24 14:53:13 +01:00
L_J
7c983aa21b
Implemented Urza, Academy Headmaster 2018-12-24 01:41:49 +01:00
L_J
b4f2f8ed72
Implemented Urza, Academy Headmaster 2018-12-24 01:41:02 +01:00
Oleg Agafonov
d36cca02aa Fixed NPE errors for some cards (#5471) 2018-12-23 20:24:20 +04:00
Oleg Agafonov
e75e2324c7 Fixed NPE errors for some cards 2018-12-23 17:56:46 +04:00
Evan Kranzler
baef4114d2 fixed silver bordered cards being legal in various formats 2018-12-22 11:26:15 -05:00
Evan Kranzler
d9ca4f2ff6 Implemented Sphinx's Insight 2018-12-21 19:40:59 -05:00
Oleg Agafonov
0d949ca7e6 Typos 2018-12-22 01:05:43 +04:00
Oleg Agafonov
20a3b0b777 Added cards database cleanup on new builds/releases run (client/server sides); 2018-12-21 23:11:43 +04:00
Evan Kranzler
20d5bfc3c9 Implemented Incubation // Incongruity 2018-12-21 13:21:19 -05:00
Jeff
2fca196f79 - Fixed #5468 2018-12-21 11:46:30 -06:00
Oleg Agafonov
2fdef83284
Merge pull request #5455 from SpikesCafe-google/AddSpinyStarfish3
Add Spiny Starfish from Alliances.
2018-12-21 05:33:04 +04:00
Oleg Agafonov
7b2598eba8
Merge pull request #5466 from hitch17/mtgo-compatible-draftlogs-5450
Make draft logs compatible with MTGO format #5450
2018-12-21 05:24:06 +04:00
Evan Kranzler
2b6f85df23 Implemented Frenzied Arynx 2018-12-20 18:44:57 -05:00
John Hitchings
7e621ee8af Make draft logs compatible with MTGO format #5450 - https://github.com/magefree/mage/issues/5450 2018-12-19 19:41:44 -08:00
Evan Kranzler
fd25ac8ccb Implemented Aeromunculus 2018-12-19 18:19:49 -05:00
Evan Kranzler
846c133d04 Implemented Rix Maadi Reveler 2018-12-18 19:44:55 -05:00
Evan Kranzler
b5f383254c implemented Afterlife ability 2018-12-17 22:25:52 -05:00
Oleg Agafonov
0a2f312da7 Added build time to version info, cleanup manifest files; 2018-12-15 18:29:10 +04:00
Jeff
c2739c004b - Added Dread Wight and Cloak of Confusion. 2018-12-13 17:43:11 -06:00
SpikesCafe-google
a852d5c9e5 Add Spiny Starfish from Alliances. 2018-12-09 13:48:55 -05:00
Jeff
605abc1624 - Added Limited Resources and Aether Tide. 2018-12-07 16:19:26 -06:00
Oleg Agafonov
1d450730c0 Merge origin/master 2018-12-07 01:21:32 +04:00
Oleg Agafonov
02b7e2cf10 Refactor: extract card names compare logic (is empty name, is same name)
Fixed last broken tests
2018-12-07 00:26:50 +04:00
Jeff
21c6afa1c7 - Added Volrath's Dungeon. 2018-12-05 16:05:46 -06:00
Jeff
dcec3ad66e - Stronghold Set 100%. Added Hidden Retreat, Ransack, Rebound, and Samite Blessing. 2018-12-04 16:32:23 -06:00
Oleg Agafonov
8700da94d7 * Added damage info on re-targeting targets (on copy); 2018-11-29 19:47:51 +04:00
Oleg Agafonov
bb18814c84 * Fixed wrong re-targeting on copy complex cards (fixed adjustTargets for copies)
* Oath Of Lieges - Fixed that copy of opponent's card don't work;
* Oath Of Lieges - Fixed that it can shuffle lib without search;
2018-11-29 19:39:13 +04:00
Oleg Agafonov
59bda7f1d5 Refactor: added copyFrom info for all objects (original card used for copy, copy of copy and etc); 2018-11-29 19:29:39 +04:00
LevelX2
6c55ede2c2 Removed debug message. 2018-11-27 00:37:48 +01:00
LevelX2
8addea6891 Removed debug message. 2018-11-27 00:29:47 +01:00
LevelX2
e6ce58d6bf XMage 1.4.32V0 2018-11-26 19:30:22 +01:00
LevelX2
c4cd4b8b6a
Merge branch 'master' into JaceArchitectOfThoughtFix 2018-11-26 17:29:31 +01:00
LevelX2
e7d129a074
Merge branch 'master' into add-minimum-rating-option 2018-11-26 17:18:35 +01:00
jeffwadsworth
ea4c202a40 - Added Fatigue and Disappear. 2018-11-25 10:51:27 -06:00
jeffwadsworth
9c0162caad - Added "ARROW" counter. 2018-11-25 10:11:50 -06:00
Ingmar Goudt
25e7b53268 small performance update for ClassScanner 2018-11-24 23:50:05 +01:00
jeffwadsworth
2e17cb334e - Fixed #5100. Added a replacement effect for skipping the combat phase. 2018-11-23 11:36:29 -06:00
LevelX2
43ee5e9c43 * Acklay of the Arena - Fixed triggered ability (fixes #5416). 2018-11-23 12:30:44 +01:00
Oleg Agafonov
e5bdb85076 * Mirari - Fixed that it can select any spell instead triggered use. 2018-11-22 21:53:32 +04:00
Oleg Agafonov
a9451711bb Tests: added support of TargetCardInExile, TargetCardInGraveyard and variations; 2018-11-21 16:43:46 +04:00
Jeff
c7a3e53083 - Fix for Bug #5435. Specific to "must attack" code. 2018-11-20 17:43:26 -06:00
Jeff
1bac7fc04c - Fixed Soul Strings. DoUnlessAnyPlayerPays now supports X costs. 2018-11-20 09:46:36 -06:00
Jeff
0eedca5283 - Fixed #5393 2018-11-19 15:09:36 -06:00
Oleg Agafonov
6fa014d1a9
Merge pull request #5420 from hitch17/load-deck-content-from-clipboard
Prepopulate DeckImportFromClipboardDialog content with string content…
2018-11-17 11:36:43 +04:00
Oleg Agafonov
e389b95738 * Fixed exception error on copy of copy of aura effects for some cards (Estrid's masks, Animate Dead, etc);
* Fixed wrong copy effects on rollbacks or errors;
2018-11-14 05:02:29 +04:00
Oleg Agafonov
9986c1d365 [GNT] implemented Militant Angel 2018-11-13 00:25:48 +04:00
Oleg Agafonov
209bccef0c [GNT] implemented Inspired Sphinx 2018-11-12 22:31:42 +04:00
Oleg Agafonov
a0e4791ad6 [GNT] implemented Avatar of Growth 2018-11-12 04:17:04 +04:00
Oleg Agafonov
0b089895a7 Fixed scryfall images download for PUMA set; 2018-11-12 04:14:53 +04:00
Oleg Agafonov
fe3eda4944 * Spell Contortion, Warleader's Helix - fixed wrong card text;
Removed unused getRules in cards code;
2018-11-11 22:54:49 +04:00
Jeff
61fb31bea0 - Added Serra's Hymn and Venomous Fangs. 2018-11-08 17:54:05 -06:00
John Hitchings
baeb9d8b00 Prepopulate DeckImportFromClipboardDialog content with string contents of clipboard. 2018-11-08 09:25:03 -08:00
Oleg Agafonov
08e88b8a65
Merge pull request #5351 from magefree/plane-and-emblem-implements-controllable
Refactor: make plane and emblem implement Controllable
2018-11-04 23:38:54 +04:00
Jeff
29e34934d9 - Added Hidden Stag and Soul Sculptor. 2018-10-29 11:45:37 -05:00
brodee
4f61afa62b AI updates, more cards will have the isRemoval bonus to their card rating
these weren't being picked up as removal spells and now are:
* modal spells where one mode is a removal spell
* spells that do a dynamic amount of damage, such as fireball
* cards that reduce the toughness temporarily or permanently
* cards that keep a creature tapped down
* cards that exile a creature
* cards that damage creatures that are attacking or blocking
* enchantments that exile a creature when they etb
* fight cards, and one sided fight cards

the ai will now rate those types of cards higher as they are removal
2018-10-28 00:16:14 -07:00
brodee
843702bd86 draftbots and afk autopicks will more aggressivly take rares
two draft quality of life improvements for situations when real players
quit or go afk.
1. made the draftbot lean on rarity for card ratings. this helps make
the draftbots behave and not just pass bombs to the human players.
2. changed the draft autopick that happens when the timer runs out and
the player hasn't selected anything. I changed it to pick the last card
in the pack, which should be the rarest, so basically it raredrafts.
again making it so AFK players aren't just feeding real live human
players the best cards.
2018-10-26 22:17:57 -07:00
garypwn
dd32a463ec Fix Commander Ninjutsu 2018-10-25 17:44:15 -07:00
LevelX2
44d3276046 * Brilliant Ultimatum - Fixed that it was not checked if the player is still allowed to play a land. 2018-10-25 16:15:24 +02:00
LevelX2
99b4cacf33 * Changed maven project definition to use protoc-jar-maven-plugin. 2018-10-25 12:48:33 +02:00
L_J
4e231f51a1
Merge pull request #5394 from Zzooouhh/Zzooouhh-bandswithother
Implemented Bands With Other & related cards
2018-10-21 22:33:33 +02:00
LevelX2
26a93d4427 Reworked ability source object handling. 2018-10-21 21:37:23 +02:00
L_J
5a08632d59
Implemented Bands With Other 2018-10-21 16:59:10 +02:00
Evan Kranzler
b2beefc680 fixed Vraska, Golgari Queen's emblem not triggering 2018-10-20 20:21:54 -04:00
LevelX2
9423731e97 * Fixed a problem with removing too much counters (caused by AI simulation). 2018-10-14 10:14:36 +02:00
Evan Kranzler
34e4012540 Implemented Mistfolk 2018-10-10 21:05:01 -04:00
LevelX2
b0395f704f * Ob Nixilis, Unshacked - Fixed that it doesn't triggered on failing to find a card (fixes #5367). 2018-10-10 23:35:03 +02:00
LevelX2
fde0ba284a * Glarecaster - Fixed that its redirect ability allows for multiple redirects not only if damage is dealt at the same time (fixes #5368). 2018-10-10 23:17:10 +02:00
LevelX2
189984d3d6 DeckEditorPanel - Fixed some existing exceptions. 2018-10-10 15:37:26 +02:00
Oleg Agafonov
26913923fa Refactor: replaced duplicated ability - CreatureEntersBattlefieldTriggeredAbility by EntersBattlefieldControlledTriggeredAbility; 2018-10-10 01:21:43 +04:00
Oleg Agafonov
10f56fb2a1 [ANA] - added White Spirit token 2018-10-09 19:37:56 +04:00
Oleg Agafonov
0181bf4f41 [ANA] - added goblin token 2018-10-09 18:17:15 +04:00
Oleg Agafonov
01235ebe29 Missing comments 2018-10-09 17:12:00 +04:00
Tyler Moore
4057cc2859 Implementing new function in all classes implementing Player 2018-10-04 14:16:52 -07:00
Tyler Moore
c5cedc2aba Adding lookAtAllLibraries to Player/PlayerImpl and using that method during JAOT's -8 resolution 2018-10-04 13:45:44 -07:00
Oleg Agafonov
72d23bfe95 * UI: deck editor - added cards sorting by rarity (#4414); 2018-10-03 23:59:51 +04:00
Oleg Agafonov
64721675f2 Merge remote-tracking branch 'remote-production/master' into local-production 2018-10-03 22:10:23 +04:00
Oleg Agafonov
12eec8e1b8 * Fixed that some sets uses same images for multi-images cards:
* Guilds of Ravnica (GRN), Commander Anthology Volume II (CM2), Battlebond (BBD);
   * From the Vault: Transform (V17), Media Inserts (MBP), WPN and Gateway Promos (GRC);
2018-10-03 22:06:18 +04:00
LevelX2
c41c6e1fe9 Fixed a problem with casting split cards from non hand zone. Added some generic cast from non hand zone effects and started replacing card specific effects by the generic ones (fixes #5356 and fixes #4493). 2018-10-03 13:44:01 +02:00
Evan Kranzler
27fc2f5610 fixed Elf Knight token name 2018-10-02 21:50:29 -04:00
Oleg Agafonov
434044eb0f * Fixed missing lands from some sets in lands/decks generation; 2018-10-03 00:54:32 +04:00
Evan Kranzler
e42505765b added cost adjuster to stack ability class 2018-09-30 21:16:09 -04:00
Evan Kranzler
9d9c7b0242 added cost adjustment framework 2018-09-30 20:12:07 -04:00
LevelX2
29f6f1c4b8 XMage 1.4.31V4 2018-09-30 23:15:58 +02:00
L_J
be1c7316a7
Merge pull request #5350 from Zzooouhh/Zzooouhh-unh
Implemented Unhinged cards
2018-09-30 14:13:32 +02:00
L_J
1655963937
Merge branch 'master' into Zzooouhh-ugl 2018-09-30 14:13:00 +02:00
Ingmar Goudt
fe3f6fb6c8 make plane and emblem implement Controllable to give access to the isControlledBy method 2018-09-30 12:48:03 +02:00
LevelX2
9b46406c86 * Burning Cinder Fury of Crimson Chaos Fire - Fixed opponent slection. 2018-09-30 12:23:18 +02:00
L_J
ff29761cbb
Implemented Unhinged cards 2018-09-30 12:19:54 +02:00
Aaron Miller
5cd57199c7 Merge branch 'master' into add-minimum-rating-option 2018-09-29 19:15:46 -07:00
Aaron Miller
81c2a62250 Add "minimum rating" option to matches and tournaments 2018-09-29 19:14:39 -07:00
Ingmar Goudt
809e75af75 Rename : typo in static method 2018-09-29 13:35:48 +02:00
Ingmar Goudt
ef092b20e0 Rename: fix typo in planeswalker ability 2018-09-29 11:07:52 +02:00
Evan Kranzler
2df976b2f0 updated target adjusters P through W 2018-09-29 00:24:00 -04:00
Ingmar Goudt
3653e09ce4 make some fields final 2018-09-28 15:19:27 +02:00
Ingmar Goudt
f4d9c98df7 remove set to self 2018-09-28 15:19:27 +02:00
Ingmar Goudt
be5305da90 remove redundant null check 2018-09-28 15:19:27 +02:00
Ingmar Goudt
e36eb5782b update wrongly used Capitals 2018-09-28 15:19:27 +02:00
Evan Kranzler
1e94ebdd82 updated target adjusters E through M 2018-09-27 20:20:52 -04:00
LevelX2
226019be89 * Desecrated Tomb - fixed that it did not produce bat tokens if a Zombie cards was cast from graveyard (fixes #5318). 2018-09-27 17:26:22 +02:00
Oleg Agafonov
6afb21bcf7 Tests: more info on basic card checking 2018-09-27 12:07:02 +04:00
Evan Kranzler
f6ed3a4d19 updated target adjusters D through G 2018-09-26 22:13:35 -04:00
Ingmar Goudt
a0e54fbb7b remove redundant null checks, remove some static fields 2018-09-26 22:02:03 +02:00
LevelX2
61b1b1ba05 * JumpStart - fixed that card was not always moved to exile after cast from graveyard. 2018-09-26 16:30:17 +02:00
Evan Kranzler
c303b5adf8 updated Mistveil Plains implementation 2018-09-25 14:17:52 -04:00
Evan Kranzler
b82df08a80 updated all emblems to final 2018-09-25 13:38:29 -04:00
Evan Kranzler
32fd543824 fixed an issue with Tajic, Legion's Edge's prevention effect 2018-09-24 19:35:15 -04:00
Ingmar Goudt
d6f87d709a remove static fields from AddCardSubtypeAllEffect 2018-09-24 21:25:01 +02:00
Evan Kranzler
590bad7e00 fixed Invert // Invent not switch power and toughness 2018-09-23 22:20:02 -04:00
LevelX2
6e26719367 XMage 1.4.31V3 2018-09-23 19:43:26 +02:00
LevelX2
6e9810696f * Ludevic, Necro-Alchemist - Fixed tooltip text. 2018-09-23 18:03:48 +02:00
Evan Kranzler
830b64242e fixed Vraska, Golgari Queen emblem not working 2018-09-23 09:09:29 -04:00
LevelX2
def18cbc00 * Fixed a problem of JumpStart that prevented to cast the cards from graveyard. 2018-09-23 01:32:28 +02:00
LevelX2
c7ddd676c8 * Ral, Izzet Viceroy - Fixed second ability. 2018-09-23 01:16:16 +02:00
LevelX2
0be9867257 XMage 1.4.31V2 2018-09-22 22:55:10 +02:00
LevelX2
87fd7a2ab0 [GRN] Added Guildmages' Forum. 2018-09-22 19:25:10 +02:00
LevelX2
4c17a13bce [GRN] Added Thief of Sanity. 2018-09-22 16:43:15 +02:00
Evan Kranzler
24536032cd Implemented Mnemonic Betrayal 2018-09-22 10:06:40 -04:00
theelk801
beb190a47b
Merge pull request #5316 from magefree/targetAdjustment
Updated implementation of target adjustment
2018-09-20 20:15:46 -04:00
Evan Kranzler
847ed97848 Implemented Divine Visitation (somewhat incorrectly) 2018-09-18 16:21:34 -04:00
Evan Kranzler
ce0b647a36 Implemented Etrata, the Silencer 2018-09-18 14:47:42 -04:00
Evan Kranzler
214a527ae0 Implemented Wand of Vertebrae 2018-09-18 13:59:17 -04:00
Evan Kranzler
5cdc14da4c Implemented Morgue Troll 2018-09-18 11:58:56 -04:00
Evan Kranzler
b19a799b83 Implemented Hatchery Spider 2018-09-18 10:57:30 -04:00
Evan Kranzler
7f51656b0a Implemented Beacon Bolt 2018-09-17 21:46:01 -04:00
Evan Kranzler
3fccf40155 fixed null pointer exception 2018-09-17 16:06:47 -04:00
Ingmar Goudt
f04d7c9b03 remove redundant null checks before instanceof 2018-09-17 21:09:42 +02:00
Evan Kranzler
407611c11b removed TargetAdjustment as it is no longer necessary 2018-09-17 14:39:19 -04:00
Evan Kranzler
b833fc7f77 replaced various single-use adjusters 2018-09-17 14:13:52 -04:00
Evan Kranzler
42417b6711 replaced verse counter adjustment 2018-09-17 13:40:27 -04:00
Evan Kranzler
0d3c068f50 replaced x targets adjustment 2018-09-17 13:26:48 -04:00
Evan Kranzler
7305fbac3a replaced X cmc targeting adjustment 2018-09-17 13:21:05 -04:00
Evan Kranzler
9b94b618cd begin modifying target adjustment implementations 2018-09-17 10:47:39 -04:00
Evan Kranzler
8bcf95d996 added methods for setting target adjuster 2018-09-17 10:45:22 -04:00
Evan Kranzler
3265b70e2f create target adjuster interface 2018-09-17 08:49:46 -04:00
Evan Kranzler
d3aea0270c Implemented Lazav, the Multifarious 2018-09-16 17:27:21 -04:00
Evan Kranzler
e7af7c922a added some functions to mode implementation 2018-09-16 16:26:21 -04:00
LevelX2
abc0d0b68f [GRN] Added Venerated Loxodon. 2018-09-15 19:29:19 +02:00
Evan Kranzler
ba8b2a609a Implemented Creeping Chill 2018-09-14 18:02:57 -04:00
Evan Kranzler
35547f84a3 Implemented League Guildmage 2018-09-14 16:37:25 -04:00
Evan Kranzler
c532fe632a Implemented Enhanced Surveillance 2018-09-14 15:30:23 -04:00
LevelX2
68dc82342c
Merge pull request #5276 from magefree/FixBestowTest
Fix bestow test
2018-09-14 14:26:39 +02:00
Evan Kranzler
aa63a262b6 added isInstantOrSorcery method to MageObject 2018-09-13 08:21:12 -04:00
Evan Kranzler
4315772902 Implemented Conclave Guildmage 2018-09-13 07:57:30 -04:00
Evan Kranzler
3e1641b93b Implemented Vraska, Golgari Queen 2018-09-12 12:35:25 -04:00
Evan Kranzler
8d0bd3c02f Implemented Whispering Spy 2018-09-11 20:51:40 -04:00
Evan Kranzler
f433d7c006 Implemented Izoni, Thousand-Eyed 2018-09-10 21:46:04 -04:00
Oleg Agafonov
38a45c2e8e Refactor: removed outdated code for non implemented cards 2018-09-09 16:06:40 +04:00
Evan Kranzler
84cff64b70 Implemented Ral's Dispersal 2018-09-08 10:39:41 -04:00
Evan Kranzler
fffb299581 Implemented Ral, Caller of Storms 2018-09-07 23:26:28 -04:00
Evan Kranzler
6d25f4889a fixed some look and reveal effects 2018-09-05 15:56:02 -04:00
Evan Kranzler
9c19f07494 fixed various problems with Call to Arms 2018-09-05 10:57:55 -04:00
Evan Kranzler
d96efd1450 fixed tokens being created attacking by non-active player (fixes #5263) 2018-09-05 08:54:13 -04:00
Evan Kranzler
909fcf749d Implemented Murmuring Mystic 2018-09-04 23:15:07 -04:00
Evan Kranzler
cfbc014af8 updated GRN spoiler 2018-09-04 12:13:28 -04:00
Evan Kranzler
77b3401272 Implemented Quasiduplicate 2018-09-04 11:22:40 -04:00
Evan Kranzler
9ba023ce66 Implemented Legion Warboss 2018-09-03 23:18:13 -04:00
Evan Kranzler
e030ef3268 Implemented Ral, Izzet Viceroy 2018-09-03 10:23:15 -04:00
Evan Kranzler
915cc38e11 Implemented Necrotic Wound 2018-09-02 23:34:33 -04:00
Evan Kranzler
22585729c4 Implemented Sinister Sabotage 2018-09-02 22:52:35 -04:00
Evan Kranzler
087b6126a0 Implemented Boros Challenger 2018-09-02 22:18:16 -04:00
Evan Kranzler
e9fef59495 Implemented Emmara, Soul of the Accord 2018-09-02 21:56:34 -04:00
Quercitron
9593462520 * One with the Machine - Fix that non-artifact permanents are considered in determining the amount of cards drawn (fixes #5292). 2018-09-01 16:10:51 +03:00
L_J
bce19d31af
Rabid Sheep token fix 2018-08-28 23:35:53 +00:00
L_J
bda10ed04c
Implemented Unglued cards 2018-08-29 01:15:29 +02:00
Kevin Shin
f5498d4cc2 added comment 2018-08-25 23:29:55 -05:00
Kevin Shin
23920a0696 remove new class that ended unused 2018-08-25 23:26:55 -05:00
Kevin Shin
7d2ba0cf2e all tests passing and satisfied with minimal changes; ready to merge 2018-08-25 23:24:01 -05:00
LevelX2
5703a49c81 XMage 1.4.31V1 2018-08-25 14:37:08 +02:00
LevelX2
9e88d847ed * Estrid, the Masked - fixed problems with with first and second ability (fixes #5223). 2018-08-25 14:30:31 +02:00
Kevin Shin
3ffd812bc6 After some revisions, BestowTest is now fully passed! Now to fix the other tests that don't anymore... 2018-08-25 04:43:38 -05:00
LevelX2
a40caf2840 * Covedted Jewel - Fixed triggered ability (fixes #5268). 2018-08-25 11:23:13 +02:00
Kevin Shin
e1bfd8a196 Permanents now detach all attachments when they change zones. Ready to test. 2018-08-25 03:57:43 -05:00
Oleg Agafonov
c34c13f7b7 * Fixed battlebond boosters (sometime it's can gen wrong booster without partners/cards) 2018-08-25 07:49:32 +04:00
Oleg Agafonov
4f7cfc852d
Revert "Fixes abilities that may target either opponents or planeswalkers" 2018-08-25 05:14:24 +04:00
Oleg Agafonov
924504d183
Merge pull request #5255 from kevinwshin/FixTargetOpponentOrPlaneswalker5252
Fixes abilities that may target either opponents or planeswalkers
2018-08-25 04:58:03 +04:00
Kevin Shin
1ed13f8bd8 Copy effects now properly attach copied auras to permanents. #5234 #2135 2018-08-22 23:38:49 -05:00
Kevin Shin
268b1748cc Fixes abilities that may target either opponents or planeswalkers to properly check if a player is an opponent. #5252 2018-08-22 04:46:32 -05:00
Piotr Szczepanski
ec7454d888 Commanders can be other types than a creature.
Commanders do not have to be creatures. They can also be Planeswalkers (Commander 2015, Commander 2018), but also can be other types (e.g. lands when enchanted by Song of the Dryads or Imprisoned in the Moon).
2018-08-20 12:37:53 +02:00
Oleg Agafonov
dba037858c * Fixed broken download images with Fourth Edition set; 2018-08-15 14:47:11 +04:00
LevelX2
deb675a74a Xmage 1.4.30V0 2018-08-15 11:35:40 +02:00
LevelX2
b96d6e12af Added some exception handling. 2018-08-15 11:28:13 +02:00
LevelX2
2429425fd2 Merge origin/master
Conflicts:
	Mage.Sets/src/mage/cards/s/SalvageTrader.java
	Mage.Sets/src/mage/cards/t/ThermalDetonator.java
2018-08-15 10:51:21 +02:00
LevelX2
9545ab055d Moved predicate to framework. 2018-08-15 10:47:31 +02:00
LevelX2
dbb25c8683
Merge pull request #5202 from credman0/PhasedOutRemoveFromCombatFix
Fixed phased out creatures not removed from combat (#5200)
2018-08-15 08:17:58 +02:00
LevelX2
6712e50146
Merge pull request #5196 from credman0/EmissaryOfGrudges
Implemented Emissary of Grudges
2018-08-15 08:17:16 +02:00
LevelX2
e516430aad
Merge pull request #5187 from jesusjbr/master
Xantcha, Sleeper Agent implemented.
2018-08-15 08:14:07 +02:00
LevelX2
94e265f396
Merge pull request #5185 from credman0/master
Aminatou, the Fate Shifter minor fix - can be commander and author info
2018-08-15 08:13:43 +02:00
LevelX2
8e040841a9
Merge pull request #5182 from Dilnu/Spell
Add methods to get information about potential spells.
2018-08-15 08:11:49 +02:00
LevelX2
6e242fb11f
Merge pull request #5178 from magefree/yuriko
Implemented Yuriko, the Tiger's Shadow
2018-08-15 08:09:40 +02:00
LevelX2
a30ed4fee5
Merge pull request #5157 from ninthworld/master
Add Star Wars Expansion sets to the Star Wars set
2018-08-15 08:09:19 +02:00
LevelX2
fa13786fab
Merge pull request #5053 from Sedictious/Battlebond_Boos
Fix Battlebond Partner distribution
2018-08-15 08:09:03 +02:00
dilnu
973c2a08e3 Remove an extra incorrect check in ArtifactSourcePredicate 2018-08-14 23:45:08 -04:00
Oleg Agafonov
593df43758 Refactoring: replace custom creature tokens with basic class (1 card);
Added blink test;
2018-08-15 06:47:33 +04:00
Oleg Agafonov
3da2f98eac Fixed predicate refactor at #5161;
* Interdict, Ouphe Vandals - fixed that it catch triggered + activated, but must only activated;
2018-08-15 06:29:06 +04:00
Samuel Sandeen
a94dbe1c9d
Fix a bug with Tawnos Urza's Apprentice caught by the predicate refactor (#5220) 2018-08-14 22:22:48 -04:00
Oleg Agafonov
a68667e582
Merge pull request #5161 from Dilnu/Kindred
Make the type checking on predicates added to filters stricter
2018-08-15 04:41:27 +04:00
quercitron
db2db4c27a
Merge pull request #5212 from magefree/5189-recast-spells-keep-their-previous-targets
Fix that cards that are cast using alternative cost effects keep their previous targets
2018-08-11 02:48:07 +03:00
Quercitron
e3a33e5894 Fix that cards that are cast using alternative cost effects keep their previous targets (#5189) - Always copy ability on cast. 2018-08-10 02:54:50 +03:00
Colin Redman
9adfa96667 Fixed phased out creatures not removed from combat (#5200) 2018-08-05 17:13:42 -06:00
dilnu
3e0a92fed8 Fix a typo 2018-08-04 22:42:22 -04:00
Colin Redman
18097e1248 Implemented Emissary of Grudges
Moved Leonin Stalker ability and cost to common classes
2018-08-03 00:29:44 -06:00
jesusjbr
f4515efe41 Xantcha, Sleeper Agent implemented.
Added a new effect (LoseLifePermanentControllerEffect).
2018-08-02 14:03:33 +02:00
ninthworld
2a2df685a9 Merge branch 'master' of https://github.com/magefree/mage.git 2018-08-01 18:40:58 -07:00
credman0
618070a848
Reverted 7092d16c5d
It busted the AI
2018-08-01 17:46:02 -06:00
Colin Redman
7092d16c5d Fixed color identity interaction with special cases IE Transguild Courier 2018-08-01 17:27:56 -06:00
Colin Redman
0fa4c2d324 Implemented Aminatou, the Fateshifter 2018-08-01 05:33:51 -06:00
Chatziargyriou Eleftheria
2731897add
Update ExpansionSet.java 2018-07-31 17:24:20 +03:00
Chatziargyriou Eleftheria
da383dbecc
Update ExpansionSet.java 2018-07-31 17:17:58 +03:00
Chatziargyriou Eleftheria
17cd5792d4
Update ExpansionSet.java 2018-07-31 17:09:56 +03:00
Chatziargyriou Eleftheria
197020b162
Merge branch 'master' into Battlebond_Boos 2018-07-31 17:02:11 +03:00
Evan Kranzler
ef38467326 Implemented Estrid, the Masked 2018-07-29 22:55:28 -04:00
dilnu
339779c8bd Add methods to get information about spells that have not yet been cast. 2018-07-29 11:22:41 -04:00
Samuel Sandeen
e5c1dfc4b7
Refactor ControlledCreaturesDealCombatDamagePlayerTriggeredAbility. (#5163)
It now triggers once for each player damaged.

Fixes https://github.com/magefree/mage/issues/5162
2018-07-29 08:16:07 -04:00
Samuel Sandeen
14520097a5
Fix issues with the ChosenSubtypePredicate and clone effects. (#5164)
Update ChosenSubtypePredicate to be an ObjectPlayer predicate. This fixes how cards that use it act when cloned.

Fixes https://github.com/magefree/mage/issues/5136
2018-07-29 07:44:19 -04:00
Samuel Sandeen
a164dad83f
Fix issues with Clone and Metallic Mimic (#5160)
Fix bugs with Metallic Mimic and Adaptive Automaton and clone effects.

Metallic Mimic and Adaptive Automaton were both using the technically correct EnterEventType specifier for their as enters the battlefield abilities. Despite it being technically correct this meant that their ability didn't trigger if they were cloned.

Additionally EnterAttributeAddChosenSubtypeEffect changed the subtype of the base object which meant that clones entered in with the chosen subtype of the original.
2018-07-29 07:40:48 -04:00
Samuel Sandeen
3875f42bac
Refactor addCounters to fix bugs in edge cases. (#5154)
Add code to check the controller of abilities on the stack instead of the controller of their source card or object.

This fixes https://github.com/magefree/mage/issues/5152
2018-07-29 07:31:59 -04:00
Evan Kranzler
95f375316b Implemented Yurikp, the Tiger's Shadow 2018-07-28 21:48:29 -04:00
Evan Kranzler
db6211cd20 Implemented Saheeli, the Gifted 2018-07-28 16:25:39 -04:00
Will Hall
76d0baa792 Implemented Gyrus, Waker of Corpses 2018-07-27 18:38:36 -07:00
spjspj
f58e33524d Implement 1 card C18 2018-07-27 18:53:34 +10:00
Evan Kranzler
2a6181b67a Implemeted Lord Windgrace 2018-07-25 15:45:56 -04:00
Evan Kranzler
91244c09dc Implemented Kestia, the Cultivator 2018-07-25 12:58:19 -04:00
Evan Kranzler
7c6dfe3e56 Implemented Octopus Umbra 2018-07-25 12:39:06 -04:00
Evan Kranzler
41fce60eee Implemented Nesting Dragon 2018-07-24 20:45:45 -04:00
Quercitron
79120e7484 Make color distribution in booster more uniform 2018-07-25 02:46:31 +03:00
Evan Kranzler
2d23d5c84e Implemented Echo Storm 2018-07-24 17:10:13 -04:00
ninthworld
19d1ff2657 Merge remote-tracking branch 'upstream/master' 2018-07-23 16:09:53 -07:00
Evan Kranzler
452a525194 fixed Silverclad Ferocidons (and likely other cards) allowing players to sacrifice creatures they don't control (fixes #5166) 2018-07-23 17:42:03 -04:00
Evan Kranzler
fdf8c99d8a Implemented Retrofitter Foundry 2018-07-23 15:59:47 -04:00
dilnu
a8cd19eaea Make the type checking on predicates added to filters stricter to make runtime errors less likely. 2018-07-22 11:27:24 -04:00
ninthworld
8dfb5f913d Merge branch 'master' of https://github.com/magefree/mage
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2018-07-20 22:11:49 -07:00
dilnu
e1fc060755 Don't count players who have lost or left the game as having lost life.
Fixes https://github.com/magefree/mage/issues/5153
2018-07-18 21:07:23 -04:00
ninthworld
86107de54e Merge remote-tracking branch 'upstream/master'
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2018-07-16 21:16:20 -07:00
ninthworld
f31bfa829e add Star Wars expansion sets to the Star Wars set 2018-07-16 20:55:05 -07:00
Evan Kranzler
d8a3a408df fixed Vivien Reid's first ability not putting cards back in a random order 2018-07-16 10:47:28 -04:00
igoudt
877a355a7d rewrite some code to streams 2018-07-15 20:50:26 +02:00
Evan Kranzler
c743906557 fixed instances of life gain being life loss with negative numbers (fixes #5149) 2018-07-14 16:50:44 -04:00
LevelX2
0d9f8ad19a
Merge pull request #4993 from Zzooouhh/Zzooouhh-woc
Implemented Word of Command (presumably buggy)
2018-07-14 10:40:38 +02:00
LevelX2
c29bb86ea0
Merge pull request #5131 from NoahGleason/thick-skinned-goblin
Implement Thick-Skinned Goblin
2018-07-14 10:40:10 +02:00
LevelX2
a3c4c2365d
Merge pull request #5119 from NoahGleason/M19-oracle-changes
M19 oracle changes
2018-07-14 10:39:50 +02:00
LevelX2
0f615d49fa
Merge branch 'master' into orcish-mine 2018-07-14 10:32:05 +02:00
LevelX2
2cdd835ab5
Merge pull request #5108 from NoahGleason/shape-of-the-wiitigo
Implement Shape of the Wiitigo
2018-07-14 10:28:05 +02:00
LevelX2
117ca40014
Merge pull request #5107 from NoahGleason/balduvian-fallen
Implement Balduvian Fallen
2018-07-14 10:27:54 +02:00
LevelX2
1e2d269086
Merge pull request #5098 from NoahGleason/swift-silence
Implement Swift Silence
2018-07-14 10:27:19 +02:00
LevelX2
6912a8c5b0
Merge pull request #5094 from NoahGleason/rakdos-augermage
Implement Rakdos Augermage
2018-07-14 10:26:39 +02:00
LevelX2
ef8b895d5b
Merge pull request #5093 from NoahGleason/nightcreep
Implement Nightcreep
2018-07-14 10:26:24 +02:00
LevelX2
484d981c81
Merge pull request #5082 from NoahGleason/Aetherplasm
Implement Aetherplasm
2018-07-14 10:17:36 +02:00
LevelX2
556944f312
Merge pull request #5078 from NoahGleason/keeper-of-the-beasts
Implement Keeper of the Beasts
2018-07-14 10:13:05 +02:00
Noah Gleason
3272e90bdb
Merge pull request #5141 from NoahGleason/molten-firebird
Implement Molten Firebird and Ivory Gargoyle
2018-07-14 00:40:49 -04:00
Evan Kranzler
0ad86ff530 fixed Ajani's Last Stand token name (fixes #5147) 2018-07-13 14:08:19 -04:00
Noah Gleason
c372d93f66
Implement Molten Firebird and Ivory Gargoyle 2018-07-10 23:00:27 -04:00
Noah Gleason
9108104fe5
Implement Predatory Focus 2018-07-09 22:21:40 -04:00
igoudt
6dce0c26f3 fix some his or her to their 2018-07-09 21:25:04 +02:00
igoudt
c456a1961e add more isActivePlayer and isAttachedTo calls 2018-07-09 21:25:04 +02:00
Noah Gleason
c91e56b937
Fix Rite of Belzenlok token not damaging its controller 2018-07-08 22:01:37 -04:00
Noah Gleason
bad82d62ba
Implement Thick-Skinned Goblin 2018-07-08 21:55:17 -04:00
ingmargoudt
e86791cf44
Merge pull request #5112 from NoahGleason/aetherflame-wall
Implement Aetherflame Wall
2018-07-08 22:28:11 +02:00
igoudt
d6450eed94 change enum comparison 2018-07-08 13:11:39 +02:00
Quercitron
36c004122a Fix dual lands generation in the Core Set 2019 boosters 2018-07-08 01:19:49 +03:00
Noah Gleason
0ab7345fa3
Update wording (nonfunctional) 2018-07-06 20:21:17 -04:00
Evan Kranzler
d7914bca44 fixed Tezzeret, Artifice Master emblem not triggering 2018-07-06 09:46:59 -04:00
Evan Kranzler
c169f07833 fixed Ajani, Adversary of Tyrants emblem not triggereding (fixes #5115) 2018-07-06 09:20:29 -04:00
Noah Gleason
1f7c7e90b2
Implement Aetherflame Wall 2018-07-05 21:35:56 -04:00
Evan Kranzler
6c000d9177 fixed Rowan Kenrith emblem not triggering (fixes #5109) 2018-07-04 22:59:32 -04:00
Noah Gleason
258384fae7
Implement Shape of the Wiitigo 2018-07-04 11:31:03 -04:00
Noah Gleason
4bfc132f29
Implement Balduvian Fallen 2018-07-04 10:25:49 -04:00
igoudt
9f06046f22 add isOwned and isControlled methods. remove some null-checks, remove some unnecessary casts 2018-07-04 14:24:11 +02:00
Noah Gleason
3d79890e9a
Implement Swift Silence 2018-07-01 19:03:47 -04:00
Noah Gleason
147a3cf91d
Implement Rakdos Augermage 2018-07-01 15:39:19 -04:00
Noah Gleason
1575d8282c
Implement Nightcreep 2018-07-01 10:58:25 -04:00
Noah Gleason
174588e343
Implement Aetherplasm 2018-06-29 20:47:11 -04:00
igoudt
dcb1affb9d use isActivePlayer where possible, some minor text fixes 2018-06-29 21:18:05 +02:00
igoudt
ca1ebeb55e add method Game.isActivePlayer(UUID playerId) 2018-06-29 14:59:11 +02:00
Evan Kranzler
2b78716a1b fixed Young Pyromancer text 2018-06-28 09:06:51 -04:00
Noah Gleason
e2da104d6d
Implement Keeper of the Beasts 2018-06-27 22:02:53 -04:00
Noah Gleason
cf571122ea
Allow activating equip ability 2018-06-25 22:36:49 -04:00
Noah Gleason
324ff4a3b8
Implement Serra Inquisitors 2018-06-25 21:58:26 -04:00
Evan Kranzler
8b37c778f0 fixed Rush of Knowledge counting all permanents (fixes #5069) 2018-06-25 08:26:28 -04:00
theelk801
b1be4ad7d5
Merge branch 'master' into giant-oyster 2018-06-24 22:24:25 -04:00
theelk801
355a3ab281
Merge pull request #5063 from NoahGleason/jovens-ferrets
Implement Joven's Ferrets
2018-06-24 21:53:40 -04:00
Evan Kranzler
087e58383a fixed Alpine Moon causing a rollback 2018-06-24 21:27:10 -04:00
Noah Gleason
8949987b78
Add ConditionalTriggeredAbility for non-intervening0f 2018-06-24 20:02:40 -04:00
Noah Gleason
37e800a7dd
Update Voice of Resurgence 2018-06-24 16:55:15 -04:00
LevelX2
ca21f32009 Xmage 1.4.30V6 2018-06-24 21:26:52 +02:00
Noah Gleason
6a2ad691d4
Fix OrTriggeredAbility hang 2018-06-24 13:51:02 -04:00