Commit graph

51 commits

Author SHA1 Message Date
ingmargoudt
594ffa2754 rewrote some streams and optionals 2017-04-01 22:45:40 +02:00
ingmargoudt
6f8f10fcc3 move static function to CardImpl, and other api fixes 2017-03-30 20:09:47 +02: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
Jeff
c4dc0222d8 - Fixed Indomitable Creativity. Bug #3029 2017-03-27 16:42:32 -05: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
vraskulin
d93061c0bc Equals should be compared with == but not equals() 2017-03-22 14:50:50 +03: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
Achilles
31ba751c66 - Fix for Spellskite dealing with a targeted source spell/ability that has multiple targets. 2017-03-07 22:14:18 -06:00
Justin Herlehy
8cfe66e29c Fix Ichorid to set notTarget flag.
Fixes issued #2906
2017-03-04 16:20:17 -08:00
ingmargoudt
d01aed42ed change enum equals to == 2017-03-01 15:05:44 +01:00
vraskulin
11dc1e10f1 Few lambda's and removed explicit type from creating lists and hashmaps 2017-02-28 13:46:57 +03:00
vraskulin
0557b5e89c list.size > 0 changed to !list.isEmpty
We care about if it's empty or not, not about it's size
2017-02-06 14:32:51 +03:00
vraskulin
f60ebfbb1f All 1-character strings converted to primitives
"b" + "r" now changed to 'b' + 'w'.  It's more straight-forward, and may cause perfomance improvements - character primitives allocation is faster and less expensive than string creation.
2017-02-06 14:32:51 +03:00
LevelX2
034ef22468 * Fixed PreventDamageByTargetEffect to handle delayed spell damge (fixes #2822). 2017-01-30 21:19:17 +01:00
igoudt
ac8962cb29 replaced enum comparison from equals to == 2017-01-11 09:53:16 +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
LevelX2
2162fab114 * Fixed a problem of AI target handling (e.g. for Precursor Golem) 2017-01-01 14:56:34 +01:00
vraskulin
f04ba151f7 Refactoring
See github line by line comments in 'File changed'
2016-12-29 16:49:12 +03: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
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
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
Neil Gentleman
43b0d4ef97 remove redundant this.targetName = filter.getMessage();
not necessary when same code exists in superclass constructor
2016-10-30 23:47:01 -07:00
spjspj
712f19f4e6 spjspj - Update all TargetOpponentsChoicePermanent cards with whether they have to target an opponent. (There was a NPE when an opponent had hexproof) 2016-10-21 00:28:41 +11:00
spjspj
b6661ae79d spjspj - Add Evangelize (TSP) - Also possibly a fix for Preacher which could target Narset, Enlightened Master when it shouldn't be able to 2016-10-20 16:58:18 +11:00
fireshoes
89dd981075 Merge 2016-10-17 23:45:47 -05:00
LevelX2
e1dc3d4ea1 [CN2] Adding Daretti, Ingenious Iconoclast. 2016-09-26 18:01:17 +02:00
LevelX2
c9bb0be016 Reworked selected modes handling. That fixed the Subtle Strike targeting problem. 2016-09-24 01:12:01 +02:00
Styxo
8485df8cb7 Added Blessed Wind and few refactors 2016-09-20 00:17:56 +02:00
Dilnu
41c1540f45 Fix a couple typos 2016-09-18 20:16:56 -04:00
ingmargoudt
3128bd2b4b replace [list].size() == 0 and [string].length() == 0 to use .isEmpty() instead 2016-09-14 15:27:31 +02: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
148f633672 Make the Counters API for card and permanent consistent. 2016-09-03 10:33:54 -04: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
Styxo
b29c70a3c7 Refactored cards that use similar abilities 2016-08-28 16:39:33 +02:00
LevelX2
88d66784df * Crop Sigil - Fixed that it can't be activated without both a creature and land in the graveyard (fixes #2079 ). 2016-07-15 14:25:25 +02:00
LevelX2
773decf593 * Fixed a problem with the AI handling of TARGETED event (e.g. Silverfur Partisan not triggering - fixes #1916). 2016-04-30 11:42:01 +02:00
emerald000
9d380331d7 Removed choices that should not be made while casting of a spell.
For example: color choices for protection abilities.
2016-04-28 01:32:48 -04:00
Kenny Wottrich
f3c83d54f5 Remove Unused Imports
Delete unused java imports that cause compiler warnings
2016-04-24 19:50:29 -05:00
emerald000
8d28883f7c Added Confusion in the Ranks. 2016-04-15 14:53:19 -04:00
Fenhl
430ae503c7 Change all line endings to LF 2016-04-14 16:18:01 +00:00
LevelX2
18c48d6b4e [SOI] Added all missing green cards. 2016-03-26 18:22:40 +01:00
LevelX2
1c3c8cafe6 * Eldrazi Mimic - Fixed that the P/T was not set if the triggering permanent left the battlefield meanwhile. 2016-02-13 12:09:08 +01:00
LevelX2
81af372bc1 Fixed some problems with possible ConcurrentModificationExceptions and some minor changes. 2016-01-31 23:23:09 +01:00
Skyler Sell
5155f9024e Issue #1311: Cards with 'another target creature or player'
AnotherTargetPredicate: Use MageItem instead of MageObject so it will
now also work with Player objects.

TargetCreatureOrPlayer: Add constructor specifying a filter object, modify
methods to actually use the creature and player filters.

Arc Trail and Cone of Flame: Use AnotherTargetPredicate to specify
multiple different targets
2016-01-27 20:08:06 -08:00
LevelX2
d7f82ad0c6 Added Tears of Rage. 2016-01-16 19:21:15 +01:00
LevelX2
0157bf0494 * Fixed that the name of a face down spell on the stack was shown in the game log if the spell was targeted by another stack object. 2015-12-14 22:03:00 +01:00
emerald000
3dcdd7f046 Removed obsolete Zone parameter in CardsImpl constructors. 2015-12-04 00:34:10 -05:00