Commit graph

1051 commits

Author SHA1 Message Date
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
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