Commit graph

5266 commits

Author SHA1 Message Date
LevelX2
c703ebaa9d Reworked Hate condition. 2016-09-28 08:30:31 +02:00
LevelX2
9cf9d69c55 Fixed minor problem of Volrath's Laboratory. Added combat flag to LIFE_LOST event. 2016-09-28 08:00:32 +02:00
Lymia Aluysia
bd1f7dd32a
Merge branch 'master' of https://github.com/magefree/mage 2016-09-27 11:25:48 -05:00
LevelX2
05f6224f8b Merge origin/master 2016-09-27 17:32:07 +02:00
LevelX2
4619f45771 [SWS] Fixed No Contest. 2016-09-27 17:31:26 +02:00
Eirkei
840e55b949 effect for "Target opponent puts the cards from his or her hand on top of his or her library. Search that player's library for that many cards. The player puts those cards into his or her hand, then shuffles his or her library" 2016-09-27 15:49:41 +02:00
LevelX2
86f2007945 Merge pull request #2384 from Styxo/master
Star Wars Set implemented
2016-09-27 11:30:08 +02:00
Styxo
9084595135 Star Wars Set implemented 2016-09-26 18:43:04 +02:00
LevelX2
e1dc3d4ea1 [CN2] Adding Daretti, Ingenious Iconoclast. 2016-09-26 18:01:17 +02:00
Lymia Aluysia
37d93fa537
Made the dck importer work with arbitary set codes and card ids. 2016-09-26 10:11:39 -05:00
LevelX2
652672ee45 Merge pull request #2379 from Lymia/master
Add basic support for custom sets.
2016-09-26 14:26:35 +02:00
Eirkei
080b61ec62 Effect for "each opponent sacrifices ... unles he or she pays ..." 2016-09-26 13:16:58 +02:00
Lymia Aluysia
f61c18ea63
Fix code formatting issue. 2016-09-26 05:19:40 -05:00
Lymia Aluysia
48e14a1765
Rename stuff. Names are hard. 2016-09-25 14:45:06 -05:00
Lymia Aluysia
207cb04dbc
Merge branch 'master' of https://github.com/magefree/mage 2016-09-25 14:09:42 -05:00
Styxo
f18e4b66f1 Little refactor of PermanentHasCounterCondition 2016-09-25 19:38:40 +02:00
Lymia Aluysia
e606deded8
Make ClassScanner not load inner classes. 2016-09-25 10:40:40 -05:00
Lymia Aluysia
e5af2b843b
Move the custom set flag to setType. 2016-09-24 17:03:04 -05:00
Lymia Aluysia
74a017586a
Exclude custom sets from constructed formats. 2016-09-24 14:15:47 -05:00
Lymia Aluysia
238c88a8b6
Added mechanic for CardImpl to search other classloaders for cards. 2016-09-24 12:33:47 -05:00
Lymia Aluysia
ad5b23aa06
Made CardScanner classloader aware. 2016-09-24 12:14:20 -05:00
Lymia Aluysia
3c2dd8d335
Made ClassScanner classloader aware. 2016-09-24 11:31:26 -05:00
Lymia Aluysia
14f97ba24a
Added plugin events. 2016-09-24 10:27:36 -05:00
spjspj
16bb17e5bb spjspj - Add option of 'Number of Seats'. This is for Tournaments so that you can draft say a 4 way draft and then have a 4 way game at the end of it. 2016-09-25 00:46:16 +10:00
LevelX2
73a2ccda9b Xmage 1.4.15v5 2016-09-24 04:01:00 +02:00
LevelX2
e81f26d539 Some fixes to prevent null pointer exceptions. 2016-09-24 03:48:48 +02:00
Samuel Sandeen
ad2f5a4d46 Merge pull request #2368 from Dilnu/master
Fix Flashback so it can't cause Stack Overflows
2016-09-23 21:25:43 -04:00
Dilnu
396f3b73b1 Propagate Applied Effects with the Flashback Replacement Effect
This fixes a bug that allows replacement loops when other replacement
effects conflict with Flashback’s attempts to exile Flashbacked spells.
2016-09-23 21:19:51 -04:00
LevelX2
423c2bbf6c Fixed a problem of Flashback and Buyback producing a loop. 2016-09-24 03:13:59 +02:00
Dilnu
b7f9626697 Small fixes to TriggeredAbilityImpl
This fixes a type and removes a duplicate null check.
2016-09-23 21:13:34 -04:00
LevelX2
d5d00451a8 Fixed a problem with static abilities for battlefield zone where the source was entering the battlefield but the ability did not work. 2016-09-24 01:13:13 +02:00
LevelX2
c9bb0be016 Reworked selected modes handling. That fixed the Subtle Strike targeting problem. 2016-09-24 01:12:01 +02:00
LevelX2
0b118d074e * Demonic Pact - Fixed that the already chosen options were not correctly rollbacked. 2016-09-23 19:10:25 +02:00
LevelX2
5d50179c84 Added Test. 2016-09-23 15:12:21 +02:00
LevelX2
3c6402f8a6 * Altar of the Brood - Fixed wrong rule tool tip text. 2016-09-23 00:32:48 +02:00
LevelX2
4ad3ef4e68 * Fixed a problem with card movement that prevented Tiny Leaders go to command zone at game start. 2016-09-22 23:08:40 +02:00
LevelX2
8fb04ddbef Fixed a bug that let cards disappear after moving cards from hand to library (e.g. Teferi's puzzle). 2016-09-22 21:36:21 +02:00
LevelX2
3eae5e9a00 Fixed a bug of the copy effect that could lead to null pointer exceptions e.g. for Permeating Mass trying to copy meanwhile removed target(fixes #2342). 2016-09-22 20:49:12 +02:00
Styxo
11bb392c71 Merge pull request #2359 from Styxo/master
Fixed Crew Ability
2016-09-21 21:10:39 +02:00
Styxo
935a51c4da Fixed Crew Ability 2016-09-21 21:05:37 +02:00
LevelX2
6b431be2ba * Shaman of the Great Hunt - Fixed that it triggerd also for other players. 2016-09-21 20:16:27 +02:00
LevelX2
c82d6b5566 * Fixed some possible null pointer exceptions. 2016-09-20 23:40:25 +02:00
emerald000
ab352100f1 Fixed Panharmonicon triggering for non-permanents. 2016-09-20 09:34:36 -04:00
Styxo
8485df8cb7 Added Blessed Wind and few refactors 2016-09-20 00:17:56 +02:00
emerald000
120d7612f6 Fixed Panharmonicon triggering for opponents abilities. Added tests. 2016-09-19 09:22:21 -04:00
Dilnu
4427121a64 Fix the Snapcaster Mage Repeal Test
The flashback ability was attempting to choose targets. That doesn’t
really make sense since the Targets should be chosen by the actual
spell being cast.
2016-09-18 20:20:29 -04:00
Dilnu
41c1540f45 Fix a couple typos 2016-09-18 20:16:56 -04:00
Dilnu
87a6d3a1ee Fix the combat code to support Slayer's Cleaver
Update the checks for unfulfilled conditions to confirm the blocking
creatures actually are fulfilled.
Update the check for whether a blocker is already being used correctly
to confirm that there isn’t a stricter condition that is unfulfilled.

This change also updates the Slayer’s Cleaver test to make it more
robust.
2016-09-18 16:28:01 -04:00
LevelX2
a1e70e21f4 [KLD] Some more fixes. 2016-09-17 20:18:54 +02:00
LevelX2
bf73eb4042 Merge pull request #2310 from fenhl/ae
Change AE to Ae
2016-09-17 19:04:42 +02:00
Fenhl
ab7e86cb27 Change AE to Ae 2016-09-17 16:59:24 +00:00
LevelX2
346b6654f8 [KLD] Some minor fixes. 2016-09-17 18:17:01 +02:00
LevelX2
1d4d612501 [KLD] Some card names fixed. 2016-09-17 17:01:06 +02:00
LevelX2
04ca15a3a9 Some minor fixes. 2016-09-17 16:45:53 +02:00
LevelX2
e7c5effa7f [KLD] Added 13 red cards. 2016-09-17 15:18:34 +02:00
LevelX2
c515a6d690 [KLD] Added 15 black cards. 2016-09-17 13:44:30 +02:00
LevelX2
5244363081 [KLD] Added 7 blue cards. 2016-09-17 10:17:40 +02:00
LevelX2
f9d1c3d2cc [KLD] Added new Planeswalker types. 2016-09-17 02:15:08 +02:00
LevelX2
b9953a5ca9 Merge origin/master 2016-09-17 02:08:47 +02:00
LevelX2
d3d1402fbb [KLD] Added 9 white cards. 2016-09-17 00:45:33 +02:00
Mark Langen
274bdfa33f Fix Issue #2277
* Changes the white color used to a brighter white so that it shows up on the gray background.
2016-09-16 16:40:59 -06:00
LevelX2
d7dd635bca Revert "introduced StringUtil class with .isEmpty(String input) and .isNotEmp…" 2016-09-16 23:55:54 +02:00
LevelX2
18e771ccd5 Fixed PayEnergyCost.pay to check counters amount available. 2016-09-16 22:29:59 +02:00
ingmargoudt
f1cf9e7adb introduced StringUtil class with .isEmpty(String input) and .isNotEmpty(String input), to replace str != null && str.length()>0 statements 2016-09-16 21:23:31 +02:00
LevelX2
a0e797cc5c [KLD] Added 5 red cards. 2016-09-16 15:08:03 +02:00
LevelX2
779dd35559 Merge pull request #2282 from Dilnu/master
Add token support to ZonesHandler
2016-09-16 11:10:07 +02:00
Samuel Sandeen
17d4d6c190 Handle tokens correctly in the new zone change code. 2016-09-15 19:44:32 -04:00
LevelX2
0a5a073637 * Flashback - Fixed handling of combined flashback costs (e.g. Deep Analysis). 2016-09-15 17:34:25 +02:00
LevelX2
0042dc1ad9 Some minor fixes to game log / card rules text /messages. 2016-09-15 16:10:17 +02:00
Mark Langen
577bdaea84 Fixes and additions to card rendering
* Vehicles are rendered with a vehicle background and changed P/T box color
* Kaladesh Inventions are rendered with the invention frame
* Kaladesh Inventions use the full-frame art if they detect that you have that full art downloaded instead of normal card images.
* Changed land text-box colors to be a bit more saturated to make it clearer what colors they produce
* Added mana symbol in the textbox of basic lands instead of rules text as long as they have no additional abilities.
* Fixed problem with triggered abilities on the stack showing up with a type of "??? Ability". Not sure what the real cause is but those abilities have abilityType = null, just worked around it.
2016-09-14 19:37:12 -06:00
Samuel Sandeen
91b4e024fb Remove a bit of duplicate code. 2016-09-14 19:33:17 -04:00
Samuel Sandeen
edd97587fc Add code for a few edge cases in zone change handling
Specifically this should fix the bugs that happen when tokens copy
PermanentCards.
2016-09-14 19:30:14 -04:00
LevelX2
9f199dfa39 * ZonesHandler - fixed possible null pointer exception (#2271). Cause still unclear. 2016-09-14 23:25:36 +02:00
LevelX2
14cd2dfa6d * Jeleva, Nephalia's Scourge and Knowledge Pool - Fixed a bug that created null pointer exception if card was cast from exile. 2016-09-14 22:31:04 +02:00
LevelX2
547d53a2ec [KLD] Added 5 white cards. 2016-09-14 21:51:52 +02:00
LevelX2
14b2760e99 * Fixed a bug that prevented moving tokens to other zones in some cases. 2016-09-14 20:51:03 +02:00
LevelX2
445a8a242e * Reverted the library quick fix for random because RandomUtil works now. 2016-09-14 19:02:27 +02:00
LevelX2
eae53c0cfc Merge pull request #2268 from ingmargoudt/master
replace [list].size() == 0 and [string].length() == 0 to use .isEmpty…
2016-09-14 17:15:10 +02:00
LevelX2
ce94e573e4 * Ral Zarek - Fixed target handling of ability one. 2016-09-14 17:11:18 +02:00
ingmargoudt
3128bd2b4b replace [list].size() == 0 and [string].length() == 0 to use .isEmpty() instead 2016-09-14 15:27:31 +02:00
LevelX2
3612332607 [KLD] Added Speedway Fanatic. Added tests for crew keyword. 2016-09-14 15:16:40 +02:00
LevelX2
975e530d55 * Added artifact subtype "Vehicle". 2016-09-14 13:13:57 +02:00
LevelX2
9de78b5c5f * Added artifact subtype "Vehicle". 2016-09-14 12:38:26 +02:00
ingmargoudt
e62241c3eb fix for the RandomUtil, always use .current() to get the correct thread. 2016-09-14 09:11:26 +02:00
emerald000
959eaf6dab [KLD] Added Panharmonicon. 2016-09-13 08:21:16 -04:00
LevelX2
5e7a4d265e Merge pull request #2254 from royk/add-deck-support
Add support for .dek files
2016-09-13 11:56:46 +02:00
emerald000
2da90bab93 [KLD] Added 12 cards.
Aether Hub; Cloudblazer; Cultivator's Caravan; Depala, Pilot Exemplar; Dynavolt Tower; Kambal, Consul of Allocation; Key to the City; Rashmi, Eternities Crafter; Saheeli Rai; Smuggler's Copter; Unlicensed Disintegration and Voltaic Brawler.
2016-09-12 08:58:16 -04:00
Roy Klein
fbaf24228b Fix typo 2016-09-12 09:19:32 +02:00
Roy Klein
1e39c99914 Add support for .dek files 2016-09-11 23:34:17 +02:00
spjspj
793fc13226 Merge pull request #2251 from spjspj/master
spjspj - Implement Paradoxical Outcome (KLD)
2016-09-12 00:15:19 +10:00
Samuel Sandeen
3ac80b45f3 Merge branch 'magefree/master' 2016-09-10 17:47:40 -04:00
Samuel Sandeen
cdff9bae78 Add Event to the signature of updateZoneChangeCounter.
This is required to Implement Skullbriar, the Walking Grave
2016-09-10 17:45:26 -04:00
LevelX2
d0a570aeee Quick fix to get random shuffling. 2016-09-10 19:39:59 +02:00
LevelX2
bb8326d46b XMage 1.4.15v0 2016-09-10 12:31:18 +02:00
LevelX2
79f8617cd3 Some minor changes. 2016-09-10 11:44:52 +02:00
Samuel Sandeen
ac6a289275 Merge branch 'magefree/master' 2016-09-08 19:12:19 -04:00
LevelX2
21baa14404 * Fixed a problem with token P/T reset (fixes the problem with Tree of Perdition and Soul Separator). 2016-09-08 17:15:40 +02:00
spjspj
5bba477147 spjspj - undo changes to SweepEffect 2016-09-09 00:45:47 +10:00
spjspj
1c49100d75 spjspj - Implement Paradoxical Outcome (KLD) - shroud wasn't being followed 2016-09-08 17:31:42 +10:00
spjspj
8cd3ec1135 spjspj - Implement Paradoxical Outcome (KLD) (done with addition to SweepEffect) 2016-09-08 17:09:47 +10:00
emerald000
67f29124f8 [KLD] Added 15 artifacts.
Aetherflux Reservoir, Aetherworks Marvel, Animation Module, Cogworker's Puzzleknot, Decoction Module, Demolition Stomper, Fabrication Module, Fireforger's Puzzleknot, Fleetwheel Cruiser, Ghirapur Orrery, Glassblower's Puzzleknot, Inventor's Goggles, Metalspinner's Puzzleknot, Ovalchase Dragster and Skysovereign, Consul Flagship.
2016-09-08 02:10:26 -04:00
Mark Langen
8d90f4558d Merge pull request #2234 from stravant/master
Characteristic-Based rendering initial release completed unless further bugs come up before then.
2016-09-07 23:16:10 -06:00
Samuel Sandeen
80da09471d Merge remote-tracking branch 'magefree/master' 2016-09-07 23:31:38 -04:00
Samuel Sandeen
c33a731a4a Refactor the core zone change code to use a common code path. 2016-09-07 23:31:26 -04:00
Samuel Sandeen
b87f91fd97 Fix a Typo 2016-09-07 21:19:36 -04:00
spjspj
8342d03ac9 spjspj - Set Token Descriptor 2016-09-07 21:52:52 +10:00
Mark Langen
f0a1938b3e Full art Land rendering
* Added "frameStyle" tagging to relevant full art lands (ZEN, BFZ, UNG, UHG)

* Added support for rendering based off of frameStyle

* Outstanding bug that frameStyle doesn't seem to be replicated exactly properly
2016-09-07 02:20:51 -06:00
emerald000
df2782fdb6 [KLD] Basic implementation of energy counters. Added Woodweaver's Puzzleknot.
Better display of energy counters would be preferred.
2016-09-07 01:07:21 -04:00
Mark Langen
b549dfe0dc Added frameStyle Characteristic for cards
* Added FrameStyle Enum containing a list of styles that cards can be rendered in.

* Added getFrameStyle() getter to Card interface.

* Implemented getFrameStyle() for various concrete implementations of Card.
2016-09-06 21:50:04 -06:00
emerald000
5c5d6365d8 [KLD] Implemented Crew. Added 2 cards using it. 2016-09-06 03:18:47 -04:00
emerald000
90a55eddb7 [KLD] Implemented Fabricate. Added 3 cards using it. 2016-09-06 02:26:55 -04:00
emerald000
bc0f53973d Added an easier way to put custom text on buttons in a chooseUse prompt. 2016-09-06 02:07:59 -04:00
fireshoes
d70f424d1b [KLD] Added 9/5 spoilers to mtg-cards-data.txt and implemented a few cards. 2016-09-06 00:27:44 -05:00
Samuel Sandeen
34846170c4 Remove an unused argument to Player.putInGraveyard 2016-09-05 11:47:52 -04:00
Samuel Sandeen
db3c2e9d8c Clean up an inconsistency in ZoneChangeEvent handling
Some places set a bit on the ZoneChangeEvent if a permanent was meant
to enter the battlefield tapped but only MeldCard ever read that bit to
determine whether things should come into play tapped.
2016-09-05 09:51:32 -04:00
ingmargoudt
e2a479255a refactor : removed all instances of new Random() and replaced with RandomUtil for a ThreadLocal randomizer 2016-09-05 15:03:47 +02:00
Samuel Sandeen
434be545f7 Merge remote-tracking branch 'magefree/master'
# Conflicts:
#
Mage/src/main/java/mage/abilities/condition/common/SourceHasSubtypeCondi
tion.java
#	Mage/src/main/java/mage/game/permanent/PermanentToken.java
2016-09-03 20:06:33 -04:00
Samuel Sandeen
ef5ed5256a Clean up the deprecated moveCards methods in Player 2016-09-03 20:04:12 -04:00
Samuel Sandeen
bec11804f5 Make the handling of counters more consistent.
This dramatically reduces the code duplication around counters handling.
2016-09-03 16:52:41 -04:00
Styxo
adf95f1db5 Merge origin/master 2016-09-03 22:40:18 +02:00
Styxo
66f785dd71 Fixed AddCountersTargetEffect 2016-09-03 22:34:45 +02:00
Samuel Sandeen
148f633672 Make the Counters API for card and permanent consistent. 2016-09-03 10:33:54 -04:00
LevelX2
c1d632be18 Merge origin/master 2016-09-03 15:26:46 +02:00
LevelX2
ab2399cbe7 * Fixed that equipments with restrictions (e.g. Gate Smasher) were not unequipped if the equipped permanent did no longer fulfill the restrictions(fixes #2212). 2016-09-03 15:26:17 +02:00
Styxo
f5c2a51be1 Merge pull request #2219 from Styxo/master
Refactored some things
2016-09-03 12:58:47 +02:00
Styxo
23ac076a44 Added CountersCount 2016-09-03 12:47:46 +02:00
Styxo
2aec9f2ca7 Refactored counters on permanents counting
Added BecomeMonstrousTriggeredAbility 
Added Target and Filter class for creature an opponent controls
2016-09-03 12:38:58 +02:00
LevelX2
cb91c5b9aa Merge pull request #2216 from stravant/master
Full characteristic-based card rendering for cards
2016-09-03 09:13:49 +02:00
Samuel Sandeen
85dc15c5dc Merge remote-tracking branch 'magefree/master' 2016-09-02 19:44:51 -04:00
Mark Langen
463576dbd0 Merged up to current 2016-09-01 15:44:14 -06:00
Mark Langen
818efb8535 * Textual set symbols no longer displayed if set symbol image doesn't exist.
* Fixed a small graphical mispositioning in rendering of keyword abilities.
* Added an option to hide set symbols entirely when rendering.
* Fixed flip walkers like Arlin Kord showing a "0" loyalty on their back face (when they should have no loyalty there).
* Removed some log files I accidentally committed.
* Fixed a bug in tokens, where they are missing their expansion symbol of they are created by another token
* Fixed the the new Rendering based CardPanel not returning the correct Image through getImage (resulting in a poor quality image in the card preview window)
2016-09-01 15:00:46 -06:00
spjspj
0f043d480d spjspj - Implement new method for image generation of tokens. 2016-09-01 17:11:12 +10:00
Mark Langen
d33f8a636e Most obvious bugs ironed out. Ready for PR. 2016-08-31 23:37:31 -06:00
Mark Langen
d5415d2d04 Working Card Rendering 2016-08-31 04:43:28 -06:00
Styxo
cde96864d5 Merge pull request #2209 from Styxo/master
Refactored multiple CreatureCondition classes into one class
2016-08-29 20:41:56 +02:00
Styxo
6518b56d9d Refactored multiple CreatureCondition classes into one CreatureCountCondition class 2016-08-29 13:04:40 +02:00
Samuel Sandeen
282443c231 Add Subtype to the CardAttribute Framework
This is a massive change. I’ve refrained from unrelated refactoring
when possible but there are still a lot of changes here.
2016-08-28 17:30:10 -04:00
Styxo
42669b9c01 Merge pull request #2200 from Styxo/master
Refactored cards that use similar abilities
2016-08-28 16:56:08 +02:00
Styxo
b29c70a3c7 Refactored cards that use similar abilities 2016-08-28 16:39:33 +02:00
Eric McVicker
ebeb20681e No spells cast last turn transform fix to not transform turn 1 #2188 2016-08-23 20:25:28 -05:00
drmDev
292105f60e [CN2] Stunt Double and Subterranean Tremors implemented. 2016-08-21 15:00:41 -04:00
LevelX2
539b03bd1d Xmage 1.4.14v0 2016-08-13 10:14:38 +02:00
LevelX2
4bfac31370 * Archangel Avacyn - Fixed check for source object of triggered ability. 2016-08-13 09:38:28 +02:00
LevelX2
46566361e7 * Fixed a bug that if a copy token creature of a transformed creature was created (e.g. Mirror Mockery), the front side instead of the transformed side was copied. 2016-08-12 15:42:50 +02:00
LevelX2
aa58c76ba9 * Meld - Fixed a bug that produced an exception if while the meld ability was on the stack, one of the permanents to meld left the battlefield meanwhile. 2016-08-12 12:12:10 +02:00
LevelX2
6f89a67f68 * Some more changes to return boolean for addCounters. 2016-08-11 19:14:18 +02:00
LevelX2
318a0745f0 Merge origin/master 2016-08-11 17:41:57 +02:00
LevelX2
058d25fa56 * Added return code to addCounter method. 2016-08-11 17:40:51 +02:00
spjspj
f46c06066a spjspj - Implement Guardian Beast (ARN) 2016-08-11 23:03:22 +10:00
LevelX2
c31bf97440 * Fixed some problems if a creature has multiple madness abilities. 2016-08-09 13:14:29 +02:00