Commit graph

5578 commits

Author SHA1 Message Date
LevelX2
94684baf3c * Ghostly Flicker - Reworked effect code again. 2017-01-14 00:00:42 +01:00
LevelX2
8f059ee71a * Fixed a logical bug to DiscardTargetEffect. 2017-01-13 23:43:48 +01:00
LevelX2
eb802431fa * Duel Commander - Removed commander damage logic. 2017-01-13 23:36:22 +01:00
LevelX2
d1af9b0b85 * Fixed a problem of the improvise ability that prevented to pay costs during the resolution of the spell cast using improvise (e.g. Metallic Rebike). 2017-01-13 23:02:21 +01:00
LevelX2
17fbee2400 * Fixed a bug that adding counters with Skyship Plunder or Maulfist Revolution did not trigger counter added events. 2017-01-13 22:40:37 +01:00
LevelX2
350436dee2 * Fixed a bug with rule text generation (e.g. for Lapse of Certainty). 2017-01-13 22:38:04 +01:00
Galatolol
59cf0cf1f3 Fixed target and changed name of the effect 2017-01-13 20:57:44 +01:00
LevelX2
9b14795032 * Champion of Lambholt, Goldnight Commander, Griffin Protector and Healer of the Pride - Fixed that the triggered ability also triggered for not controlled permanents. 2017-01-13 20:47:43 +01:00
LevelX2
450eba06e8 Merge pull request #2772 from ingmargoudt/master
replaced enum comparison from equals to ==
2017-01-13 17:26:50 +01:00
fireshoes
1e7509a765 Fixed Goblin Chieftain missing haste ability for controlled goblins. Fixed missing basic lands from AER booster packs. 2017-01-12 14:10:25 -06:00
test
e18a429e92 * fixed the planeswalker search cards to work correctly with aven mindcensor like effects 2017-01-12 13:51:22 +01:00
Galatolol
0b6e7fdb7d Added 4 cards 2017-01-11 20:35:50 +01:00
igoudt
ac8962cb29 replaced enum comparison from equals to == 2017-01-11 09:53:16 +01:00
LevelX2
1c4bf298eb Merge pull request #2762 from sotovdev/bigRefactoring
Big refactoring
2017-01-11 07:42:52 +01:00
LevelX2
17dbd996d2 Merge pull request #2760 from ingmargoudt/master
some rewrites to reference putIfAbsent
2017-01-11 07:36:12 +01:00
LevelX2
0e9b46bdc1 Merge pull request #2759 from sotovdev/master
We can't invoke equals method on object that can be null
2017-01-11 07:33:54 +01:00
LevelX2
a2b8891188 Fixed a NPE of Meld effect. 2017-01-10 23:54:42 +01:00
vraskulin
076840df53 Big refactoring
I used Intellij IDEA to automatically refactor code to achive 3 goals.
1) get rid of anonymouse classes, and replace the with lamba to get more readeable and clean code (like in TableWaitingDialog).
2) make effectively final  variables actually final to avoid inadvertent changes on it in further releases and keep objects as immutable, as possible.
3)  Get rid of unused imports (most of the changes) in whole project classes.
2017-01-09 19:16:53 +03:00
vraskulin
a9f2c8c407 Refactoring
We don't need to override basic methods to just call the basic method again.
2017-01-09 18:13:43 +03:00
vraskulin
b626bf6866 Properties can be final in these objects 2017-01-09 17:52:17 +03:00
vraskulin
33b9ec52b0 SQLException fixed
ERROR 2017-01-09 15:35:35,693 java.sql.SQLException: Cannot update class mage.cards.repository.ExpansionInfo because it doesn't have an id field =>[main] ExpansionRepository.update
2017-01-09 15:40:20 +03:00
igoudt
316137b5e2 replaced various !contains -> put with putIfAbsent 2017-01-09 13:07:32 +01:00
igoudt
ab624c22ef library replaced !contains -> put with putIfAbsent 2017-01-09 12:09:03 +01:00
LevelX2
0ec712fcd9 Added some additional logic to prevent the ExpansionRepository update errors. 2017-01-08 20:41:29 +01:00
LevelX2
4dd023716e * Added another general static filter class. 2017-01-08 10:35:46 +01:00
LevelX2
fa4cf8161d * Added missing creature type "Servo" to the creature type list. 2017-01-08 10:16:08 +01:00
LevelX2
ee203cf981 Xmage Release 1.4.20V0 2017-01-08 01:36:05 +01:00
LevelX2
a75e4f4fcb Fixed that adding counters to players did not work correctly (e.g. Winding Constrictor). 2017-01-07 23:53:47 +01:00
LevelX2
491ab5fbb0 [AER] Fixed Daredevil Dragster. 2017-01-07 23:29:27 +01:00
LevelX2
9353c5aa9c [AER] Some more minor fixes. 2017-01-07 22:22:17 +01:00
LevelX2
b358597bf4 [AER] Added the last missing cards. Some fixes. 2017-01-07 21:42:29 +01:00
LevelX2
c7e149904b [AER] Fixed some problems with revolt. 2017-01-07 20:03:03 +01:00
spjspj
7a8055172d spjspj - Allow appending from the clipboard in deck editor 2017-01-08 01:02:01 +11:00
LevelX2
b1e65b1bb4 Merge pull request #2744 from Galatolol/master
Added 3 cards, little refactoring (Unattach cost)
2017-01-07 00:40:04 +01:00
Styxo
90b3bacf6e [AER] Added rest of green cards 2017-01-07 00:26:30 +01:00
LevelX2
7ec9394a83 Merge origin/master
Conflicts:
	Mage.Sets/src/mage/sets/AetherRevolt.java
2017-01-06 21:57:18 +01:00
LevelX2
69db775d05 [AEN] Added Hidden Stockpile. 2017-01-06 21:52:51 +01:00
Styxo
7aa57cc01f [AER] Added white cards 2017-01-06 21:22:24 +01:00
fireshoes
4888a4a15b [AER] Added most of the 1/5 spoiled cards. Fixed a name. 2017-01-05 23:50:20 -06:00
Styxo
e057bde150 [Refactor] Merged some similar abilities together 2017-01-05 14:12:18 +01:00
fireshoes
e4727a1063 [AER] Implemented several cards. 2017-01-04 14:25:39 -06:00
Styxo
fad4f53365 [Refactor] Removed some duplicate classes 2017-01-04 15:10:25 +01:00
Styxo
19316b4e20 Forgot one new class 2017-01-04 12:07:54 +01:00
Styxo
8fd28f70e6 [AER] Added Release Gremlins, Aetherwind Basker and Inspiration Monuments 2017-01-04 12:06:16 +01:00
Styxo
3c67e51db0 [REFACTOR] Removed duplicate code and an unused effect 2017-01-04 09:58:10 +01:00
Justin Herlehy
1c6914398b Code Deduplication
Move the cast from hand effect from the expertise cards to its own effect that can have different values assigned to it.
2017-01-03 23:49:16 -05:00
Galatolol
b0dc7fe276 Added 3 cards, little refactoring (Unattach cost) 2017-01-03 20:51:39 +01:00
ludwig.hirth
3040072be9 Merge origin/master 2017-01-03 14:38:51 +01:00
ludwig.hirth
94717fd041 * Tel-Jilad Wolf - Fixed that the ability triggered for all creatures not only artifact creatures (fixed #2738). 2017-01-03 14:38:18 +01:00
Styxo
7c2af646ec [Refactor] Edited some filter text 2017-01-03 13:58:03 +01:00
Styxo
a4a9e41464 [Refactor] Edited RevealLibraryPutIntoHandEffect, deleted the same effect class (EnvoyEffect) and changed some cards 2017-01-03 10:05:58 +01:00
Styxo
656e658fb4 [Refactor] Added DamageWithPowerEffect and change some cards 2017-01-03 09:23:35 +01:00
emerald000
c6c7c82508 [AER] Implemented Revolt mechanic + 2 cards using it.
Decommission and Fatal Push
2017-01-03 01:11:24 -05:00
LevelX2
54b40646d9 Some minor changes. 2017-01-02 18:09:33 +01:00
LevelX2
4ea6a0befb Merge pull request #2730 from Galatolol/master
Added 7 cards
2017-01-02 17:25:21 +01:00
LevelX2
2162fab114 * Fixed a problem of AI target handling (e.g. for Precursor Golem) 2017-01-01 14:56:34 +01:00
Galatolol
2db6ff1825 Fixed 3 cards 2017-01-01 12:11:11 +01:00
Justin Herlehy
f3c0d3fce0 [MMQ] Ramosian Rally
Also fixed order of check in GameImpl for attached player to prevent possible NPE.
2016-12-31 14:41:38 -05:00
LevelX2
df0cd60fbc * Marionette Master and Mortis Dogs, fixed that power below 0 caused life gain. 2016-12-31 17:41:12 +01:00
LevelX2
c2852ca233 [AER] Added Battke at the Bridge. 2016-12-31 17:00:00 +01:00
LevelX2
eb5b1771e6 Merge pull request #2728 from sotovdev/fix_29122016_2
Refactoring
2016-12-31 00:12:03 +01:00
Galatolol
f577a4b614 Added 7 cards 2016-12-30 12:15:56 +01:00
Justin Herlehy
14507e7dc5 Fix GameImpl SBA for auras attached to players.
attachedToPlayer was always getting set to something so the null check in the SBA loop was not allowing auras to be put into the graveyard for being attached to an illegal player.  Currently checks for hasLost() as the player leaving also sets loses to true.
2016-12-30 01:56:04 -05:00
ludwig.hirth
6c72794859 * Added test. 2016-12-29 17:05:32 +01:00
ludwig.hirth
b26a5730fa * Mage Slayer - Fixed that the correct damage source was assigned for the additional damage. 2016-12-29 16:18:52 +01:00
vraskulin
f04ba151f7 Refactoring
See github line by line comments in 'File changed'
2016-12-29 16:49:12 +03:00
vraskulin
c0cf22bbf7 Refactoring
See github line by line comments in 'File changed'
2016-12-29 16:16:08 +03:00
vraskulin
01bb9572e9 Refactoring
See github line by line comments in 'File changed'
2016-12-29 15:38:22 +03:00
vraskulin
c526306c5b Refactoring
See github line by line comments in 'File changed'
2016-12-29 15:26:19 +03:00
LevelX2
d3c2c33b44 * Added static Goblins filter. 2016-12-28 11:32:29 +01:00
LevelX2
ecc18072cf Cyclopean Tomb - Update. 2016-12-28 02:02:57 +01:00
LevelX2
cebfadbf34 Merge pull request #2709 from MTGfan/master
Cyclopean Tomb TODO: inside watcher get ID for card
2016-12-27 16:38:27 +01:00
LevelX2
8075ea2e50 * Fixed a problem that Emblems created by permanents where its owner left the game caused errors in clients. Some handling cganges of emblems. 2016-12-27 16:00:22 +01:00
LevelX2
ad5699f119 * Fixed a bug that the color choice was fixed if used in activated abilities (e.g. Obi-Wan Kenobi) beyond the first usgae. 2016-12-27 11:48:18 +01:00
Justin Herlehy
5cfec72d81 [TOKEN] Goblin with Haste
The 1/1 red goblin with haste token was failing to specify that it was a token with haste is the fallback autotext.
2016-12-27 00:08:13 -05:00
LevelX2
862ac38f51 * Fixed that special actions (e.g. delve mana payment) were handled correctly if a player plays a turn for another player. 2016-12-24 16:52:06 +01:00
LevelX2
a632f9c0e8 Fixed a problem that Dwarven Recruiter, Goblin Recruiter or Scouting Trek searched for the wrong subtype. 2016-12-24 11:55:30 +01:00
LevelX2
c6d54c929f Fixed a problem that selecting cards in hand or libraray could unintended trigger "becomes the target of a spell or ability" abilities. 2016-12-24 11:42:11 +01:00
MTGfan
8a807c888c Merge remote-tracking branch 'upstream/master' 2016-12-24 00:13:54 -05:00
LevelX2
8ba22ad7e2 * Fixed that selecting no target players let fizzle the spell (e.g. Wheel and Deal). 2016-12-22 23:50:02 +01:00
Styxo
c2ef2b1f47 [CN2] Added Deadly Designs and Fang of the Pack 2016-12-22 08:05:22 +01:00
MTGfan
7e867f4fcf Cyclopean Tomb TODO: remove counters part of effect 2016-12-21 19:46:46 -05:00
LevelX2
f0ba7d38a6 Merge pull request #2697 from sotovdev/master
Refactoring SQl query + unwanted ArrayList creation
2016-12-21 15:48:01 +01:00
Styxo
2eb0a487a4 Added WishEffect, ExchangeLifeTargetEffect and did refactors 2016-12-20 13:31:39 +01:00
Styxo
009676f75f Added HippoToken 2016-12-19 12:40:58 +01:00
Styxo
cff83aefb1 Created LoseHalfLifeTargetEffect, DiscardedByOpponentTrigger and made some refactors 2016-12-19 12:39:26 +01:00
vraskulin
2e83930ace Creating new ArrayList is unneccesarry
We shouldn't create new arraylist with default size and no element in it to show that no elements found in database. It's one more object in heap, which will be never used. There is special method Collections.emptyList() - it's more readeable and returns empty immutable list
2016-12-19 12:23:23 +03:00
vraskulin
e22951c68e Repository objects refactoring
SQL query is limited by 1, so there will be two cases - whether collection is empty or not. We should user convenient shortcut for checking emptiness of collection
2016-12-19 11:30:32 +03:00
LevelX2
1de210ab74 * Fixed a bug of DealsDamageToOneOrMoreCreaturesTriggeredAbility, added some tests. 2016-12-18 17:50:33 +01:00
LevelX2
d85b9943f1 * Added logic to remove control effects that refer to permanents of a player that leaves the game. 2016-12-18 16:57:34 +01:00
LevelX2
40d8a32695 XMage 1.4.19V1 2016-12-17 10:35:45 +01:00
LevelX2
61dd62b148 * Undiscovered Paradise - Fixed that it was not returned to hand on untap step (fixes #2693). 2016-12-17 09:27:24 +01:00
LevelX2
8e51e3a2bf Merge pull request #2686 from MTGfan/master
Guardian Angel and added Dynamic Value constructor to PreventDamageToTargetEffect
2016-12-16 22:57:21 +01:00
LevelX2
6955ad803f Merge pull request #2691 from sotovdev/sqlPerf
SQL query perfomance improvements
2016-12-16 22:34:38 +01:00
LevelX2
8d6d8d25e5 * Reflecting Pool - Fixed that mana from dynamic mana abilities were not taken into account (e.g. Gaea's Cradle or Serra's Sanctum). 2016-12-16 18:38:40 +01:00
vraskulin
3be7598ee1 SQL query perfomance improvements
There will be always 0 or 1 distinct result. If we don't limit this query it will find an item, and still will go through the whole table trying another one, which is unneccesary and have performance impact.
2016-12-16 17:27:19 +03:00
Styxo
8e6cf84ce4 Added TargetHasCounterCondition and option for BecomesMonstrous 2016-12-15 15:33:35 +01:00
MTGfan
26c176abaa Guardian Angel and added Dynamic Value constructor to PreventDamageToTargetEffect 2016-12-14 17:20:00 -05:00
LevelX2
3ca573b7c0 Merge pull request #2672 from MTGfan/master
Nettling Imp, TargetController and ControllerPredicate updated to include active choice
2016-12-13 15:23:36 +01:00
Justin Herlehy
557019e8a6 Merge pull request #2679 from JRHerlehy/master
[CN2] Refactor Council's Dilemma voting.
2016-12-13 02:02:43 -08:00
Styxo
f88d3f0bbf Refactored RevealCardsFromLibraryUntil and some cards to use it 2016-12-13 09:21:11 +01:00
JRHerlehy
b9d5fbcbe5 [CN2] Create new vote effect to reduce boilerplate code duplication on Council's Dilemma cards. 2016-12-12 20:58:31 -08:00
MTGfan
2fcb26887c Nettling Imp and predicate revisions 2016-12-12 15:16:36 -05:00
LevelX2
fe97f289f8 Ravnica: City of Guilds - Added the 5 missing cards with Radiance ability word. 2016-12-12 20:54:45 +01:00
MTGfan
a199d6eaea Nettling Imp, TargetController and ControllerPredicate updated to include active choice 2016-12-12 03:03:39 -05:00
LevelX2
79c80fe24b Added a test and some minor changes. 2016-12-11 23:10:20 +01:00
LevelX2
7c7cebc048 * Saskia the Unyielding - Fixed that the damage source of the triggered ability was not the combat damage causing creature. 2016-12-11 22:58:35 +01:00
LevelX2
4b4aef8ed5 * Orzhov Advokist - Fixed that the attack preventing effect did not work correctly. 2016-12-11 16:25:08 +01:00
LevelX2
fb2d3f911e * Power Surge - Fixed some problems. 2016-12-11 15:14:09 +01:00
LevelX2
561f120ce0 * Consecrete Land - Some changes. 2016-12-11 12:38:25 +01:00
LevelX2
fde05d8efb Merge pull request #2649 from MTGfan/master
I need help finishing these cards, thanks
2016-12-11 10:27:59 +01:00
Justin Herlehy
ba57ccfc9e [USG] Lotus Blossom (#2671) 2016-12-09 16:11:16 -08:00
MTGfan
90aec7c517 Changes to Consecrate Land and Power Surge both not working yet. 2016-12-08 22:38:17 -05:00
MTGfan
4a2e1c5063 Merge remote-tracking branch 'upstream/master' 2016-12-08 21:37:02 -05:00
LevelX2
3d95849c10 Some fixes to the Monarch designation. 2016-12-07 17:14:08 +01:00
JRHerlehy
deb59d409d Implement AER card Ajani Unyielding
Moved Swords to Plowshares effect to common class to dedupe code.
2016-12-07 00:45:06 -08:00
Styxo
ba30a514d2 [AER] Added Ajani and Tezzeret from PW decks 2016-12-06 15:38:24 +01:00
MTGfan
70fa433480 Power Surge ToDo: count untapped land at beginning of turn 2016-12-03 21:48:44 -05:00
spjspj
94224ab367 Merge pull request #2651 from spjspj/master
spjspj - Fix for must attack effects not forcing attacks in multiplayer
2016-12-03 18:54:04 +11:00
spjspj
9f66125cf9 spjspj - Fix for must attack effects not forcing attacks in multiplayer 2016-12-03 18:26:40 +11:00
MTGfan
0f90531b33 Animate Artifact please test this 2016-12-01 23:33:10 -05:00
MTGfan
cc1f4b563d Consecrate Land currently not working 2016-12-01 14:20:40 -05:00
MTGfan
4f744b4e53 Added Personal Incarnation
Personal Incarnation implemented. 
TargetController and ActivatedAbilityImpl added OWNER as required by Personal Incarnation
2016-11-29 20:15:02 -05:00
LevelX2
b62ca1ed1f Xmage 1.4.19 2016-11-27 19:59:42 +01:00
LevelX2
7481b7f5b2 Fixed possible endless loop if player left game during combat. 2016-11-27 07:54:02 +01:00
LevelX2
68d0e6b9fa Added the monarch concept to xmage and all related cards. 2016-11-27 01:14:32 +01:00
LevelX2
8bf299e342 * Fixed and extended extra turn test. 2016-11-26 13:46:10 +01:00
LevelX2
db831202da Merge pull request #2630 from MTGfan/master
New AttachedPermanentToughnessValue and related updates plus misc
2016-11-26 10:40:39 +01:00
LevelX2
946b723361 * Fixed possible null pointer exceptions. 2016-11-26 10:22:23 +01:00
MTGfan
36d6c006ca New AttachedPermanentToughnessValue, updated DamageAttachedControllerEffect to take DynamicValue (ex. to work with AttachedPermanentToughnessValue), and updated Creature Bond to use AttachedPermanentToughnessValue and DamageAttachedControllerEffect. Corrected Gaea's Liege, Kor Scythemaster, Soltari Lancer, and Spirit of the Night to use SourceAttackingCondition. Rmoved the AttackingCondition we creature for Gaea's Liege since it duplicated the already existing SourceAttackingCondition. For the other three using SourceAttackingCondition and the minor changes to the code for them should make their code more efficient. 2016-11-26 03:57:46 -05:00
Dilnu
3198558dd6 Fix March of the Machines
Add a DependencyType for ArtifactAddingRemoving and use it to make March of the Machines come after artifact type adding effects.
2016-11-22 08:40:54 -05:00
Dilnu
9ff3e2c670 Fix the counter removal code so it doesn't throw events when it's removing nonexistent counters. 2016-11-21 07:39:47 -05:00
spjspj
5fe4dcdd29 Merge pull request #2610 from spjspj/master
Add 'EDH power level' rating to Commander tables
2016-11-21 19:45:28 +11:00
LevelX2
7daa476542 * Fixed that the color of cards cast face dwon and later turned face up was not set. 2016-11-20 22:34:12 +01:00
spjspj
7fd2eeedcf Add 'EDH power level' rating to Commander tables 2016-11-20 23:13:16 +11:00
LevelX2
da7982ff2e * Obscuring Aether - Fixed a problem that face down creatures had P/T = 0/0. 2016-11-20 10:13:04 +01:00
LevelX2
7d60d884c3 * Refelecting Pool - Fixed that mana that Exotic Orchard could produce was not taken into account. 2016-11-20 01:15:45 +01:00
LevelX2
5ea1724112 * Ghirapur Guide - Fixed that the effect of the activated ability lasted while Ghirapur Guide was on the battlefield instead only until end of turn. 2016-11-20 00:33:01 +01:00
LevelX2
3eb2531cee * Karona, False God - Reworked gain control handling. 2016-11-20 00:15:06 +01:00
LevelX2
03c766a485 * Myriad - Fixed a bug that the token was also created to attack the definding player. 2016-11-19 23:12:02 +01:00
LevelX2
b7b7a97945 * Fixed that died creature were wrongly returned to battlefield also if it was moved to exile by replacement effect before. 2016-11-19 18:44:11 +01:00
LevelX2
360db9104f * Fixed that the order of opening hand actions could not be chosen by the player. 2016-11-19 17:49:51 +01:00
LevelX2
ca25cc4679 * Fixed a problem that optional effects could produce IndexOutOfBoundsExceptions. 2016-11-19 12:47:20 +01:00
LevelX2
8e42660e33 Fixed a problem that tokens that came into play with modified attributes (P/T e.g. from Master of Etherium) were seen for triggered abilities (e.g. Sword of the Meek ) with unmodified attributes. 2016-11-19 12:08:44 +01:00
LevelX2
0ccaca4a3b Fixed a problem that tokens that came into play with modified attributes (P/T e.g. from Master of Etherium) were seen for triggered abilities (e.g. Sword of the Meek ) with unmodified attributes. 2016-11-19 12:08:38 +01:00
LevelX2
f9fcd7e4bf Merge pull request #2602 from Dilnu/master
Fix AlternativeCostSourceAbility
2016-11-19 11:26:00 +01:00
MTGfan
9c80ca143b updated Gaea's Liege, removed unused import on Protean Hydra, corrected Rock Hydra line to have {this} instead of Rock Hydra. 2016-11-16 22:39:49 -05:00
Dilnu
0caaaa4205 Fix AlternativeCostSourceAbility at the moment it doesn't apply it's filter early enough and so it has strange effects in certain edge cases. Specifically it allows Hypergenesis to be cast with Aluren and Kentaro. 2016-11-16 21:20:37 -05:00
Dilnu
c37b782b75 Fix the Commander Predicate which was written incorrectly. This fixes Bastion Protector. 2016-11-13 20:05:52 -05:00
LevelX2
67d4ecafbe Fixed CommanderPredicate (fixed e.g. problem with Bastion Protector). 2016-11-12 09:05:22 +01:00