Commit graph

1123 commits

Author SHA1 Message Date
LevelX2
68ff09c219 Revert "Mana updates" 2015-11-19 22:59:15 +01:00
LevelX2
f4871fe489 Merge pull request #1375 from poixen/mana_cleanup
Mana updates
2015-11-19 22:37:14 +01:00
poixen
05b841577a added subtraction logic to enough()
+ added subornation logic to enough(). We do not want to mix the public
subtract() call with this method. As doing so would mean that either a)
subtraction can go below 0 (this should not happen) or b) we break this
function with exceptions. This is a work around for these scenarios.
2015-11-19 17:42:59 +01:00
poixen
2c617a6aaf Mana updates
+ calling subtraction will now throw an exception if you try and use
more mana than is available. This is better than setting it to 0.
Setting to 0 impose that you should still be allowed to perform the
action.
+ updated subtraction test to check for exception
+ subtractionCost() will not allow using mana that is not available,
same as subtract()
2015-11-19 17:09:40 +01:00
LevelX2
ec7c888044 Some fixes to put token onto battlefield handling of cards. Some minor reworks. 2015-11-19 15:52:45 +01:00
LevelX2
7bb5d1bb43 Merge pull request #1374 from poixen/mana_cleanup
Mana Class Overhaul
2015-11-19 14:37:39 +01:00
Quercitron
486d547f5e Fix Swiss pairing for the case when some players have left the tournament 2015-11-19 13:18:43 +03:00
poixen
1f5638539f Class Overhaul
+ added javadoc
+ added final to method variables that should not be mutated
+ Mana can no longer be initialised with minus values
+ added null assertions
+ renamed ‘addXXX’ to ‘increaseXXX’. Add implies that you are able to
add variable amounts.
+ subtraction can no longer allow minus values.
+ removed unused state
+ refactored classes use renamed/removed mana calls
+ added comment to contains(), needs to be looked into?
+ Added validation to setting of mana. Can no longer be set to minus
values. Will log if an attempt is made
+Added comment to static mana, this is unsafe.
2015-11-19 09:53:52 +01:00
Quercitron
05a789cd8b Use approach with minimal weight matching to determine Swiss tournament pairings 2015-11-19 02:58:02 +03:00
LevelX2
7044e58231 [C15] Added Scourge of Nel Toth. 2015-11-18 17:39:32 +01:00
LevelX2
70bce1c082 * Void Winnower - Fixed that the check for even casting costs did not work correctly. 2015-11-14 11:24:26 +01:00
LevelX2
d3000da3a3 * Void Winnower - Fixed that the check for even casting costs did not work correctly. 2015-11-14 11:14:50 +01:00
LevelX2
50b5602459 * Conflagrate - Fixed that the damage amount could be calulated if cast by flashback. 2015-11-14 10:01:13 +01:00
LevelX2
1335d58e77 * Collapsing Borders - Fixed that it did not give life to players. 2015-11-14 02:33:24 +01:00
LevelX2
4711e0cf99 Changed ability handling of modal spells to be able to select the same mode multiple times with different targets. 2015-11-14 01:56:56 +01:00
LevelX2
431d0005f2 Updated modes to handle selection of modes multiple times (not working yet if targets included). 2015-11-08 20:07:02 +01:00
LevelX2
6f2d3a18c0 [C15] Added Myriad keyword. 2015-11-08 11:51:36 +01:00
LevelX2
f3e8a93316 * Renegade Krasis - Fixed that check if Renegade Krasis was evolved did not always work correctly. 2015-11-07 21:21:03 +01:00
LevelX2
b1c3d690f5 * Fixed some ability and subtype removing effects (fixes #1352). 2015-11-07 12:29:31 +01:00
LevelX2
27ae613ce8 * Fixed handling of zoneChangeCounter of PermanentCard (fixes #1353). 2015-11-06 12:28:58 +01:00
LevelX2
3de7ff6808 * Some rework of card moving after spell countering. 2015-11-05 00:37:30 +01:00
LevelX2
1139495fd7 * SetPowerToughnessSourceEffect - Set the correct sublayer to use (fixes #1354). 2015-11-04 22:31:35 +01:00
LevelX2
af18f95bba Minor changes. 2015-11-04 17:16:45 +01:00
LevelX2
54d28550b4 Added a test. 2015-11-04 12:28:48 +01:00
LevelX2
2e49a74aab * Fixed test with Flashback and converge. 2015-10-31 10:32:45 +01:00
LevelX2
3beb5568c4 * Karn Liberated - Fixed that commanders were not returned to command zone after game reset. 2015-10-31 00:55:12 +01:00
LevelX2
e0c1492f88 * Fixed a problem that the AI was locked if a attack fee has to be paid but the AI was not able to pay the costs. 2015-10-30 22:34:42 +01:00
LevelX2
2153d5ccf5 * Fixed that for spells cast with flashback values calculated from the paid mana (e.g. Converge) did not work correctly. 2015-10-30 00:30:53 +01:00
LevelX2
d79776e589 * Added some tests. 2015-10-28 17:05:58 +01:00
Neil Gentleman
0c988de9fb fix Impelled Giant 2015-10-27 20:24:57 -07:00
LevelX2
5c31b03c00 * Fixed a problem that ability controller of replacement effects for cards entering the battlefield were not changed early enough (e.g. causing problem if putting Canopy Vista of opponent with Oblivion Sower onto th ebattlefield). 2015-10-27 17:55:38 +01:00
Toby Lawrence
d42e5fed78 Razorverge Thicket should enter untapped only if you control two or less lands. 2015-10-25 17:58:20 -04:00
LevelX2
f14cbb7f36 * Fixed a bug with removing spells from stack (e.g. Split Second had some problems) fixes #1333. 2015-10-23 18:25:36 +02:00
LevelX2
92bcd0d522 * Changed some more card movement handling. 2015-10-22 23:02:07 +02:00
LevelX2
2aaea46dc6 * Fixed that the exile and return effect of the flip planeswalker did not always work correctly. 2015-10-22 15:38:50 +02:00
LevelX2
af67e27bcd * Alesha, Who Smiles at Death - Fixed that the move card to battlefield worked not correctly. 2015-10-22 15:37:58 +02:00
LevelX2
4629366ae7 * Fixed that spells without mana costs but suspend could be cast with no mana (e.g. Ancestral Vision). 2015-10-21 20:16:52 +02:00
LevelX2
d906fc8c00 * Fixed that damage redirection to planeswalker did cause an exception. 2015-10-21 15:35:58 +02:00
LevelX2
d20bbcfe0b * Fixed that permanents brought onto battlefield by search abilities were always tapped. 2015-10-21 15:14:20 +02:00
LevelX2
701a722904 * Fixed some redirect effect sthat were implemented as prevention effects (fixes #1216). 2015-10-20 22:58:24 +02:00
LevelX2
d58288da6d Some changes to RedirectionEffect class. Fixed that Harm's Way and Shaman en-Kor prevented the damage instead of only redirecting the damage. 2015-10-20 17:16:13 +02:00
LevelX2
606bf4d6e0 * Fixed that it was not possible to play spells without costs with alternative costs (e.g. Ancestral Visions with Omniscience). Fixed that playing spells with alternate costs did also remove additional costs (e.g. card with entwine cast with Omniscience). 2015-10-20 00:44:32 +02:00
LevelX2
7c35a69360 * Fixed a bug that if copied spells should be shuffled into the library the original spell was removed from the stack. 2015-10-19 22:36:28 +02:00
Neil Gentleman
3817118bc0 Fix 'Of', 'By' and 'The' in card names 2015-10-19 00:44:26 -07:00
LevelX2
415700ccb2 * Some more changes for rework of ENTERS_THE_BATTLEFIELD event and card movement. 2015-10-18 23:33:23 +02:00
LevelX2
4216fbab8c * Some more changes for tework ENTERS_THE_BATTLEFIELD event for replacement effects. 2015-10-18 11:11:48 +02:00
LevelX2
d145885d2d * Sylvan Library - Fixed that a player that controlled a Sylvan Library from another player was not forced to play life for cards he kept from Sylvan Library's triggered ability (fixes #1307). 2015-10-18 10:21:12 +02:00
LevelX2
4243a1d3a3 Merge origin/master
Conflicts:
	Mage.Sets/src/mage/sets/gatecrash/MasterBiomancer.java
2015-10-17 16:33:05 +02:00
LevelX2
59ef2a2889 * Reworked ENTERS_THE_BATTLEFIELD event for replacement effects. Some rework to card movement. 2015-10-17 16:30:28 +02:00
LevelX2
597d530a37 Some minor changes. 2015-10-16 15:03:40 +02:00
LevelX2
d264dd83e1 * Replaced some custom card effects. Updated enters battlefield replacement effects for new handling. 2015-10-15 23:47:06 +02:00
LevelX2
046da0f5d1 * Some changed to card moving (not finished) 2015-10-15 08:32:58 +02:00
LevelX2
52d0adcac1 Fixed some problems with UUID comparing and some problems with card moving. 2015-10-14 17:54:55 +02:00
LevelX2
e166018027 * Fixed that continuous effects were not yet applied to lands entering the battlefield (preventing Prismatic Omen and Valakut the Molten Pinnacle combo to work). 2015-10-13 22:35:50 +02:00
LevelX2
00f48b005d Added test. 2015-10-12 23:50:29 +02:00
LevelX2
288a1ec02c * Oath of Lieges - Fixed target handling (fixes #1312). 2015-10-12 23:10:16 +02:00
LevelX2
303362fa12 * Paradox Haze - Fixed that check if a step is the first upkeep step of a turn did not work always correctly (fixes #1313). 2015-10-12 17:35:04 +02:00
LevelX2
aa525bf0d2 Merge origin/master 2015-10-12 09:12:22 +02:00
LevelX2
8dd9fbea40 Conspire - The player is now asked to use conspire only if he is able to pay the tap costs. 2015-10-11 23:56:29 +02:00
LevelX2
981a27ccbf * Fate transfer - Fixed that +1/+1 or -1/-1 counters on target permanent were not applied. 2015-10-11 18:13:14 +02:00
LevelX2
8b8097878c * Reworked/Cleaned card movement handling. 2015-10-11 03:52:38 +02:00
LevelX2
819d341fbb * Nissa, Sage Animist - Added test for +1 ability. 2015-10-09 14:55:39 +02:00
LevelX2
987280c4e7 * Blizzard Specter - Fixed that the seond mode (discard) did not work. 2015-10-09 14:22:21 +02:00
LevelX2
d8cf0d7a4b Fixed that land enchantments that caused the enchanted land to become a basic land type removed wrongly other card types than Land and non basic land subtypes (e.g. Spreding Seas enchanting animated Blinkmoth Nexus). 2015-10-09 00:13:41 +02:00
LevelX2
cb250a065a Fixed that triggered abilities from sacrificed permanents did also trigger if the permanent was face down before the sacrifice. 2015-10-07 17:47:25 +02:00
LevelX2
f24a1b3898 * Fixed check of dies attched triggered abilities not always triggering if attachment and attached object went to graveyard at the same time. 2015-10-03 19:23:58 +02:00
LevelX2
85f0cc6bb3 Fixed variable remove counter costs to work also correctly if X=0 (e.g. Retribution of the Ancients and Willbreaker). 2015-10-03 18:22:14 +02:00
LevelX2
f6ec543b1b TestPlayer fixed that target events created by RestPlayer are reset back if ability activation failed. 2015-10-03 18:20:59 +02:00
LevelX2
7b68604471 Some changes/fixes to conspire ability. 2015-10-03 13:33:22 +02:00
emerald000
435eb49b58 Added missing Licids + tests (including 2 failing tests). 2015-10-02 23:38:11 -04:00
LevelX2
63c6aa226a * Spellskite - Fixed a bug that wrong log message was written if target was chnaged from a player to spellskite. 2015-10-01 22:01:49 +02:00
LevelX2
4b41628032 * Added test. 2015-09-30 16:58:03 +02:00
LevelX2
8044940a97 * Fixed a bug that if all targets (if targets were set) of a spell with an up to target definition (e.g. Adverse Conditions) became illegal the spell did not fizzle as it should. 2015-09-30 00:53:33 +02:00
LevelX2
0d755b3c89 Some minor changes. 2015-09-29 17:37:51 +02:00
LevelX2
6cc2ac0e70 * Zada, Hedron Grinder - Fixed a bug with checking and copying modal spells. 2015-09-28 19:27:51 +02:00
LevelX2
0680560225 * Compost - Fixed that it triggered for all cards going to opponents graveyard (instead of only black cards). 2015-09-28 15:14:50 +02:00
LevelX2
7650f53dee * Rosheen Meanderer - Fixed that the created conditional mana could only be used for spells. 2015-09-27 10:29:30 +02:00
LevelX2
9e1111748d * Enslave - Fixed that the set source of the damge was wrong. 2015-09-27 09:23:40 +02:00
LevelX2
f22fb380b7 * Reaper of Sheoldred - Fixed that damage was sometimes dealt to Reaper of Sheoldred controller. 2015-09-27 01:21:47 +02:00
LevelX2
46fa935172 * Emrakul, the Aeons Torn, Ulamog, the Infinite Gyre, Kozilek, Butcher of Truth - Fixed that the shuffle graveyard to library was wrongly done for the controller of instead the owner. 2015-09-27 00:22:51 +02:00
LevelX2
822528d05c * Splice onto Arcane - Fixed that an arcane spell with no targets did not fizzle if a targeted spell was spliced with it that has no more legal targets on resolution (so all targets of the spell were illegal). 2015-09-21 17:57:27 +02:00
LevelX2
b2ff7ac380 * Monocolor hybrid mana - Fixed that the payment did not always try to pay the colored cost if possible. 2015-09-20 19:13:18 +02:00
LevelX2
391d247e7c * Brutal Expulsion - Fixed that also spell targets were handled correctly. 2015-09-20 10:31:14 +02:00
LevelX2
5a8ca36916 * Ondu Rising - Fixed that the attacking creatures did not get lifelink. 2015-09-20 09:25:25 +02:00
LevelX2
391b766b6e Some minor changes. 2015-09-16 15:45:38 +02:00
LevelX2
8f64a2ab54 * Fixed that a player doing a library search with a stated quality (701.15b) couldn't fail to find a card if cards with the stated quality did exist in the searched library. 2015-09-14 23:36:32 +02:00
LevelX2
6b50a02e3c Added a test. 2015-09-14 17:47:06 +02:00
LevelX2
63e25cf132 * Shallow Grave - Fixed that the delayed triggered ability did also effect the target if it changed zone meanwhile (fixes #1262). 2015-09-13 08:47:45 +02:00
LevelX2
b29fe86aa0 Added a test. 2015-09-12 20:37:24 +02:00
LevelX2
88c18bcd8c * Infernal Scarring - Fixed that the "Dies" trigger did not work if the enchanted creature was sacrificed (e.g. using Nantuko Husk). 2015-09-12 20:14:44 +02:00
LevelX2
0ca991c4ba * Starfield of Nyx - Fixed that the continuous effect's dependancy to continuousEffects that add subtype aura was not checked. Reworked the dependency check to be a bit more generic (#1259). 2015-09-12 19:35:02 +02:00
LevelX2
1175a18661 * Fixed put token into play thta's of copy of target effects to handle targets correctly that already copy something (e.g. Kiki-Jiki, Mirror Breaker copying a Body Double creature). 2015-09-12 14:52:14 +02:00
LevelX2
963f371c12 * Anafenza the Foremost - Fixed that animated permanents (e.g. Lavaclaw Reaches) were not moved to exile if they died while beeing a creatures. 2015-09-11 21:50:23 +02:00
LevelX2
464955bd3a Fixed that for enchantments put into play (e.g. by Zur the Enchanter) that the selection of the enchanted permanent is not handled targeted. 2015-09-10 23:59:53 +02:00
LevelX2
340398fb74 * Fixed that state triggered abilities were not checked at the correct times. 2015-09-09 00:51:41 +02:00
LevelX2
e37c9a6472 * Fixed some problems with creation of tokens of target permanents (fixes #1244). 2015-09-08 18:13:32 +02:00
LevelX2
9aa14cdba8 * Added some tests. 2015-09-07 16:14:57 +02:00
LevelX2
94c0e05891 * Suspend - Fixed that creatures coming into play with suspend didn't gain haste anymore. 2015-09-07 15:03:19 +02:00
LevelX2
fb819f1f51 Added test (failing because bug not fixed yet). Some minor changes. 2015-09-06 23:29:58 +02:00
LevelX2
9a37bd28ad Xmage 1.4.4v0 2015-09-05 12:51:07 +02:00