Commit graph

415 commits

Author SHA1 Message Date
Evan Kranzler
f07ac5e844 fixed issue with computer player handling target distribution 2018-04-20 12:35:39 -04:00
LevelX2
fe2220e19e Xmage 1.4.29V0 2018-04-19 21:07:14 +02:00
LevelX2
47ad1ea0ee Fixed a AI target selecting problem. 2018-04-19 21:02:34 +02:00
Evan Kranzler
5fe607e852 updated targeting for cards that damage 2018-04-19 11:45:20 -04:00
LevelX2
245a3c5202 [DOM] Added Saga ability and Fall of the Thran. 2018-04-14 14:30:20 +02:00
LevelX2
442130beb6 Some minor changes. 2018-03-17 23:40:36 +01:00
LevelX2
b7fa942b10 * Fixed a problem that the AI did not care for maximum allowed mana payment for X mana costs. 2018-03-12 16:33:42 +01:00
LevelX2
fed2d1a259 XMage 1.4.28V0 2018-03-10 20:42:29 +01:00
LevelX2
a4c2e51ab3 * Added some missing AI target logic. 2018-02-13 10:33:33 +01:00
LevelX2
61c3798b83 Removed some system.out debug lines. 2018-02-12 11:38:35 +01:00
LevelX2
b60cd3d40e Removed debug command. 2018-01-28 01:14:50 +01:00
Oleg Agafonov
9d131f6bde Random generated decks improvements and fixes for AI:
* added generation of only basic lands decks;
 * fixed wrong color cards selection;
2018-01-27 13:19:03 +04:00
Jeff
9cd3c010fd - Cleanup of AI classes. 2018-01-19 16:37:09 -06:00
LevelX2
40afa04b24 xmage 1.4.27V0 2018-01-13 22:54:53 +01:00
Oleg Agafonov
3dda5712db AI: fixed not working choice with key-value dialogs, random refactor 2018-01-04 00:23:20 +04:00
Evan Kranzler
34c31834c5 fixed an error 2017-11-26 17:23:39 -05:00
LevelX2
603e625d8d Fixed a problem with AI opponent selection, 2017-11-25 12:55:26 +01:00
LevelX2
58d3fc2328 Fixed player leaving/conceding handling. 2017-10-21 16:13:45 +02:00
LevelX2
5996aa12e6 Trove of Temptation working for Human. 2017-09-15 17:51:54 +02:00
Evan Kranzler
252c941b4f Refactored more subtypes usages to enum 2017-09-08 09:57:51 -04:00
LevelX2
cba7a510ea * Fixed a bug if casting split cards from other players e.g with Mindclaw Shaman (fixes #3867). 2017-08-30 00:30:46 +02:00
LevelX2
e909f5c801 C17 Added Portal Mage. 2017-08-28 16:50:00 +02:00
LevelX2
1fb24116ae xmage 1.4.26V0 2017-08-15 01:27:06 +02:00
LevelX2
fe2ee5dfec Xmage 1.4.25V0 2017-07-29 20:35:16 +02:00
LevelX2
ea3d00a430 * Fixed that testing framework does not support snow mana payment (fixes #3751). 2017-07-28 12:47:00 +02:00
Jeff
e4c81df35e Fixed Bug #3711 2017-07-24 11:12:20 -05:00
LevelX2
ee890418c5 * Added missing imports. 2017-07-23 16:59:20 +02:00
LevelX2
4806738cfb * Some more use of StaticFilter objects. 2017-07-23 14:59:13 +02:00
ingmargoudt
09f0c9ad97 huge rework on subtypes (#3668)
* huge rework on subtypes

* update for coat of arms

* fix test
2017-07-16 16:57:39 -05:00
LevelX2
7d911ae803 XMage 1.4.24V0 2017-07-08 16:33:09 +02:00
LevelX2
40f192eafc * Squelch - Fixed that it was causing a ClassCastException (fixes #3396). 2017-05-20 23:22:31 +02:00
LevelX2
ef4cf90a0f Release 1.4.23V0 2017-04-17 10:53:59 +02:00
LevelX2
ed341528d9 [AKH] Fixed that Aftermath card images were shown wrongly rotated. 2017-04-16 22:57:08 +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
vraskulin
d93061c0bc Equals should be compared with == but not equals() 2017-03-22 14:50:50 +03:00
LevelX2
9d8a8a33f1 Xmage 1.4.22V0 2017-03-11 13:38:55 +01:00
Nathaniel Brandes
2ecb415b4d Removed potential integer overflow.
If the number passed into max is Integer.MAX_VALUE, like it is with
ChoiceOfDamnation, the random number will overflow. So let's not do
that.
2017-03-08 21:43:37 -08: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
498c8cf60c Made utility classes final to explicitly forbid it's inheritance 2017-02-27 17:03:38 +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
6625bf86be Xmage 1.4.21V0 2017-01-15 17:44:02 +01:00
LevelX2
1a03c7ce07 * Fixed a targeting problem of AI (e.g. for Maulfist Revolutionary). 2017-01-13 21:31:31 +01:00
LevelX2
ee203cf981 Xmage Release 1.4.20V0 2017-01-08 01:36:05 +01:00
LevelX2
2162fab114 * Fixed a problem of AI target handling (e.g. for Precursor Golem) 2017-01-01 14:56:34 +01:00
LevelX2
b62ca1ed1f Xmage 1.4.19 2016-11-27 19:59:42 +01:00
LevelX2
c9e1b415e2 Xmage 1.4.18V0 2016-11-06 18:11:19 +01:00
LevelX2
d2561c1752 * Fixed a problem with triggered mana abilities. Fixed a problem that AI did not always select the needed mana color. Fixed a problem with Reflecting Pool not taking triggered mana abilities into account. 2016-11-03 22:37:54 +01:00
LevelX2
8b62eece68 XMage 1.4.17V0 2016-10-23 10:03:01 +02:00
LevelX2
157827addc XMage 1.4.16v0 2016-10-08 11:14:13 +02:00
LevelX2
c9bb0be016 Reworked selected modes handling. That fixed the Subtle Strike targeting problem. 2016-09-24 01:12:01 +02:00
LevelX2
bb8326d46b XMage 1.4.15v0 2016-09-10 12:31:18 +02:00
emerald000
bc0f53973d Added an easier way to put custom text on buttons in a chooseUse prompt. 2016-09-06 02:07:59 -04: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
Samuel Sandeen
282443c231 Add Subtype to the CardAttribute Framework
This is a massive change. I’ve refrained from unrelated refactoring
when possible but there are still a lot of changes here.
2016-08-28 17:30:10 -04:00
LevelX2
539b03bd1d Xmage 1.4.14v0 2016-08-13 10:14:38 +02:00
LevelX2
d0ecb473da Xmage 1.4.13v0 2016-07-11 22:54:43 +02:00
LevelX2
266a0870ca Xmage 1.4.12v0 2016-05-29 10:59:39 +02:00
LevelX2
e2a8ddef0f Merge pull request #1905 from KWottrich/clean-up-java-imports
Clean up java imports
2016-04-26 11:37:35 +02:00
LevelX2
1fcd26fc60 xmage 1.4.11v0 2016-04-26 00:59:03 +02:00
Kenny Wottrich
f3c83d54f5 Remove Unused Imports
Delete unused java imports that cause compiler warnings
2016-04-24 19:50:29 -05:00
Fenhl
430ae503c7 Change all line endings to LF 2016-04-14 16:18:01 +00:00
LevelX2
bcdde0a945 XMage version 1.4.10v0 2016-04-06 22:56:02 +02:00
LevelX2
3f57012c85 Merge origin/master
Conflicts:
	Mage.Client/src/main/java/org/mage/card/arcane/ManaSymbols.java
2016-03-03 23:22:06 +01:00
LevelX2
e9638bcc4d Release 1.4.9v0 2016-02-21 12:58:58 +01:00
LevelX2
74799d286b * Improved mana source check. Fixed #1513. 2016-02-14 18:31:02 +01:00
LevelX2
5981816a4b Switch to 1.4.8 for upcoming realease. 2016-01-22 22:33:58 +01:00
LevelX2
121f40c019 Prepared 1.4.7. 2016-01-10 22:13:59 +01:00
LevelX2
c8f82b49ff Added possibility to check kind of cost to pay for conditional mana use. 2016-01-10 12:01:58 +01:00
LevelX2
782190bac3 Some changes to mana handling to handle {C} mana. 2016-01-08 23:25:42 +01:00
LevelX2
207f486afc * Xmage 1.4.6v0 2015-12-13 19:47:04 +01:00
Neil Gentleman
bfb428b13a always use log4j
removed all references to mage.util.Logging, java.util.logging

transient static doesn't mean anything, since static fields are never
included in serialization
2015-11-28 21:11:25 -08:00
LevelX2
b25e35920e * AI Player - Fixed that the AI took mulligan in Mormir format. 2015-11-28 12:14:58 +01:00
LevelX2
c008b04965 * AI Player - Fixed that the AI for soem card effects could choose itself for choose opponent choice. 2015-11-28 11:23:08 +01:00
LevelX2
eb6a5e7dcb * Some rework of play card effects. 2015-11-26 17:06:50 +01:00
Neil Gentleman
a90d0e5597 reuse shared code for picking basic land sets 2015-11-22 18:00:10 -08:00
LevelX2
0d86e8e063 Xmage 1.4.5v0 2015-11-21 10:33:43 +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
ae69986aef * Fixed a bug that the AI did not handle to target a card in its hand (e.g. Chrome Mox). 2015-10-22 01:00:17 +02:00
LevelX2
625aa29d6e Rework of "spend mana as though it were mana of" handling. 2015-10-06 17:28:59 +02:00
LevelX2
9a37bd28ad Xmage 1.4.4v0 2015-09-05 12:51:07 +02:00
LevelX2
5a812f022d Added the new mulligan rule with Scry. Litte Scry rework. 2015-09-03 17:27:43 +02:00
LevelX2
75ed3ffbca * AI target selection - Fixed a problem with TargetSpellOrPermanent (could cause e.g. a bug if AI casts Venser, Shaper Savant). 2015-08-18 12:43:54 +02:00
LevelX2
5ee01868a9 * Fixed a bug of AI target card in hand selection leading to UI hang if AI had no valid targets in hand (e.g. Show and Tell or Hypergenesis). 2015-08-16 17:59:14 +02:00
LevelX2
c98577cc6a Xmage 1.4.3v0 2015-08-06 22:18:01 +02:00
LevelX2
6ef50c42bf Some minor changes. 2015-07-19 10:08:58 +02:00
LevelX2
c784637766 Set ALLOW_INTERRUPT back to true in repository. 2015-07-18 09:59:42 +02:00
LevelX2
0c0fe9984e Some fixes/improvements to AI target handling and tests. 2015-07-16 13:10:11 +02:00
LevelX2
fa0a40b0d6 * Some fixes/chnages to AI player. Needs probably some more testing. 2015-07-12 19:51:04 +02:00
LevelX2
53e36c728c * Some minor fixed, error handling. 2015-07-04 16:44:36 +02:00
LevelX2
cd0cba6ec7 XMage Release 1.4.2v0 2015-07-04 01:28:19 +02:00
LevelX2
0cbe590cac * Fixed that mana auto-payment settings were not correctly set from previous settings on game start. 2015-07-02 13:18:12 +02:00
LevelX2
123d1e4ec6 [ORI] Added 6 black cards. 2015-06-30 01:24:51 +02:00
LevelX2
df3e6db569 Please test! Some changes to the display of user choices, showing also a longer text in tooltip window. 2015-06-28 21:55:48 +02:00
LevelX2
87f3978589 Some changes to userData handling. Added country flag to some dialogs. Saved and restored some more table columns width and order information. 2015-06-28 00:10:38 +02:00
LevelX2
56b81f8635 Computer AI - Fixed a bug in AI target handling (e.g. AI Show and Tell selection blocked UI). 2015-06-24 16:28:30 +02:00
LevelX2
e509a35795 Fixed a bug that existing continuous effects were not applied before state based effects were checked. 2015-06-20 01:07:35 +02:00
LevelX2
9882948a06 * Splice on Arcane - Fixed that if a player used an alternate cost to cast the arcane spell (e.g. Nourishing Shoal) splice mana costs were also removed. 2015-06-17 16:15:44 +02:00
LevelX2
cd0f273122 Fixed a bug that if a human player had to discard more cards than he had on hand, the game UI was blocked. 2015-06-15 17:35:48 +02:00
LevelX2
060a468d4b Update to release 1.4.1. 2015-06-14 02:43:16 +02:00
LevelX2
ce26bc8ed0 Added option to deactivate to ask th eplayer in which order cards go to gaveyard. 2015-06-13 12:27:50 +02:00
LevelX2
8ae9293c98 * Added user country flag. View of image in user list is still missing. 2015-06-10 17:52:18 +02:00
LevelX2
3b61a10237 Fixed some bugs and added a AI Test player class. 2015-06-08 18:31:54 +02:00
LevelX2
9da44a547d Added an option that player has to confirm if he passes priority with empty stack and has mana in his pool. Implements #707. 2015-06-07 22:37:12 +02:00
LevelX2
53396a44f2 Added some test and some minor fixes to effect ability handling. 2015-06-04 13:50:39 +02: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
f63fae06de Some changes to AI player. 2015-06-03 17:08:01 +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
c2ee9ef4ad Minor fix to target handlling. 2015-05-25 22:58:01 +02:00
LevelX2
76aa9c128d * Release 1.4.0v1 2015-05-24 14:50:24 +02:00
LevelX2
497b977911 * Fixed a bug that the AI did most of the time choose the wrong mana color if producing mana from any or multiple mana effects. 2015-05-13 15:04:42 +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
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
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
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
c65adebc57 Fixed that to allow watchers of a game to see the hand cards of players did not work correctly. 2015-04-10 12:36:22 +02:00
LevelX2
6b0f6be574 Fixed spelling bug of import mage.abilities.effects.common.continuous package. 2015-03-03 00:37:39 +01:00
LevelX2
7ce1e6de19 * Some minor changes. 2015-03-01 17:22:39 +01:00
LevelX2
11fb2412cb Fixed a bug of AI target selection that caused endless loops during build of test project. 2015-02-27 15:18:38 +01:00
LevelX2
80d3e6bd9a Fixed a bug of AI target selection that caused endless loops during build of test project. 2015-02-27 15:04:42 +01:00
LevelX2
4a5140d0ab Fixed a bug of cost paying handling not showing only the left over unpaid part of mana cost (fixes #185). Added the name of the object the cost is paid for to the feedback panel. 2015-02-26 13:52:02 +01:00
LevelX2
19d71aaf84 * AI PLayer - Fixed a problem with targets of Venser, Shaper Savant. 2015-01-31 10:00:16 +01:00
LevelX2
8d8a2074f0 * Lion's Eye Diamond - Fixed that it now only can be cast at the time an instant spell could be cast. 2014-12-27 03:51:10 +01:00
LevelX2
67479bb5a4 * Fixed wrong timer handling while other player controlled a player's turn. Attackers now marked with blue frame. Playable cards have a violet frame. If a player has to select cards from hand, the possible cards are marked yellow now. Discard of multiple cards now marks already selected cards and happens in one selection. 2014-11-26 01:48:00 +01:00
LevelX2
7e145d2cfd * Added possibility to allow other players to see hand cards of player. 2014-11-24 23:03:21 +01:00
LevelX2
c22b54d262 *Draft - Non hidden picked cards go to the deck. Hidden cards to sideboard. 2014-11-23 18:43:31 +01:00
LevelX2
97412e3e9e * Started reworking netmana to also handle mana sources that could only produce 2-4 colors. Not finished yet. 2014-11-17 17:37:02 +01:00
LevelX2
1396760d5e * Fixed a problem that prevented cards from beeing marked as choosable in select card panel after the changes made for displaying resized counters. 2014-10-31 18:34:41 +01:00
LevelX2
df71237f46 * Added logic to auto select replacement effects. Some changes to counter size and font size handling. 2014-10-30 20:40:23 +01:00
LevelX2
f3ea64e27c * Changed handling of phases to stop to server based handling. 2014-09-25 00:33:58 +02:00
LevelX2
08b26ae57a * Deflecting Palm - Fixed that damage dealing did not work if the source was a spell. 2014-09-21 09:41:01 +02:00
LevelX2
cb6cc62ed4 If match timer is used, the AI consumes now also time for their priority action. Some minor changes to Gamemanager. 2014-09-03 09:49:44 +02:00
LevelX2
d46b4a7248 Fixed a bug of computer player handling TargetCreatureOrPlayerAmount. 2014-08-18 23:52:35 +02:00
magenoxx
ffa987755b Added using RuleModification effect and setting targetAbility for triggered abilities 2014-08-18 19:42:29 +04:00
LevelX2
d02f272bca * Fixed that attacker has not always to assign all damage to multiple blockers. Improved AI behaviour of assigning damage to multiple blockers. Tries to kill blocker if possible now. 2014-08-18 00:46:45 +02:00
LevelX2
25180e232e * AI - Added missing handling for TargetCardInExile. 2014-08-17 22:32:13 +02:00
LevelX2
f633d35bfd * Wall of Roots - Fixed that Wall could not be used after beeing exiled and returned with Momentary Blink. 2014-08-16 19:27:43 +02:00
Dustin Conrad
809d61d5ea Use dependency management to use common versions of log4j and junit in all the projects. 2014-08-09 19:38:34 -04:00
LevelX2
ea1a098300 * Spellskite - Fixed that target could wrongly not be changed to spellskite in some cases. 2014-07-29 17:44:42 +02:00
LevelX2
c8d76cdaaf * Added Dream Halls and Curse of chain (and what was neccessary to get Dream Hall costs to work). 2014-07-27 11:22:22 +02:00
LevelX2
25e2fb59e1 Support of play_land event for get playable cards. 2014-07-26 15:01:17 +02:00
Quercitron
e5b2b39701 Make order of parameters the same for methods player.damage and permanent.damage 2014-07-18 02:11:11 +04:00
LevelX2
7d2b1c076a * Combat - Creatures forced to attack can no longer be removed from attack by using the undo button (e.g. Bident of Thassa). 2014-06-20 14:19:03 +02:00
Quercitron
f2114f4701 Fix build for Player AI projects 2014-06-13 20:21:07 +04:00
North
1867a150c1 [refactor] removed generic parameter from Player 2014-06-03 11:19:49 +03:00
LevelX2
8087a07a9c * AI Player - Fixed a bug that AI did not care about existing filter criterias for choosing cards from own hand. 2014-05-26 16:57:36 +02:00