Commit graph

3982 commits

Author SHA1 Message Date
Justin Godesky
3a0aafb1fc Merge branch 'cleanup' after pulling latest (fixes broken tests) 2015-06-05 09:08:15 -04:00
Justin Godesky
6faf248273 Abstracted out FilterArtifactSpell, and changed implementations that depended on their own instance of it. Golem Foundry uses already implemented, generic Golem token - instead of its own duplicate one. 2015-06-05 08:53:28 -04:00
LevelX2
43f79908b8 Fixed a problem with tooltip text generation. 2015-06-05 13:39:42 +02:00
LevelX2
81187ba1c7 Fixed a problem with removing player attachments. 2015-06-05 13:35:33 +02:00
LevelX2
01c81c1cb1 * Homing Sliver - Fixed the gain Slivercycling ability. 2015-06-05 11:44:51 +02:00
LevelX2
36eebfa317 * Fixed that player enchnatments were not correctly removed as they left the battlefield causing problems if they were cast again later in the game (fixes #1006). 2015-06-05 00:50:31 +02:00
LevelX2
ca9ee416e8 Added test for Mana Flare. 2015-06-04 14:48:06 +02:00
LevelX2
b583f616bf * Burrenton Forge-Tende - Fixed that every source could be selected.. 2015-06-04 14:12:52 +02:00
LevelX2
53396a44f2 Added some test and some minor fixes to effect ability handling. 2015-06-04 13:50:39 +02:00
LevelX2
961e292bc9 Merge pull request #1013 from jgod/master
Added Morningtide. Abstracted out "Exile All Graveyards" effect
2015-06-04 06:44:21 +02:00
Justin Godesky
b4387456c9 Exiling all graveyards abstracted out into common effect. Added Morningtide. Implementation of Rest In Peace and Relic of Progenitus abstracted out. 2015-06-04 00:15:23 -04:00
LevelX2
b58d2e88ea * Novijen Sages - Fixed that it was not possible to pay the activated ability with the counters of Novijen Sages. 2015-06-03 23:49:54 +02:00
LevelX2
5b57a5b6ee * Dash - Fixed missing tooltip text for triggered return to hand ability. 2015-06-03 22:54:11 +02:00
LevelX2
eea43662e1 Added test. 2015-06-03 20:16:58 +02:00
LevelX2
59c50436ac Minor change. 2015-06-03 17:06:46 +02:00
LevelX2
bafd27f5b3 Identifier are shown for Looked at and revealed cards view 2015-06-03 17:05:59 +02:00
LevelX2
cb666a87ca Merge pull request #1011 from Zeplar/master
Added the W/U/B/R/G Scarab auras from Ice Age.
2015-06-03 00:37:52 +02:00
LevelX2
c1fa3422fd * Mycosynth Golem - Fixed not working second ability. 2015-06-02 23:37:15 +02:00
Zeplar
cafb8c7c0c Added the W/U/B/R/G Scarab auras from Ice Age. Fixed minor typo in Can't Be Blocked By <> text. 2015-06-02 14:12:51 -07:00
LevelX2
bb28394f71 * Helm of Obedience - Fixed that card movement to graveyard was not handled correct. It was not checked, if card was really moved to graveyard (fixes #1004). 2015-06-02 22:50:57 +02:00
LevelX2
f9f674b8f7 * Fixed that removed players (e.g. by lethal damage) changed the players in range wrongly immediatly instead of at the start of the next turn. 2015-06-02 15:01:52 +02:00
LevelX2
1b690e5c8c * Fixed target change handling (e.g. with opponent filter - fixes #574). Added some tests. 2015-05-31 18:44:02 +02:00
LevelX2
a541d24a20 * Treacherous Pit-Dweller - Fixed that the enteres the battlefield ability was not implemented correctly. 2015-05-30 15:14:44 +02:00
LevelX2
bb478fa9d5 * Heroic - Fixed that heroic only triggered for one mode if a modal spell with heroic targets in differnt modes was used (e.g. Dromoka's Command). 2015-05-30 12:44:33 +02:00
LevelX2
907b029bdb Added target handling for modal spells with multiple targets in different modes. Fixed target handling bugs in test project. 2015-05-30 12:43:17 +02:00
LevelX2
f8f21bd8ce * Landfall - Fixed that it also works for Instant and Soceries copied from opponents. Corrected tooltip text formating. 2015-05-30 10:14:15 +02:00
LevelX2
fa2f7e2055 Grave Pact, Dictate of Erebos, Butcher of Malakir, Agent of The Fates, Tribute to the Wild and Yawning Fissure - Fixed that the selection for the object to sacrifice was handled targeted. 2015-05-30 02:00:21 +02:00
LevelX2
5a428f10ab * Fixed a bug that continuous effects created by copied cards (e.g. by Isochronic Scepter using Silence) were not applied correctly. 2015-05-29 18:43:21 +02:00
LevelX2
4f4ade61d5 Fixed commander cast test. 2015-05-29 17:29:14 +02:00
LevelX2
b25c1ded7b Fixed text with html that couldn't display html. 2015-05-29 00:26:51 +02:00
LevelX2
5a5722b248 * Skarrgan Firebird - Fixed that the condtion check of the activated ability was inverted. 2015-05-29 00:18:51 +02:00
LevelX2
2fa6b944e6 Improved some time out messages. 2015-05-28 16:56:23 +02:00
LevelX2
ba8e918527 * Worldheart Phoenix - Fixed that it could be cast from graveyard with it's regular casting costs. 2015-05-28 16:52:17 +02:00
LevelX2
c896ae2442 * Deep-Sea Kraken - Fixed that the triggered ability to remove time counters did not work. 2015-05-28 15:12:00 +02:00
LevelX2
8d31a38d1d Fixed world enchantment rule. 2015-05-28 11:59:19 +02:00
LevelX2
16ea49141f Fixed that static abilities of phased out objects are not applied. 2015-05-28 00:14:08 +02:00
LevelX2
a31794bb7e Added object identifier to the exile windows header line . 2015-05-28 00:06:33 +02:00
LevelX2
b48ad69fdf Added Isperia coded by lunaskyrise corrected by levelx2 (closes #1003). 2015-05-27 18:26:56 +02:00
LevelX2
ccae89e181 Implemented World Rule state based action. 2015-05-27 00:53:29 +02:00
LevelX2
234bba64a3 Cleaned up some replacment effects. 2015-05-26 17:43:39 +02:00
LevelX2
eb96b08dfa Release 1.4.0v2 2015-05-25 23:33:41 +02:00
LevelX2
af4a40d5d5 Fixed counter handling of counters. 2015-05-25 22:57:32 +02:00
LevelX2
f999537163 Merge pull request #999 from lunaskyrise/lands
Add lots of lands
2015-05-25 22:16:29 +02:00
emerald000
f184c32de4 Added Makeshift Mannequin, Silent Arbiter and Spinning Darkness 2015-05-25 15:57:30 -04:00
LevelX2
d0ed98466f * Mana Tapping - Fixed a bug that prevented to undo mana tapping done without paying for a spell or ability. 2015-05-25 19:24:21 +02:00
LevelX2
7ca6c87fe5 * Unearth - Fixed the not working replacement effect of unearth that exiles the creature if neccessary. 2015-05-25 19:05:00 +02:00
LevelX2
c71b3ea7e8 * Proliferate - Fixed that in some cases permanents that had counters before could be choosen tp proliferate. 2015-05-25 18:39:36 +02:00
Luna Skyrise
2394c711ce Base changes for the new lands 2015-05-25 13:12:38 -03:00
LevelX2
4298e66e02 * Changeling - Fixed that some non creature subtypes of cards (e.g. Arcane) were positive filtered for Changeling (fixes #991). 2015-05-25 16:51:09 +02:00
LevelX2
b753654384 * Added Arcbound Crasher, Mana Clash, Tel-Jilad Stylus, Chance Encounter and Vampiric Link. 2015-05-25 15:50:50 +02:00
LevelX2
d3b41c076d * Added DealsDamageAttachedTriggeredAbility and used in some cards. 2015-05-25 15:49:51 +02:00
LevelX2
0847d3f820 * Fixed that player names for damage assigning during combat had html tags. 2015-05-25 10:51:44 +02:00
LevelX2
6480fb321e Merge origin/master 2015-05-25 00:58:06 +02:00
LevelX2
194c2eb371 * Reflecting Pool - Fixed that it did not work correctly with lands that produce conditional mana (e.g. Sliver Hive or Caverns of Soul) fixes #993. 2015-05-25 00:57:42 +02:00
emerald000
09a4267a46 Added Boiling Seas, Cephalid Constable, Devastating Dreams and Life and Limb. 2015-05-24 16:57:12 -04:00
LevelX2
c3447ccff0 * Eldrazi Temple - Fixed that the first ability was automatically used for spells (fixes #908) . 2015-05-24 18:56:34 +02:00
LevelX2
76aa9c128d * Release 1.4.0v1 2015-05-24 14:50:24 +02:00
LevelX2
f4718deae4 * Jareth, Leonine Titan - Fixed that the protection giving ability did not work correctly. 2015-05-23 18:02:37 +02:00
LevelX2
7003dc7e3f * Fixed that the AI used activated abilities even if they were forbidden by a restriction effect like Arrest. 2015-05-23 17:43:27 +02:00
LevelX2
e1a8e41702 * Ghastlord of Fugue - Fixed the not working triggered ability. 2015-05-23 17:08:18 +02:00
LevelX2
ce64a22c15 Some more rework of player.moveCard (mainly to graveyard). 2015-05-23 15:35:40 +02:00
LevelX2
039c4f22a6 * Wither - Added reminder text. 2015-05-23 14:53:58 +02:00
LevelX2
64ea893ea0 Some changes to logging. 2015-05-22 22:33:01 +02:00
LevelX2
467a11b4cd Started to rework player.moveCard methods to handle multiple cards. 2015-05-22 15:15:39 +02:00
LevelX2
d7255f971c * Some more minor changes. Added test. 2015-05-21 23:25:46 +02:00
LevelX2
093b22081a * Some minor changes. 2015-05-21 22:39:30 +02:00
LevelX2
6097e297fe * Prevention effects - Fixed that prevention effects also prevented damage that was not preventable (fixes #983). 2015-05-21 00:25:37 +02:00
LevelX2
f5245ade01 * Game timer - Fixed that the timer count down was not shown while selecting the starting player and deciding for mulligan. 2015-05-20 23:27:00 +02:00
LevelX2
a3065b703a * Fixed that named searches (e.g. Surgical Extraction) work also if the selected card is a split card. 2015-05-20 17:17:42 +02:00
zweistecken
f7fdd0edde fixed AttackedByCreatureTriggeredAbility to behave as before adding SetTargetPointer 2015-05-20 09:01:43 +02:00
zweistecken
1fe1a08bd5 Merge remote-tracking branch 'upstream/master' 2015-05-19 18:43:31 +02:00
zweistecken
e324d53d97 added SetTargetPointer Enum to AttackedByCreatureTriggeredAbility
PERMANENT targeting attacking creature
PLAYER targeting attacking player
modified Garruk Apex Predator (only card using this) to use SetTargetPointer
2015-05-19 18:33:10 +02:00
LevelX2
c6d0c78d16 Merge pull request #976 from lunaskyrise/unchecked-and-deprecated
Remove most "has been deprecated" and "unchecked conversion" errors
2015-05-19 14:48:25 +02:00
Luna Skyrise
7f63ad02a6 Basal Sliver: use SimpleManaAbility...
...instead of a custom SimpleActivatedAbility
2015-05-18 20:27:37 -03:00
Luna Skyrise
4f079286ec Remove most "unchecked conversion" errors 2015-05-18 19:53:34 -03:00
LevelX2
591c289627 Merge pull request #974 from lunaskyrise/animal-boneyard-and-more
Animal Boneyard and more
2015-05-19 00:05:19 +02:00
LevelX2
04730e490b * Deranged Assistant - Disallowed possible undo to prevent cheating with otherwise hidden information (top card of library). 2015-05-18 23:06:15 +02:00
LevelX2
e5a792a8f5 * Puppeteer Clique - Fixed that the ability also tiggered without a valid target. 2015-05-18 21:46:22 +02:00
LevelX2
27cbe6a463 * Triggered abilities - Fixed class back to ConcurrentHashMap (fixes #966). 2015-05-18 20:56:33 +02:00
LevelX2
b0a404e84b * Retrace - Fixed that retrace did not work correctly with cost modifications. 2015-05-18 20:48:01 +02:00
Luna Skyrise
2facda95aa Fix typo in SourceOnBattlefieldCondition's class name 2015-05-16 21:32:05 -03:00
emerald000
6c010a8efe Added Bitter Ordeal and Psychogenic Probe 2015-05-14 04:07:08 -04:00
LevelX2
988ed217f3 * Angelic Destiny - Fixed that the enchantment did not return from graveyard to hand. 2015-05-13 23:05:02 +02:00
LevelX2
7bc8ff9955 * Otherworldly Journey - Fixed that the returning creature did not get the +1/+1 counter. 2015-05-13 17:45:44 +02:00
LevelX2
fa847e8feb * Update to version 1.4.0v0. 2015-05-12 23:11:25 +02:00
LevelX2
ed501cad21 * Some minor adjustements/changes. 2015-05-12 23:00:34 +02:00
LevelX2
28d46e2a95 * Added a simple identifier to tooltip and game log to be able to identify the exact target if multiple objects with the same name exist. 2015-05-12 17:30:14 +02:00
LevelX2
e2cb40de70 Some minor log changes and added tests. 2015-05-12 17:29:00 +02:00
LevelX2
1561ed3fa4 * Fixed a recently added bug that prevented attack a player if also a planeswalker of the attacked player is on the battlerfield. 2015-05-12 17:28:17 +02:00
LevelX2
69b381779b * Added a simple skill level to set and filter for tables. 2015-05-12 15:10:24 +02:00
LevelX2
e3cb007848 Merge pull request #962 from lunaskyrise/master
Add 18 new cards + change set package name
2015-05-12 01:31:56 +02:00
LevelX2
15efe14fd5 * Fixed human players controlling other human players turn (e.g. by Mindsliver). 2015-05-12 01:10:56 +02:00
Luna Skyrise
a49d082823 Orcish Spy: modify LookLibraryTopCardTargetPlayerEffect to admit multiple cards 2015-05-11 19:07:14 -03:00
LevelX2
1067ba296b * Chief Engineer - Fixed that convoke did not work for Artifacts while Chief Engineer was on the battlefield. 2015-05-11 15:26:48 -03:00
LevelX2
70f152feb1 * Fixed that some mana effects did not send all neded events (prevented that Contamination chnaged conditonal mana from Cavern of Souls to black mana). 2015-05-11 15:26:39 -03:00
LevelX2
ef1ee0adbf * Norn's Annex - Fixed that the effect did not work if a planeswalker of the controller was attacked. 2015-05-11 15:26:29 -03:00
LevelX2
d42901d052 Some minor changes. 2015-05-11 15:26:19 -03:00
LevelX2
7338022dd1 * Fixed that cyle triggered abilities did not work. 2015-05-11 15:26:09 -03:00
LevelX2
e5a1a623ae * Chief Engineer - Fixed that convoke did not work for Artifacts while Chief Engineer was on the battlefield. 2015-05-11 19:17:38 +02:00
LevelX2
eec65a2881 * Fixed that some mana effects did not send all neded events (prevented that Contamination chnaged conditonal mana from Cavern of Souls to black mana). 2015-05-11 15:33:22 +02:00
LevelX2
17f9bf57d0 * Norn's Annex - Fixed that the effect did not work if a planeswalker of the controller was attacked. 2015-05-11 15:00:54 +02:00
LevelX2
7d2883560c Some minor changes. 2015-05-11 13:49:04 +02:00
LevelX2
fdcc365926 * Fixed that cyle triggered abilities did not work. 2015-05-11 12:18:07 +02:00
Luna Skyrise
dd32411e83 [8ED, FEM] Added Orcish Spy...
...and the revealing target player's library effect
2015-05-10 23:51:00 -03:00
LevelX2
5abcefa09e Minor changes to log and tooltip text generation. 2015-05-10 11:24:43 +02:00
LevelX2
25ef57570d [MM2] Added Worldhear Phoneix. 2015-05-10 01:33:02 +02:00
LevelX2
7cdda24e9a Fixed that AI destroyed all their permanents with Rats of Rath. 2015-05-10 01:32:14 +02:00
LevelX2
9c97953b6b Added some font color to object and player names output to game logging and feedback area. 2015-05-09 21:18:00 +02:00
LevelX2
799def3b49 [MMB] Added Horde of Notion and All Suns' Dawn. 2015-05-08 19:15:40 +02:00
LevelX2
5c041753a6 * Progenitor Mimic - Fixed that the copy effect did not work correctly (fixes #958). 2015-05-08 14:45:14 +02:00
LevelX2
0ef2919a08 Some minor changes. Added a Kicker test. 2015-05-07 21:54:28 +02:00
LevelX2
182f91ea41 * Kuon, Ogre Ascendant - Fixed that also non creatures going to graveyard were count for Kuon, Ogre Ascendant flip ability. 2015-05-07 21:14:21 +02:00
LevelX2
4bea123bf3 Some minor changes. Added a test. 2015-05-07 21:04:04 +02:00
LevelX2
4d62d62768 * Fixed a bug that triggered abilities went under certain circumstances to stack at the wrong time (fixes the not working Sharuum The Hegemnon + Clone + Blood Artist combo). 2015-05-07 18:12:58 +02:00
betasteward
695f274803 allow Game objects to be serialized 2015-05-07 10:48:44 -04:00
betasteward
3231688855 fixed an issue with excessive mismatched merge states in MCTS AI 2015-05-07 10:43:30 -04:00
betasteward
fcb9bc9351 Convert TriggeredAbilities back to HashMap - no multi-threaded updates to this object should occur 2015-05-07 10:38:32 -04:00
LevelX2
bc990ad24a * Some minor fixed to tooltip texts. 2015-05-06 15:58:18 +02:00
LevelX2
5dbd5401fa * Dredge Ability - The effect is no longer active (e.g. for choosing the order of resolution) if not enough cards left in the library. 2015-05-06 15:57:39 +02:00
LevelX2
607680b78a Added source object name to effect rule text in choice window of replacment effects to select the order the effects resolve. 2015-05-06 15:56:11 +02:00
LevelX2
5095e64462 Fixed possible null pointer exception of TargetDefender. 2015-05-05 21:48:00 +02:00
Nathaniel Brandes
f9f6b078ab Properly fix ReturnToBattlefieldUnderYourControl.
All tests now passing. I broke out It That Betrays into it's own class,
as it doesn't actually care about zone when returning the permanent to
the battlefield, unlike most other abilities of that type, which target.
2015-05-04 21:31:01 -07:00
LevelX2
9923fc1052 Merge origin/master 2015-05-05 00:53:41 +02:00
LevelX2
8eae24051a * Fixed not unique target setting. 2015-05-05 00:50:47 +02:00
betasteward
c5e216ddbf more MCTS improvements 2015-05-04 15:41:37 -04:00
LevelX2
6403fff12b * Fixed target hadnling of PreventDamageBySourceEffect (fixes #952). 2015-05-04 18:38:26 +02:00
Nathaniel Brandes
efb48e2ace Fixed source damage prevention not working properly.
Tested for Burrenton Forge-Tender.
2015-05-04 02:09:43 -07:00
Nathaniel Brandes
ddc2128f78 Fix return to battlefield effect losing target if it has changed zones
for a fixed target pointer.
2015-05-04 01:08:41 -07:00
Nathaniel Brandes
2f476b7c53 Cleanup sets.
This is an extensive renaming of sets to their correct names. "Duel
Decks" and "Not Standard Legal" have been merged into a "Supplemental"
set type. MTGO-only sets have been put into their own set type, just
like magiccards.info. Supplemental sets now have a "block" which is the
block that they have under magiccards.info, for easier organization. The
deck builder on the client now relies on an autogenerated list instead
of a hardcoded one.
2015-05-03 20:07:13 -07:00
LevelX2
880fab9014 * Fixed typos of Archmage Ascension and LookLibraryControllerEffect. 2015-05-03 23:44:10 +02:00
betasteward
282f600749 additions and improvements to ThreadLocalStringBuilder 2015-05-03 13:09:22 -04:00
LevelX2
cf6884b4a5 * Some minor changes for release. 2015-05-02 13:02:48 +02:00
LevelX2
0069241027 * Some minor changes. 2015-05-02 12:19:44 +02:00
LevelX2
8686f4f777 * Fixed a bug that the AI did for target selection not check correctly players with hexproof ability. 2015-05-02 09:47:38 +02:00
LevelX2
85d7f099bd * River Kelpie - Fixed that the first ability did not always trigger as intended. 2015-05-01 17:37:57 +02:00
betasteward
e131caa453 Use ThreadLocal StringBuilder for frequently used StringBuilders - saves having to construct new StringBuilder objects 2015-05-01 08:10:22 -04:00
LevelX2
d7c23bbfc0 * Fixed a bug that countered spells of creatures with the ability going back to library if going to graveyard (e.g. Legacy Waepon) stayed in hand or caused a java bug instead of going to library. 2015-05-01 14:04:52 +02:00
LevelX2
eb6e7f9b46 * Fixed a bug of draw card replace effect (e.g. multiple Thought Reflection enchantments on the battlefield let you draw less cards than intended). 2015-05-01 12:15:13 +02:00
Nathaniel Brandes
b25c4aac77 Added Volrath's Shapeshifter.
The Graveyard was modified to become its own class, as the top card of
your graveyard matters for this card, and graveyard order matters for
some other old card. Note that due how Volrath's Shapeshifter's ability
works, it is applied in layer 3, after control effects. This is so it
can look at it's current controllers graveyard, instead of it's owner,
as it would if the copy effect was at layer 1.
2015-04-30 19:10:50 -07:00
LevelX2
9b3eff603c * Laboratory Maniac - Fixed check for win condition (you can now win together with Platinum Angel). 2015-05-01 01:50:25 +02:00
LevelX2
442b12503a Merge origin/master 2015-04-30 17:16:41 +02:00
LevelX2
f9c48cc4d5 * Some updates to cards that check the controller of the source of an event. Now prevention and replacement effect controller of non permanents are determine. But it can be wrong under some control changing circumstances. Only solution would be to have always the causing ability instead of only the sourceId (fixes #804). 2015-04-30 16:15:39 +02:00
Nathaniel Brandes
da6fec0e65 Correct effects for "cares about Dragons" cards.
A Dragon card does not necessarily have to be a creature. In your hand,
it can be a tribal instant (like Nameless Inversion). In the
battlefield, it can be any permanent of subtype dragon, not just a
creature.
2015-04-30 02:31:44 -07:00
LevelX2
c8b79f5568 Merge origin/master 2015-04-30 10:25:46 +02:00
LevelX2
4d21cde3bb * Loam Dweller - Fixed that the land was not put onto battlefield tapped. 2015-04-30 10:24:55 +02:00
LevelX2
0cb6c7ee26 * Fixed a bug that number of targets for spells with multiple modal selection (e. g. Cryptic Command) was not calulated correctly. 2015-04-29 23:46:39 +02:00
LevelX2
830765996f * Storm - Fixed handling of countered Storm spells. * Reworked Rebound more rule conform. * Fixed that zone change counter was not raised if a card is moved to stack. 2015-04-29 17:37:54 +02:00
Nathaniel Brandes
4b6993f398 Added global alternate costs to canPlay test. Added Omniscienece test
case.
2015-04-29 03:04:34 -07:00
Nathaniel Brandes
255d436148 Omniscience now only allows you to play cards from your hand without
paying their mana costs.
2015-04-29 01:58:11 -07:00
LevelX2
66499bd58f * Mana Payment - Fixed a bug where the check if a specific colorored mana was payed could give back the wrong result (allowed e.g. the player sometimes to pay colored hybrid mana with the wrong colored mana). 2015-04-29 10:32:33 +02:00