Commit graph

8372 commits

Author SHA1 Message Date
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