Commit graph

6094 commits

Author SHA1 Message Date
igoudt
0cb7d8aab6 loop to streams 2017-06-06 09:31:41 +02:00
fireshoes
52b4633340 Added Commander Anthology. Added Archenemy: Nicol Bolas to mtg-cards-data.txt (missing most collector numbers until it goes up on Gatherer). Updated tokens for CMA and E01. 2017-06-05 16:00:13 -05:00
LevelX2
0fd72c3010 * Added check if the deck was modified during sideboarding. 2017-06-05 20:23:09 +02:00
LevelX2
3c6ede7407 * Improved game is infinite loop check to ask players only if some kind of iteration is recognized. 2017-06-05 12:27:59 +02:00
igoudt
d42b2a6d37 change text for cycling to this card, rather than referring the name 2017-06-04 17:12:08 +02:00
spjspj
a371802cc0 Implement O-Kagachi, Vengeful Kami (C17) 2017-06-04 20:27:48 +10:00
LevelX2
b62a15f68e Merge pull request #3454 from drmDev/add/welcomedeck2017
adding welcome deck 2017 (see #3453)
2017-06-03 10:31:49 +02:00
LevelX2
13ea2c33c6 Merge pull request #3447 from aastrand/master
Ban ignored users from watching
2017-06-03 10:31:24 +02:00
igoudt
9ac70b868d minor text fixes 2017-05-30 23:46:06 +02:00
Derek Monturo
1d662a0a58 adding welcome deck 2017 - closes #3453 2017-05-30 07:31:14 -04:00
Anders Åstrand
ad0507e739 Ban ignored users from watching
This commit bans ignored users from watching
games where the creator has them on their ignore list.
2017-05-29 21:36:42 +02:00
Simown
62c14a9c24 Added missed private member 2017-05-29 13:40:48 +01:00
Simown
12a520c85a Fixed mock split card generation. Fixes #3444.
Implementation was missing - copied it from actual split cards.
2017-05-29 13:33:50 +01:00
LevelX2
485ea2729a Merge origin/master 2017-05-28 23:47:28 +02:00
LevelX2
884a3af503 * Norn's Annex - Fixed a bug with the payment of phyrexian mana (fixes #3178). 2017-05-28 23:45:41 +02:00
igoudt
63b69cb5db missed some mtg subtypes 2017-05-28 22:56:27 +02:00
igoudt
d99a444389 exert can't --> won't 2017-05-28 22:56:27 +02:00
LevelX2
09e4435a89 * Fixed a problem that watcher added from cards are not reset between games of a match (fixes #3228). 2017-05-28 18:24:37 +02:00
igoudt
83c3dc05b2 forloop to stream 2017-05-28 12:24:06 +02:00
igoudt
2fc742d77d minor typo 2017-05-28 12:23:49 +02:00
LevelX2
9c773ba3cb * Vesuvan Shapeshifter - Fixed that copying creatures with morph and a turn face up trigger did not work correctly (fixes #2864). 2017-05-28 11:01:04 +02:00
LevelX2
d98f73518a * Swords to Plowshares - Fixed a problem that static effects of the exiled target were still applied as the gain life effect resolved (fixes #3290). 2017-05-28 09:46:41 +02:00
LevelX2
db9e8e586b * Cho Manno's Blessing - FIxed that it did remove itself sometimes (fixes #3382). 2017-05-28 09:11:36 +02:00
igoudt
dca676617d fix crypt rats + added new test method 2017-05-27 09:17:08 +02:00
LevelX2
2feb764179 * Some clean up to skip handling (related to #2924). 2017-05-26 11:51:50 +02:00
LevelX2
1eb1a2abed * Transform - Fixed that a transform effect did only resolve, if the related permanent to transform was the same as the ability was put to stack (fixes #2912). 2017-05-23 17:26:16 +02:00
LevelX2
9e78410fff Merge branch 'master' into subtypes 2017-05-21 10:50:47 +02:00
spjspj
b467ff2080 Add emblems into the int.txt file 'emblem:Human:ElspethSunsChampionEmblem:1' for example 2017-05-21 12:42:50 +10:00
LevelX2
0b7a50e48f * Xmage 1.4.23V6 2017-05-21 01:01:50 +02:00
LevelX2
ca9f596e4a * Compelling Deterrance - Fixed that static effects of the card that goes to hand did not end before the discard happens (fixes #3368); 2017-05-21 00:14:06 +02:00
LevelX2
40f192eafc * Squelch - Fixed that it was causing a ClassCastException (fixes #3396). 2017-05-20 23:22:31 +02:00
igoudt
de8737697d complete planeswalker subtypes 2017-05-20 22:54:52 +02:00
igoudt
6d83a4a65f finish rewriting subtypepredicate 2017-05-20 22:41:25 +02:00
igoudt
8ab4f5b454 finised all creaturetypes 2017-05-20 22:41:25 +02:00
igoudt
19db21c672 subtypes part 2 2017-05-20 22:41:25 +02:00
igoudt
c44c301f5b subtypes #1 2017-05-20 22:41:25 +02:00
LevelX2
67a66d90da * Hapatra, Vizier of Poisons - Fixed that it was not triggering off of Infect (fixes #3288). 2017-05-19 17:51:04 +02:00
LevelX2
e090b26240 * Urborg Justice - Fixed that tokens going to graveyard were not counted. 2017-05-18 23:42:32 +02:00
LevelX2
11ba007fd3 Xmage 1.4.23V5 2017-05-18 21:55:44 +02:00
LevelX2
d686af8890 * Fixed a problem of endless iteration with Reflecting Pool. 2017-05-18 16:57:32 +02:00
LevelX2
83cdd5570d * Added Gangrenous Zombies and Lethal Vapor. 2017-05-18 16:57:06 +02:00
LevelX2
1d438060fc * Fixed bug of any mana abilities not working correctly for mana abilities that could produce mana of any type other mana sources could produce. 2017-05-17 23:20:27 +02:00
LevelX2
1362637561 * Fixed bug in condition. 2017-05-16 22:48:14 +02:00
LevelX2
d284cc08b1 * Reworked some not correct working dies replacement handling. 2017-05-16 22:36:56 +02:00
LevelX2
51b075bfdb * Reworked infinite loop handling a bit. 2017-05-16 21:13:20 +02:00
magenoxx
b3eb89c6ea #3373: fixed exiling copied spells from stack 2017-05-16 20:18:32 +03:00
magenoxx
83ee1252cd #3373: added exiling multiple targets in Mindbreak Trap 2017-05-16 20:17:40 +03:00
LevelX2
351095a904 * Magma Spray - Fixed a bug of dies replacement handling (#3359). Other cards with same rule text not fixed yet. 2017-05-16 17:40:04 +02:00
LevelX2
5ce813ad87 * Added a simple check for infinite loops so that if players confirm the game ends in a draw (#3329). 2017-05-16 14:45:30 +02:00
LevelX2
7dcfbd5be5 * Hexproof Planeswalkers can't be attacked (fixes #3328). 2017-05-16 10:34:58 +02:00
LevelX2
390834a0d7 * Vizier of the Menagerie - Fixed that the cards from library could be cast at instant speed (fixes #3300). 2017-05-15 16:41:47 +02:00
Ex Mage
be69510340 Fix source of PutCountersSourceCost not being set 2017-05-15 00:11:46 -04:00
Derek M
6d52ec5a59 Merge pull request #3377 from spjspj/master
Emblems refactor to show emblems in Card/Token Viewer
2017-05-14 12:00:58 -04:00
LevelX2
d1e4a7f6b0 Merge pull request #3372 from ingmargoudt/changelings
change getSubtype(game).contains(..) to hasSubtype(..) to include che…
2017-05-14 06:32:48 +02:00
spjspj
f85c7e07ba Emblems refactor to show emblems in Card/Token Viewer 2017-05-14 13:43:18 +10:00
emerald000
d5c75cd1b3 Fixed New Perspectives to use a CostModificationEffect.
Remove CyclingCost and WrapperCost that are now unused.
2017-05-13 18:53:35 -04:00
igoudt
265cf408f9 change getSubtype(game).contains(..) to hasSubtype(..) to include check on Changelings 2017-05-13 23:35:23 +02:00
igoudt
fc7cdcdc4e small rewrite in the creaturesDiedWatcher 2017-05-12 22:47:35 +02:00
Derek Monturo
ae38095c58 merge 2017-05-11 12:12:20 -04:00
LevelX2
d1fd69f685 Fixed shuffle algorithm. 2017-05-09 17:01:46 +02:00
spjspj
d581fddecf Merge pull request #3331 from spjspj/master
Token refactor
2017-05-08 21:57:50 +10:00
spjspj
bec0964726 Token refactor 2017-05-08 21:53:01 +10:00
LevelX2
645a4ec062 * Ravnica: City of Guilds - Added 3 cards. 2017-05-07 16:24:01 +02:00
LevelX2
96d9362c55 * Ravnica: City of Guilds - Added 3 cards. 2017-05-07 14:58:14 +02:00
LevelX2
dc4283685a * Added another StaticFilter. 2017-05-07 14:07:21 +02:00
spjspj
a897b374a0 Token refactor 2017-05-07 20:57:57 +10:00
LevelX2
757c01343f * Ravnica: City of Guilds - Added 3 cards. 2017-05-07 10:46:01 +02:00
spjspj
a587119644 Merge pull request #3320 from spjspj/master
Token refactor
2017-05-07 12:05:07 +10:00
spjspj
ba6e8409d1 Token refactor 2017-05-07 11:46:52 +10:00
LevelX2
f5b4c41188 * Ravnica: City of Guilds - Added 3 cards. 2017-05-06 16:05:14 +02:00
LevelX2
62947573d6 Merge origin/master 2017-05-06 15:43:34 +02:00
LevelX2
833237e09b * Ravnica: City of Guilds - Added 5 cards. 2017-05-06 15:43:01 +02:00
spjspj
bc5e0570ed Merge pull request #3312 from spjspj/master
Token refactor
2017-05-06 23:42:49 +10:00
spjspj
6a610dc9d4 Token refactor 2017-05-06 23:41:18 +10:00
spjspj
e9408a7203 Merge pull request #3311 from spjspj/master
Token refactor
2017-05-06 23:38:32 +10:00
spjspj
e73e7d8600 Token refactor 2017-05-06 23:35:14 +10:00
LevelX2
ee129e2251 * Lotus Vale - Fixed a bug that it did not working properly (fixes #3308). 2017-05-06 13:17:52 +02:00
LevelX2
afb7de2fbb * Gitrog Monster - Fixed that triggered ability was not handled correctly after a control change (fixes #3251). 2017-05-06 11:49:49 +02:00
LevelX2
795218b030 * Roi Elemental - Fixed triggered ability that did not work correctly for copied Roi Elementals (fixes #3214). 2017-05-06 10:19:04 +02:00
igoudt
a277aafbc5 fix player damaged by source watcher 2017-05-03 16:59:45 +02:00
LevelX2
01171abad2 Merge pull request #3284 from spjspj/master
Large Refactor - Move all tokens into Mage/src/main/java/mage/game/pe…
2017-05-03 15:40:32 +02:00
Derek M
8278b1bb2f Merge pull request #3294 from ingmargoudt/splitcard_cmc
fix cascade for splitcards
2017-05-03 07:51:08 -04:00
igoudt
9da97f9368 fix cascade for splitcards 2017-05-03 09:51:22 +02:00
igoudt
576ccdb34a fix broke shadowOfTheGrave + watcher 2017-05-01 17:31:51 +02:00
spjspj
1754a69f9b Large Refactor - Move all tokens into Mage/src/main/java/mage/game/permanent/token 2017-05-01 20:20:33 +10:00
LevelX2
97a4e9ed05 Xmage 1.4.23V4 2017-04-30 00:23:33 +02:00
igoudt
e5b9e41c1f fix copy constructor of a watcher 2017-04-29 12:07:46 +02:00
igoudt
b6fe6f772a finish rewriting watchers 2017-04-29 12:07:46 +02:00
igoudt
efae1251f9 first batch of watcher naming 2017-04-29 12:07:46 +02:00
spjspj
241691b153 spjspj - Add in Tokens to the Card Viewer (first version) 2017-04-29 17:25:54 +10:00
ingmargoudt
12eb4c2fb7 Merge branch 'master' into move_magepermanent_method 2017-04-28 19:29:20 +02:00
LevelX2
33f6c629c2 * Shadow of the Grave - Some minor adjustments. 2017-04-28 11:18:26 +02:00
LevelX2
7f1da83783 Merge pull request #3261 from ingmargoudt/fix_cyclediscardwatcher
fix for shadow of the grave
2017-04-28 11:04:24 +02:00
igoudt
6b66f8c05b add cartouche as enchantment subtype 2017-04-28 10:23:13 +02:00
igoudt
10ecbd5adb fix for shadow of the grave 2017-04-28 09:24:27 +02:00
igoudt
2c34870bf0 remove util function on converted manacost, make getColorIdentity default interface method 2017-04-27 10:57:48 +02:00
igoudt
7a4a0b9faa move removeVariableManaCost from CardUtil to ManaCosts interface 2017-04-27 10:57:48 +02:00
Achilles
ba2456188f Reverted this commit that broke a watcher. Fixes #3246 2017-04-26 07:59:16 -05:00
LevelX2
7e9d4ab515 * DreadshipReef - Fixed that the 3rd ability did not create mana (fixes #3223). 2017-04-25 23:27:24 +02:00
LevelX2
85e44017ea Xmage 1.4.23V3 2017-04-25 22:17:22 +02:00
LevelX2
80beebccf5 * Fixed a problem of EndTurnEffect not beeing able to remove stackAbilities and endless looping as a result (fixes #3221). 2017-04-25 21:30:45 +02:00
LevelX2
24b99216f8 * Aftermath - Fixed a bug that caused problems with zone check. 2017-04-25 21:29:21 +02:00
LevelX2
60cc3a7622 * Some minor fixed and log changes. 2017-04-25 17:37:38 +02:00
LevelX2
3708ea2a89 * Added 3 cards from Ravinca City of Gold set. 2017-04-25 15:47:21 +02:00
Achilles
1607849c19 - Fixed Bug #3225 2017-04-23 20:07:40 -05:00
LevelX2
c085ea148a * Changed some logging messages. 2017-04-23 14:11:02 +02:00
spjspj
6ab4a94bd7 spjspj - Add in 'View Current Deck' option. 2017-04-23 13:06:09 +10:00
LevelX2
900e7b29ba XMage 1.4.23V2 2017-04-23 01:57:26 +02:00
spjspj
8845d77628 spjspj - Remove View Limited Deck option 2017-04-22 19:35:08 +10:00
spjspj
0cd4e06e22 spjspj - Add a View Limited Deck option to allow you to see your deck during matches. 2017-04-22 19:16:12 +10:00
LevelX2
a93dc4e3da * Added a check that continuous PT setting effects are only applied, if the object has still the ability (fixes #3167).
I added the effect now only to the layer the bug is caused by. Probably it's correct to check this for every layer. But I don't know how much resources the check addional needs. So if we got other tests that fail for this reason caused by other layers, we could add the check and test if all other tests still work correctly.
2017-04-22 00:23:37 +02:00
magenoxx
ee7026f71d Revert "Added hashCode and equal to main server objects"
This reverts commit 27a454f042.
2017-04-21 20:43:32 +03:00
LevelX2
e284922017 * Added Celestial Convergence and some changes to game draw handling. 2017-04-21 15:18:04 +02:00
Derek M
274e0f9052 Merge pull request #3184 from HanClinto/CMH-GuiltyConscienceAndBackfire
Implementing Guilty Conscience and Backfire
2017-04-20 20:40:03 -04:00
magenoxx
f02999910a Merge branch 'master' of github.com:magefree/mage 2017-04-20 22:46:51 +03:00
Jeff
5f05868865 - Fixed Glyph Keeper. Bug #3180 2017-04-20 14:19:54 -05:00
magenoxx
27a454f042 Added hashCode and equal to main server objects 2017-04-20 20:06:52 +03:00
Derek M
e9d31aa93c Merge pull request #3185 from HanClinto/CMH-FixPredicate
Fix for "Inference variable T#1 has incompatible bounds"
2017-04-20 04:37:23 -04:00
Clint Herron
d82687bdc4 Fixing check for objects that should not untap during a specific player's next untap step ('your next untap step' vs. 'its controllers next untap step' lanugage) 2017-04-19 23:56:20 -04:00
Clint Herron
48cde05cff Fixing additional instances where unspecified types could lead to errors 2017-04-19 22:55:48 -04:00
Clint Herron
8174f53a8c Removing error when running server where Creeping Mold would have a predicate error because 'inference variable T#1 has incompatible bounds' -- I don't fully understand the error, but at least this fix seems to work. 2017-04-19 22:31:15 -04:00
Clint Herron
30e0ef863d Removing error when running server where Creeping Mold would have a predicate error because 'inference variable T#1 has incompatible bounds' -- I don't fully understand the error, but at least this fix seems to work. 2017-04-19 22:31:02 -04:00
Clint Herron
98eea3c97b Merge remote-tracking branch 'upstream/master' into CMH-GuiltyConscienceAndBackfire 2017-04-19 21:49:10 -04:00
LevelX2
04c80c27a3 * Fixed Binding Mummy's ability doesn't trigger from Liliana, Death Majesty -3 ability (fixes #3165). 2017-04-19 16:40:00 +02:00
LevelX2
0b827b239c * Fixed the handling of comparing characteristics concerning split cards (related to the recent rule changes). 2017-04-19 12:36:46 +02:00
magenoxx
f5fe2bd133 Issue#3148: added reproducing test 2017-04-18 23:28:42 +03:00
Clint Herron
4a13ba3645 Merge remote-tracking branch 'upstream/master' into CMH-GuiltyConscienceAndBackfire 2017-04-18 15:18:30 -04:00
magenoxx
6ee2e69f2c Fixed #3144: added searching for exile zone with change zone counter (that's true for tokens from graveyard) 2017-04-18 22:03:33 +03:00
Clint Herron
d1c8796a49 Merge remote-tracking branch 'upstream/master' into CMH-GuiltyConscienceAndBackfire 2017-04-18 11:00:24 -04:00
Jeff
9b5a04697c - Applied fix suggested by Stravant for the Flashback Ability issue. Bug #3132 2017-04-18 09:26:38 -05:00
spjspj
8c46f23e02 Increased performance function for finding a card in DB with a specific set. Cube from deck (custom cube) now respects chosen set for a given card. 2017-04-18 20:58:03 +10:00
LevelX2
d55c82adf4 XMage 1.4.23V1 2017-04-18 07:50:49 +02:00
LevelX2
90c583f755 * Fixed a bug that prevented the display of supertypes (fixes #3142). 2017-04-17 23:14:06 +02:00
LevelX2
804fb12b1d * Vizier of Deferment - Fixed null pointer exception. 2017-04-17 18:27:05 +02:00
LevelX2
ef4cf90a0f Release 1.4.23V0 2017-04-17 10:53:59 +02:00
LevelX2
8739d7a101 [AKH] Fixed Heart-Piercer Manticore. 2017-04-17 09:53:13 +02:00
Mark Langen
2b4e8c3e4c Add a parameter to untap only other objects than the source to UntapAllContollerEffect since OtherPredicate does not work on the filter for it. 2017-04-16 23:24:08 -06:00
Mark Langen
3c91b8d15f Start to add builder pattern to some card definition classes 2017-04-16 23:24:08 -06:00
Mark Langen
79648eb7ea Couple small changes 2017-04-16 23:24:08 -06:00
LevelX2
b8e952cfb9 [AKH] Approach of the Second Sun fix of cast watcher. 2017-04-17 00:44:08 +02:00
LevelX2
ed341528d9 [AKH] Fixed that Aftermath card images were shown wrongly rotated. 2017-04-16 22:57:08 +02:00
fireshoes
a8631c6ff3 Remove comma change from BecomesCreatureSourceEffect staticText. 2017-04-16 15:43:49 -05:00
Styxo
d4e2b6f306 [AKH] Fixed black cards tooltips 2017-04-16 17:14:48 +02:00
spjspj
9c487b7310 Merge pull request #3116 from spjspj/master
Fix Pyramid of the Pantheon, Fix SourceHasCounterCondition 'toString'
2017-04-16 22:04:44 +10:00
spjspj
c895253d5b Fix Pyramid of the Pantheon, Fix SourceHasCounterCondition 'toString' 2017-04-16 22:04:07 +10:00
LevelX2
664405caab [AKH] Added Vizier of Many Faces. 2017-04-16 13:28:36 +02:00
LevelX2
c033868795 [AKH] Added Vizier of Many Faces. 2017-04-16 13:04:38 +02:00
fireshoes
06fdd17e7d [AKH] Updated tooltip text on several white and blue cards. Some minor fixes. 2017-04-15 23:37:50 -05:00
LevelX2
88d25b7a3a [AKH] Added New Perspectives. 2017-04-16 01:38:59 +02:00
LevelX2
4044b9aa3b [AKH] Embalm - Fixed that the token wrongly had the mana costs of the original card. 2017-04-16 01:38:36 +02:00
Styxo
5a2678f916 [AKH] Code deduplication and fixes 2017-04-15 18:53:57 +02:00
Styxo
e2a1d4436f [AKH] Added some cards + fixes 2017-04-15 16:46:53 +02:00
Mark Langen
77586eec7e Add 30 AKH card implementations
* Some of the cards still need testing. Will fix and problems and update tomorrow, but pushing them for now to make it clear what's been implemented so far.
2017-04-15 04:24:14 -06:00
Achilles
d51eb07692 - Added Time to Reflect and Wayward Servant. <Amonkhet> 2017-04-14 18:44:25 -05:00
fireshoes
7dea71df59 [AKH] Implemented some of the 4/13 spoiled cards. 2017-04-13 23:28:21 -05:00
Jeff
1c958ccc72 - A watcher for Shadows of the Grave. 2017-04-13 17:03:23 -05:00
ingmargoudt
58b7148de9 fix for endreksahr 2017-04-13 07:50:44 +02:00
Derek M
3e6a925271 Merge pull request #3088 from ingmargoudt/fixes
Fixes
2017-04-12 10:08:27 -04:00
Mark Langen
db74576397 Added 4 cards from AHK
* Added Cartouche of Strength
* Added Nest of Scarabs (More correct implementation than existing one)
* Added Soul-Scar Mage
* Added Battlefield Scavenger
2017-04-11 17:40:15 -06:00
ingmargoudt
03643d53a3 rename counttype to comparisontype 2017-04-11 17:01:59 +02:00
ingmargoudt
60a325c43f fix reversed intcompare 2017-04-11 16:50:46 +02:00
Styxo
46d44f84e3 [AKH] Added Hapatra, Nest of Scarabs and Throne of the God Pharao and removed redundant code 2017-04-11 15:20:55 +02:00
ingmargoudt
cb693b5826 there were 3 enums to compare ints, refactored to 1 2017-04-11 09:15:12 +02:00
ingmargoudt
813d84274a removed string constructor in SuperTypePredicate 2017-04-11 09:15:09 +02:00
fireshoes
7da69e5064 Merge origin/master 2017-04-10 18:46:43 -05:00
fireshoes
5fbcf759d6 [ANK] Added 4/10 spoilers to mtg-cards-data.txt and implemented a many cards. 2017-04-10 18:45:48 -05:00
Mark Langen
2b08d5a101 As Foretold Implemented
* Final change to card casting code to support as foretold. Removed all of the "Can't cast cards with no mana cost" code from the earlier parts of the casting process and simplified it to just the PlayerImpl::canPlay check and one final check in the main AbilityImpl::activate code after alternative costs have been chosen.
2017-04-10 17:00:27 -06:00
Mark Langen
b33e03862a Work in progress changes to support As Foretold
* Modifies how cards with no mana cost are handled. You can now begin to cast them if there is an AlternativeCost that would allow you to play them.
2017-04-10 16:13:42 -06:00
Justin Herlehy
8b1220af66 [AKH] Liliana, Death's Majesty
Refactored the "Becomes a black Zombie in addition to its other colors and types" code to own class file to dedupe code from several cards.
2017-04-08 23:25:43 -07:00
LevelX2
22e376699e Merge pull request #3066 from ingmargoudt/cleanups
Cleanups
2017-04-06 23:26:52 +02:00
LevelX2
b71c618294 [AKH] Added exert ability, Ahn-Crop Crasher and Combat Celebrant. 2017-04-06 23:10:24 +02:00
ingmargoudt
f22ebd3677 removed contains cardtype calls 2017-04-06 16:38:34 +02:00
ingmargoudt
ea6ba3c0a9 enum conditions 2017-04-06 16:30:22 +02:00
Mark Langen
40870f22c2 Added a bunch of spoiled cards for 4/5
* Added Colossapede
* Added Cut // Ribbons
* Added Insult // Injury (+test)
* Added Mouth // Feed
* Added Pouncing Cheetah
* Added Scarab Feast
* Added Rags // Riches (+test)
2017-04-05 22:41:56 -06:00
ingmargoudt
4361b7412a can not be singleton 2017-04-05 19:10:47 +02:00
ingmargoudt
fb9d713287 singleton conditions to enum 2017-04-05 19:10:47 +02:00
ingmargoudt
809c8c97c9 introduced YouGainedLifeCondition 2017-04-05 19:10:46 +02:00
ingmargoudt
22c842dfec refactored IntCompareCondition 2017-04-05 19:10:45 +02:00
ingmargoudt
1f89b4eedf introduced XorLessLifeCondition 2017-04-05 19:10:44 +02:00
ingmargoudt
e44b2fd673 extracted duplicate AttachmentAttachedToCardTypePredicate 2017-04-05 19:10:43 +02:00
ingmargoudt
8b90f87af6 added addCardType to MageObject 2017-04-05 19:10:43 +02:00
ingmargoudt
cf6fe27f7d duplicate continuouseffect for vehicles 2017-04-05 19:10:42 +02:00
Jeff
b3bd801c47 - Removed unneeded import. 2017-04-05 09:01:14 -05:00
Mark Langen
047449f14e * Correct type line rendering for split cards with different types on each half.
* Correct art rendering for Aftermath, Split, and Fuse cards on the stack. Fused cards show as a single card with all the abilities / characteristics of both halves while on the stack.
2017-04-04 21:58:52 -06:00
Mark Langen
a2e8cedd02 Merge branch 'master' into akh-card-frame 2017-04-04 18:36:37 -06:00
Mark Langen
7a6b8a1540 Final Aftermath implementation stuff
* Fixed PlayerImpl::getPlayable() to support aftermath (Needs PLAY_FROM_NOT_OWN_HAND_ZONE at the granularity of each card half rather than the whole card)
* Added tests for Dusk // Dawn to make sure there are no regressions on Aftermath.
2017-04-04 18:28:30 -06:00
Mark Langen
fd73fd39af Addressed Feedback and added cards
* Addressed feedback on Pull Request #3053
* Fixed a copy-paste bug in Destined // Lead
* Added two new Aftermath Split cards that were revealed today
2017-04-04 17:07:59 -06:00
fireshoes
195ff7f554 [AKH] Added 4/4 spoilers and implemented non-exert/embalm/aftermath cards. 2017-04-04 17:57:08 -05:00
fireshoes
fe33f82acc [AKH] Added 4/4 spoilers and implemented non-exert/embalm/aftermath cards. 2017-04-04 14:28:45 -05:00
LevelX2
5952c5e33a * Fixed a bug that mana pool was carried over to next game (e.g. using Savage Ventmaw). 2017-04-04 16:23:10 +02:00
LevelX2
269189f87e Merge origin/master 2017-04-04 15:33:01 +02:00
LevelX2
45818f3a51 * Celestial Dawn - Fixed that it was not possible to pay colorless costs with non white mana. 2017-04-04 15:32:39 +02:00
Jeff
772fff4f66 - Fixed spelling for Event. 2017-04-04 08:24:30 -05:00
LevelX2
989250c7f6 Added missing player type. 2017-04-04 09:21:14 +02:00
Mark Langen
18663f0a7a Amonket Aftermath ability and card frame changes Completed
* Aftermath Ability implementation complete (At least until we see comprehensive rules that contradict the way I assumed it will work)
* Aftermath Card Frame rendering complete
* Normal Split and Fuse Split card frame rendering complete
* Amonket Split card CMC changes NOT made, but left for a separate commit
2017-04-04 00:29:54 -06:00
Mark Langen
a96a7f89f5 Work in progress changes for Amonket Aftermath ability.
* Card Rendering has support for Aftermath Split card frames
* Card Rendering has support for Split cards
* Aftermath ability work in progress
2017-04-03 04:15:25 -06:00
ingmargoudt
211d433ea9 playertype, enum singleton 2017-04-02 22:09:20 +02:00
Derek M
b19170f34f Merge pull request #3045 from SickBoyWi/master
Implemented Soul Burn card for the two sets it's a part of: Ice Age a…
2017-04-02 12:17:32 -04:00
LevelX2
097a8ce0dd Some rework to end turn logic and removing of stack objects (related to #2977). 2017-04-02 15:18:50 +02:00
LevelX2
15c1c7f8c0 * Fixed a problem with flashback ability and variable non mana costs (related to #2436). 2017-04-02 10:11:25 +02:00
ingmargoudt
594ffa2754 rewrote some streams and optionals 2017-04-01 22:45:40 +02:00
LevelX2
d0bf77cedf * Fixed a problem with replacement effects that add counters were applied more than once to the same EnteresTheBattlefield event (fixes #2872). 2017-04-01 17:43:17 +02:00
Johnny.Hastings@gmail.com
2be3f20320 Implemented Soul Burn card for the two sets it's a part of: Ice Age and Invasion. 2017-03-31 18:33:17 -05:00
ingmargoudt
884ae83791 Merge pull request #3042 from ingmargoudt/card_functions
move static function to CardImpl, and other api fixes
2017-03-31 18:52:37 +02:00
LevelX2
db25867067 * Fixed a problem of VariableCostImpl with stack abilities. 2017-03-31 17:30:41 +02:00
Achilles
c968a03ff8 - Fixes all but the Conflagrate issue in regards to FlashbackAbility. The CMC issue works with the Flashback cards as well. Conflagrate will require more testing to see what is going on. 2017-03-30 21:11:15 -05:00
ingmargoudt
6f8f10fcc3 move static function to CardImpl, and other api fixes 2017-03-30 20:09:47 +02:00
fireshoes
1bf2d1782c [MPS-AKH] Added Amonkhet Masterpiece reprints. [MM3] Token updates 2017-03-29 10:42:43 -05:00
fireshoes
55b433ae36 [AKH] Added 3/27 spoilers to mtg-cards-data.txt. Implemented several of the new cards. 2017-03-28 22:25:29 -05:00
Derek M
1dcd3d0a81 Merge branch 'master' into type_api 2017-03-27 19:13:45 -04:00
Jeff
aa81a6d663 - LoseAbilityAllEffect() now works with rule 611.2c. 2017-03-27 17:17:56 -05:00
Jeff
c4dc0222d8 - Fixed Indomitable Creativity. Bug #3029 2017-03-27 16:42:32 -05:00
ingmargoudt
5cd1b5880f fix supertype on the client 2017-03-27 22:20:19 +02:00
ingmargoudt
0879298e92 refactor cards to use supertype enum 2017-03-27 21:56:33 +02:00
ingmargoudt
84559457d3 refactor supertype to enum 2017-03-27 21:51:04 +02:00
Clint Herron
70e4752cfd Merge remote-tracking branch 'upstream/master' into CMH-GuiltyConscienceAndBackfire 2017-03-27 08:37:27 -04:00
Achilles
3a2c828fb8 - Fixed Rivals' Duel. 2017-03-26 18:25:45 -05:00
Achilles
c2bcb59c82 - Added Barrin's Spite. Fixed a targeting issue. 2017-03-25 22:41:03 -05:00
Clint Herron
402beb3b49 Merge remote-tracking branch 'upstream/master' into CMH-GuiltyConscienceAndBackfire 2017-03-25 22:07:23 -04:00
Achilles
26dbee6f2d - Added BecomesCreatureAttachedWithActivatedAbilityOrSpellEffect(). Converted all the Genju cards to use it. This class is subject to rule 611.2c. 2017-03-25 17:30:14 -05:00
Achilles
0639b3b75b - Reverted BecomesCreatureAttachedEffect(). It broke cards that are not subject to Rule 611.2c like Ensoul Artifact. A new class called BecomesCreatureAttachedWithActivatedAbilityOrSpellEffect() will be made to fix the Genju of the Spires bug. Yes, that is a long name. If someone has a better suggestion, please let it be known. 2017-03-25 17:02:47 -05:00
Achilles
ff489446fe - Fixed BecomesCreatureAttachedEffect(). Rule 611.2c. Fixes https://github.com/magefree/mage/issues/3011 2017-03-25 13:11:08 -05:00
Clint Herron
40d318ce09 Merge remote-tracking branch 'upstream/master' into CMH-GuiltyConscienceAndBackfire 2017-03-25 10:46:20 -04:00
Derek M
1a9c5fa469 Merge pull request #3014 from drmDev/bug/sphereCosts
fixes #3012 manaCosts not null check and way to retrieve it
2017-03-24 08:06:30 -04:00
Clint Herron
bce7e690a8 Merge remote-tracking branch 'upstream/master' into CMH-GuiltyConscienceAndBackfire 2017-03-23 19:26:34 -04:00
Clint Herron
3c81275ab1 Implementing Guilty Conscience and Backfire, as well as expanding capabilities of trigers that occur when an enchanted creature deals damage to a player, and adding an effect to deal damage to an enchanted creature. 2017-03-23 19:23:28 -04:00
drmDev
57efb10003 fixing tokens exiled at end of combat - not at end step 2017-03-23 11:21:38 -04:00
drmDev
097d60f5fc fixes #3012 manaCosts not null check and way to retrieve it 2017-03-23 10:25:21 -04:00
ingmargoudt
5ae4ddce07 Merge branch 'master' into phantoms 2017-03-23 13:43:34 +01:00
vraskulin
d3214c65e4 Merge remote-tracking branch 'fork/master' 2017-03-22 14:51:31 +03:00
vraskulin
d93061c0bc Equals should be compared with == but not equals() 2017-03-22 14:50:50 +03:00
ingmargoudt
b154bf58f9 phantom effect code duplication 2017-03-22 10:25:57 +01:00
LevelX2
7693f3fd59 Added Ogre Leadfoot. 2017-03-21 11:37:22 +01:00
vraskulin
f37c823aa8 String + string concatenation can be replaced by string + char concetenation 2017-03-20 14:00:18 +03:00
drmDev
311e41abd2 refactored exiletokensAtEndStep 2017-03-19 17:54:07 -04:00
drmDev
c109fc8a0e Implemented card Lightning Coils and test for it 2017-03-19 12:23:58 -04:00
LevelX2
441b6bc2e9 Fixed AI handling of cost reduction of reductions defined with "up to" causing game locks. 2017-03-19 11:20:37 +01:00
Jeff
6cb77bfb8f - Fix for bug #2977. Perhaps Levelx knows of a better solution. It works fine in my testing.
Bound // Determined + Child of Alara = No Death Trigger
2017-03-17 14:54:14 -05:00
LevelX2
68d398c6fb Merge pull request #2968 from ingmargoudt/singleton-as-enum
rewrote singleton to enum where applicable
2017-03-16 17:02:31 +01:00
Clint Herron
3eb9be1b18 Adding check to Flagbearer requirement that only checks for spells that are cast and abilities that are activated -- choosing targets from triggered abilities is exempt. 2017-03-16 03:30:07 -04:00
ingmargoudt
234cfe9519 rewrote singleton to enum where applicable 2017-03-14 16:32:47 +01:00
LevelX2
962f05bbcb * Offering - Fixed that offering could not be activated as instant, cancel during offering mana payment now restores also the sacrificed permanent. 2017-03-12 11:29:53 +01:00
LevelX2
1b2636d0cd * Arachnuns Web - Fixed condition handling. Some renaming. 2017-03-12 10:36:51 +01:00
ingmargoudt
1f215cdbe3 removed autoboxing :
Boolean -> boolean
Integer -> int
Float -> float
2017-03-11 15:17:14 +01:00
ingmargoudt
4b5378c423 pool.count() == 0 ---> pool.isEmpty() 2017-03-11 13:52:46 +01:00
LevelX2
9d8a8a33f1 Xmage 1.4.22V0 2017-03-11 13:38:55 +01:00
LevelX2
c042d50ec7 Fixed a bug that fizzling spell copies let also wrongly fizzle the original spell on the stack the copy was made from. 2017-03-11 12:00:05 +01:00
Nathaniel Brandes
900d68f77d Fix CMC for flashbacked cards.
This should fix Conflagate/Chalice of the Void interaction.
2017-03-09 23:32:42 -08:00
Nathaniel Brandes
d7d700f66a Some clarification around loyalty. Added unit test. 2017-03-09 02:30:52 -08:00
Justin Herlehy
1a2724c9b2 Revert: Fix planeswalker loyalty counters.
This change was incorrect.

Gatherer Ruling:
10/1/2005: Planeswalkers will enter the battlefield with double the normal amount of loyalty counters. However, if you activate an ability whose cost has you put loyalty counters on a planeswalker, the number you put on isn’t doubled. This is because those counters are put on as a cost, not as an effect.
2017-03-09 01:14:10 -08:00
Nathaniel Brandes
52fa369024 Fix planeswalker loyalty counters.
They should be added like normal counters, firing events that can be
intercepted by cards like doubling season.
2017-03-08 23:57:11 -08:00
Nathaniel Brandes
4a9eddb724 Properly fix targeting.
The notTarget should only invalidate the canBeTargetedBy return.
The Filter should still be relevant.
2017-03-08 20:59:01 -08:00
Nathaniel Brandes
495e20ae1a Fix target defender cases that don't target. 2017-03-08 20:44:02 -08:00
Nathaniel Brandes
ce1f4a3bf8 Phyrexian mana now correctly a payment choice.
Per rule 601.2b, it is not determined at the pay costs step,
but at the "choice" step, long before costs are determined.

This fixes trinisphere interactions and should be consistent with the
rules.
2017-03-08 20:03:28 -08:00
Nathaniel Brandes
3bebdd65bc Fixed crewing staying if the object changed zones. 2017-03-08 01:01:10 -08:00
Achilles
31ba751c66 - Fix for Spellskite dealing with a targeted source spell/ability that has multiple targets. 2017-03-07 22:14:18 -06:00
ingmargoudt
7e26a7a141 commandzone is public 2017-03-07 23:19:05 +01:00
ingmargoudt
c5002983e3 changed static zone function to enum method 2017-03-07 22:02:15 +01:00
ingmargoudt
1bc8e2248b changed enum equals to ==, removed contains check for set 2017-03-07 21:47:11 +01:00
ingmargoudt
1caf3a6be4 change getLibrary().size() > 0 to hasCards() 2017-03-07 17:28:26 +01:00
Nathaniel Brandes
d6e4ef793e Fix delve.
Delve should not target the cards it exiles.
2017-03-07 00:03:37 -08:00
ingmargoudt
90c6a69335 fixed a count in Battlefield, changed loops to streams 2017-03-06 12:25:14 +01:00
ingmargoudt
3d029d6ad5 put comparing logic in counttype, remove all switches 2017-03-06 11:46:22 +01:00
ingmargoudt
6d4c388c5e small change in gender enum 2017-03-06 10:18:16 +01:00
ingmargoudt
5387f06898 cards now use the new CountType 2017-03-05 23:29:51 +01:00
ingmargoudt
80580d69e9 Replace checktype enum for Cardtype enum 2017-03-05 20:04:09 +01:00
ingmargoudt
b5e8c88153 remove all contains(cardtype.XX) references, instead use the default interface method 2017-03-05 09:14:33 +01:00
Nathaniel Brandes
58d0a8eb2a Remove empty function incorrectly checked in. 2017-03-04 23:08:54 -08:00
Nathaniel Brandes
1d3ebb749d Fix omniscience effect for colorless mana.
Also unified the tests for omniscience into a single file, and
put the effect into a single class so that Tamiyo and Omniscience
can share implementations.
2017-03-04 23:04:11 -08:00
Justin Herlehy
8cfe66e29c Fix Ichorid to set notTarget flag.
Fixes issued #2906
2017-03-04 16:20:17 -08:00
ingmargoudt
5a57731968 added new helper methods to test for CardType, to get rid of the contains(CardType.XXX) everywhere, put the logic of that in one place and use the interface call 2017-03-04 00:16:36 +01:00
ingmargoudt
372584f7ad changed cardtype from list to enumset 2017-03-03 17:04:32 +01:00
ingmargoudt
d01aed42ed change enum equals to == 2017-03-01 15:05:44 +01:00
vraskulin
0bc9cf91a8 Minor improvements - StringBuilder now have initial value 2017-02-28 15:26:07 +03:00
vraskulin
11dc1e10f1 Few lambda's and removed explicit type from creating lists and hashmaps 2017-02-28 13:46:57 +03:00
vraskulin
0a3c95dde5 Inner classes should be static. It reduces memory usage and gives perfomance boost + DeckImporter rollback 2017-02-28 12:40:12 +03:00
vraskulin
ad7d3c8078 equals "" should be replaced with isEmpty 2017-02-28 11:45:15 +03:00
vraskulin
3600d03e2c StringBuilder in a class field may cause memory leaks, it's not GCed, so it's a better way to store all errors just in string field 2017-02-28 11:37:31 +03:00
ingmargoudt
afbf5ce2b6 Merge pull request #2891 from kubikrubikvkube/master
Nulls to optional. Also there was bug with AetherChaser
2017-02-27 17:51:35 +01:00
Jeff
79983fbe26 - Extra check to verify a player is in game. 2017-02-27 08:41:07 -06:00
vraskulin
498c8cf60c Made utility classes final to explicitly forbid it's inheritance 2017-02-27 17:03:38 +03:00
vraskulin
f309717616 Merge remote-tracking branch 'fork/master' 2017-02-27 16:33:47 +03:00
vraskulin
af3986df46 All final strings became static - it will give a little perfomance boost, due to not instantiating same string every time 2017-02-27 16:33:32 +03:00
doncarton
5eaaa67d1e Nulls to optional. Also there was bug with AetherChaser "you may pay" was not set to optional 2017-02-26 15:15:54 +03:00
LevelX2
d4415e2eff Merge pull request #2887 from aastrand/ignorelist
Add client-side user ignore list
2017-02-26 09:49:43 +01:00
LevelX2
f06ee144f7 * Fixed AddCardTypeSourceEffect with limited duration and object reference was applied on wrong objects (fixes failing crew test). 2017-02-25 12:05:43 +01:00
Anders Åstrand
f68460603a Add client-side user ignore list
This commit adds a client-side per-server ignore list.
* Whispers and talk from an ignored user is hidden
* Ignored users cannot join your tables
* Ignored users tables are hidden
2017-02-22 22:16:09 +01:00
ingmargoudt
48a1fe8602 Merge pull request #2880 from ingmargoudt/master
put the writing of equipped and enchanted in the attachmenttype
2017-02-19 23:59:25 +01:00
ingmargoudt
d0fa00f3af put the writing of equipped and enchanted in the attachmenttype 2017-02-19 23:58:32 +01:00
Achilles
0372eb12e2 - Little fix for a watcher used for Ephara, God of the Polis. 2017-02-19 16:42:32 -06:00
ingmargoudt
972ed6a3f2 changed enum comparison to ==.
isDependentTo returns empty set rather than null
2017-02-19 23:38:47 +01:00
JOAC69
845e406d63 Fix failing tests that were doing Object.Equels where == was needed 2017-02-19 02:31:04 -06:00
LevelX2
899046cf16 * Gratuitous Violence - FIxed that if the damage of a creature with lifelink was doubeled only the non doubled amount was added to life. 2017-02-18 01:26:02 +01:00
LevelX2
e6be0577bb Fixed a bug of FirstSpellCastThisTurnWatcher (fixes #2871). 2017-02-17 23:23:33 +01:00
ingmargoudt
cf23d0905b mentioned the wrong hashmap (confusing names!!!) 2017-02-16 15:14:44 +01:00
ingmargoudt
14c459b924 solving review issues 2017-02-16 14:03:25 +01:00
ingmargoudt
4aa51210f9 refactor of watchers to use map functions 2017-02-15 23:19:40 +01:00
spjspj
fbbfc6c611 Merge pull request #2869 from spjspj/master
Limit deck to 1000 cards
2017-02-16 08:07:17 +11:00
spjspj
b65c1180e4 Limit deck to 1000 cards 2017-02-16 08:06:23 +11:00
ingmargoudt
a1bc43d33e Merge pull request #2868 from kubikrubikvkube/master
Functional interfaces annotation and bugfixes
2017-02-15 20:27:21 +01:00