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
vraskulin
a15220d51e
Bugfixes with != instead of equals and default toString calls
2017-02-15 19:52:20 +03:00
vraskulin
752392fc46
Functional interfaces should be annotated as functional interfaces
2017-02-15 19:23:12 +03:00
Plopman
cafd002634
Fix {Q} and Thousand year elixir. Fix #2349
2017-02-14 23:04:57 +01:00
ingmargoudt
26e16be772
fix counters
2017-02-13 21:45:37 +01:00
ingmargoudt
3a152ab3d6
rewrote enum comparisons, iterator to removeIf, added some stream and filters
2017-02-11 22:37:00 +01:00
Jeff
fc3ecdf8d0
- Added Auratouched Mage and test suite.
2017-02-10 10:15:56 -06:00
Jeff
1e82f0750a
Fixed FlashbackTest and made modifications to CascadeAbility allowing it to pass its test suite.
2017-02-09 10:20:21 -06:00
spjspj
0ff7ff686d
Merge pull request #2848 from spjspj/master
...
Allow lands with AnyColorManaAbility to be have automatic payments done
2017-02-09 18:26:14 +11:00
spjspj
a08816123c
Allow lands with AnyColorManaAbility to be have automatic payments done
2017-02-09 18:20:51 +11:00
LevelX2
166c6a3590
* Sunforger - Fixed activated unattach ability.
2017-02-06 22:55:52 +01:00
LevelX2
b6a66f1aba
Fixed syntax error of cascadeAbility.
2017-02-06 22:02:44 +01:00
LevelX2
b8cc0120cb
Merge origin/master
2017-02-06 21:21:16 +01:00
vraskulin
1e64ecfe07
Merge remote-tracking branch 'fork/master'
2017-02-06 14:36:24 +03:00
vraskulin
076045d862
Fixed merge conflict
2017-02-06 14:36:09 +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
vraskulin
31589778ca
Try/finally refactored to try with resources
2017-02-06 14:32:11 +03:00
kubikrubikvkube
6a114ac902
Merge branch 'master' into master
2017-02-06 14:29:59 +03:00
LevelX2
b3597d64a0
Merge origin/master
2017-02-05 13:54:24 +01:00
LevelX2
b86acbe0da
Some minor fixes.
2017-02-05 13:53:36 +01:00
spjspj
72f4778506
Merge pull request #2837 from spjspj/master
...
Add Canadian Highlander Deck/Game implementation.
2017-02-05 23:25:53 +11:00
spjspj
c98bf163be
Add Canadian Highlander Deck/Game implementation. Also implements the double-mulligan-on-6,5,4,3,2,1 rule.
2017-02-05 23:23:51 +11:00
LevelX2
d71ebdcea9
Merge origin/master
2017-02-05 11:41:20 +01:00
LevelX2
3525e46514
XMage 1.4.21V2
2017-02-05 11:39:43 +01:00
spjspj
9fe53e52c2
Merge pull request #2836 from spjspj/master
...
Add field for server console
2017-02-05 14:54:28 +11:00
spjspj
fa97e4647e
Add field for server console
2017-02-05 14:11:05 +11:00
LevelX2
ff6d79829e
* Fixed a bug that damage was wrongly still assigned to players during combat that already left the game.
2017-02-04 23:56:03 +01:00
LevelX2
1d404ee57f
Fixed a problem that the TAPPED_FOR_MANA event was not always send ( fixed #2826 ).
2017-02-04 17:56:04 +01:00
LevelX2
0dacf2a6fa
* Fixed that the cascade converted mana costs comparison did not work correctly with split spells.
2017-02-04 14:26:17 +01:00
LevelX2
227143aacf
* Entwine - Fixed that for spells cast without mana costs entwine could wrongly be used for free.
2017-02-04 14:24:30 +01:00
LevelX2
067b72dcce
* Added test.
2017-02-03 21:36:33 +01:00
LevelX2
a5299e3a30
* Fixed a bug that card art of cards with multiple arts (e.g. FEM) were not displayed during game play.
2017-02-03 20:45:47 +01:00
emerald000
f4c9ac53db
Added Battlefield Scrounger, Death Spark and Rasputin Dreamweaver.
2017-01-31 11:06:49 -05:00
LevelX2
9ec65dc480
* Green Sun's Zenith - Fixed a bug of the used Search effect (also affecting the other colors).
2017-01-31 16:20:21 +01:00
LevelX2
034ef22468
* Fixed PreventDamageByTargetEffect to handle delayed spell damge ( fixes #2822 ).
2017-01-30 21:19:17 +01:00
LevelX2
0a1356d40e
* Fixes to test and fix for issue #2816
2017-01-29 11:16:04 +01:00
LevelX2
2cf15830d7
* Some fixes to Hivestone and BecomesSubtyoeAllEffect.
2017-01-29 11:15:09 +01:00
LevelX2
e9d46db772
* Scrapheap Scrounger - Fixed that the exile cost was not mandatory.
2017-01-28 12:10:38 +01:00
vraskulin
fc54c0156c
list.size > 0 changed to !list.isEmpty
...
We care about if it's empty or not, not about it's size
2017-01-27 16:05:11 +03:00
vraskulin
0de8bd2f70
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-01-27 15:57:26 +03:00
goblin
7b40803b4f
fix the issue
...
Alter the constructor to create the object with setTargetPointer, like
the other constructors.
I hope nothing relies on it being false. Tests don't show anything breaking.
2017-01-27 13:26:31 +01:00
vraskulin
7b35e25347
Try/finally refactored to try with resources
2017-01-26 20:58:40 +03:00
LevelX2
082210a4bd
Xmage 1.4.21V1
2017-01-25 00:14:05 +01:00
LevelX2
ca0485075c
Merge pull request #2810 from Galatolol/master
...
Added 5 cards
2017-01-24 23:12:22 +01:00
LevelX2
cec9d00a59
* Fixed that non creature spells with morph could not be countered with Remove if cast with morph.
2017-01-24 23:08:47 +01:00
LevelX2
8d06c23602
* Selvala, Explorer Returned - Fixed that library top cards were revealead without using the mana ability. Possible mana from this source is no longer calculated for possible mana pool. Tapping for man can no longer be undone.( #2191 ).
2017-01-24 16:25:26 +01:00
LevelX2
0014c7dcc5
* Fixed some possible null pointer exceptions.
2017-01-22 22:46:14 +01:00
LevelX2
719f88b3c8
* Fixed possible IndexOutOfBoundsException during combat.
2017-01-22 22:27:39 +01:00
LevelX2
fdd28cde4b
* Possibility Storm - Fixed a problem with split card moving.
2017-01-22 22:04:50 +01:00
Galatolol
9cbe82299c
Fixed AddCardSubtypeAllEffect
2017-01-22 11:40:52 +01:00
Galatolol
8969157ce8
Added 5 cards
2017-01-21 14:26:04 +01:00
LevelX2
fe4abd26c9
Fixed a bug of the Revolt ability word that prevented that ot triggered always correctly.
2017-01-21 01:33:46 +01:00
LevelX2
b1a51ce7cf
* Lightning Runner - Fixed a bug of the optional untap and add combat phase effect.
2017-01-21 01:10:37 +01:00
LevelX2
5fe25b0af7
* Fixed some problems with set icon download and displaying.
2017-01-21 00:51:31 +01:00
LevelX2
d68ff964fb
* Gonti’s Machinations - Fixed that it triggered more than once per turn.
2017-01-20 00:34:45 +01:00
LevelX2
16648e53d1
* Maelstrom Nexus - Fixed that cascade wrongly triggered not only for the first spell cast.
2017-01-20 00:15:27 +01:00
Ludwig.Hirth
a175ac3a1d
Merge origin/master
...
Conflicts:
Mage.Sets/src/mage/cards/c/CogworkAssembler.java
2017-01-19 17:01:34 +01:00
Ludwig.Hirth
a3659826a8
* Toxin Sliver - Fixed not corretly working triggerd ability.
2017-01-19 16:59:58 +01:00
Styxo
d690926cef
[AER] Refactored some similar abilities and effects
2017-01-18 14:25:58 +01:00
LevelX2
6625bf86be
Xmage 1.4.21V0
2017-01-15 17:44:02 +01:00
LevelX2
b7c0c1e8b4
* Mindbreak Trap - Fixed a problem with exiling copied (e.g. by Storm)spells.
2017-01-15 16:04:45 +01:00
LevelX2
75cbfdf3b9
* Some changes to EnterTheBattlefield events, some other fixes ( fixes #2765 ).
2017-01-15 15:22:33 +01:00
LevelX2
78cff4d24f
* Fixed Flailing Drake and test.
2017-01-14 15:47:33 +01:00
LevelX2
c996454486
* Duel Commander - Removed commander damage logic.
2017-01-14 15:35:22 +01:00
LevelX2
2d13deff3a
* Vorinclex, Voice of Hunger - FIxed a bug that id did not work correctly with some conditional land mana sources (e.g. Gemstone Caverns).
2017-01-14 12:25:07 +01:00
LevelX2
6a70f53f1a
Merge pull request #2777 from Galatolol/master
...
Added 4 cards
2017-01-14 00:15:32 +01:00
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