Commit graph

7473 commits

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