Commit graph

944 commits

Author SHA1 Message Date
Ingmar Goudt
056226d83c Sonar fixes 19022019 2019-02-19 21:51:45 +01:00
Oleg Agafonov
8cf681dff2 Updated libraries to latest versions and code compatibility fixes; 2019-02-17 16:12:57 +04:00
Oleg Agafonov
971a98061d Fixed SQL errors on non escaped symbols in usernames/emails/passwords; 2019-02-17 16:09:00 +04:00
Ingmar Goudt
39fc9fbc59 remove duplicate logger in UserManager 2019-02-15 11:05:01 +01:00
Oleg Agafonov
c29b68f030 Disabled cards rating and classes preloading on startup (lags problem); 2019-02-09 16:09:07 +04:00
Ingmar Goudt
2cd9e25229 better use of the CardsImpl constructor 2019-02-03 21:08:31 +01:00
Oleg Agafonov
7eba755666 Refactor card ratings, fixed rare error exception "comparison method violates its general contract" (different ratings in same card); 2019-02-01 17:41:29 +04:00
Oleg Agafonov
f1ba813518 Cheats: added amount supports in stack command; 2019-01-26 14:32:32 +04:00
Oleg Agafonov
8ef30e4cde Cheats: added command to add any card/spell to stack without cost (only simple cast supports, without targets and modes); 2019-01-26 14:16:44 +04:00
Oleg Agafonov
855baff877 Fixed rare infinite loops on user session disconnects; 2019-01-24 21:42:47 +04:00
Oleg Agafonov
91a3328907 * UI: added cell hints to player's list in lobby, fixed header hints; 2019-01-21 01:10:01 +04:00
Ingmar Goudt
50f28a2bf7 add some Java8 magic to the server 2019-01-19 09:31:50 +01:00
Ingmar Goudt
7c2f55eda0 couple of sonar fixes 2019-01-17 12:03:22 +01:00
Oleg Agafonov
b2d4d1eba8 Cheats: added command to add loyalty points to card 2019-01-15 20:45:08 +04:00
Oleg Agafonov
063be44523 Fixed NPE errors for some cards (#5471) 2019-01-08 07:15:39 +04:00
Oleg Agafonov
f01b3d3ca3 Improved new version cleanup and more:
* fixed db cleanup on new version (sets + cards);
 * fixed empty sets list after update;
 * fixed NPE errors in sets list on new install/version;
 * added joke sets filter to deckeditor.
2019-01-06 15:41:30 +04:00
John Hitchings
7e621ee8af Make draft logs compatible with MTGO format #5450 - https://github.com/magefree/mage/issues/5450 2018-12-19 19:41:44 -08:00
Oleg Agafonov
452b889fe7 Fixed some exceptions on slow servers; 2018-12-15 18:45:00 +04:00
Oleg Agafonov
0a2f312da7 Added build time to version info, cleanup manifest files; 2018-12-15 18:29:10 +04:00
LevelX2
e7d129a074
Merge branch 'master' into add-minimum-rating-option 2018-11-26 17:18:35 +01:00
Oleg Agafonov
a806e79abd * Improved chat help about ignore command (it's not only chat, but game joins too); 2018-11-05 09:06:31 +04:00
Aaron Miller
5cd57199c7 Merge branch 'master' into add-minimum-rating-option 2018-09-29 19:15:46 -07:00
Aaron Miller
81c2a62250 Add "minimum rating" option to matches and tournaments 2018-09-29 19:14:39 -07:00
Ingmar Goudt
7b4acbe386 clean up some null checks 2018-09-27 22:16:32 +02:00
Ingmar Goudt
188a09b8fb change keyset to entryset 2018-09-27 22:16:00 +02:00
Ingmar Goudt
a603c5e62c fix return of Optional 2018-09-27 22:15:14 +02:00
Ingmar Goudt
eeaf2284cd fix a nullcheck of an Optional.. 2018-09-27 11:05:23 +02:00
Ingmar Goudt
f04d7c9b03 remove redundant null checks before instanceof 2018-09-17 21:09:42 +02:00
spjspj
589a542cbc Update Penny Dreadful 2018-08-08 00:09:03 +10:00
spjspj
f21543ff8d
Merge pull request #5146 from spjspj/master
Hopefully fix the /fix command ..
2018-07-13 01:01:57 +10:00
spjspj
ec1dc44327 Hopefully fix the /fix command .. 2018-07-13 00:02:26 +10:00
igoudt
ca1ebeb55e add method Game.isActivePlayer(UUID playerId) 2018-06-29 14:59:11 +02:00
GrayedFox
3953f3dbdd
remove all MIT copyright notices from files 2018-06-02 17:59:49 +02:00
LevelX2
fcc6174e5e Some null exceptions checking and fixed some other minor problems. 2018-05-26 01:22:28 +02:00
Oleg Agafonov
1a4e892f04 Cheat engine:
+ added commands to show my hand and library (@show my hand, @show my library);
  + added params to show color identity ("color commander") and card's color ("color cost");
2018-05-06 01:05:04 +04:00
spjspj
5746a40ad2 pennydreadful update 2018-04-24 23:03:32 +10:00
spjspj
b45a409939 Continuing implementation of Planechase. 2018-04-15 19:40:15 +10:00
spjspj
a828050ae1 Continuing implementation of Planechase. 2018-04-14 23:09:37 +10:00
spjspj
c8b741f0bf Continuing implementation of Planechase. 2018-04-12 00:07:24 +10:00
spjspj
471d49892f Attempt to allow players to fix the game if the active/choosing/person with priority has left or has run down the clock 2018-04-02 19:31:05 +10:00
Marc Zwart
fed2f31789 set lock calls back to original place as per request 2018-03-29 13:56:10 +02:00
Oleg Agafonov
645fbf6da1 * Cheat engine: added optional set code in card's command (example: battlefield:Human:Island:HOU:1); 2018-03-24 18:44:02 +04:00
igoudt
00f91391e9 Homarid Drake, reprints, and rewriting his or her to their 2018-03-22 16:52:26 +01:00
spjspj
4382a4f247
Merge pull request #4649 from spjspj/master
Song of Blood (VIS)
2018-03-23 00:26:29 +11:00
ArcadeMode
5ac975c52e Blocker and Critical level bugfixes throughout the project (#4648)
* fixed https://sonarcloud.io/project/issues?id=org.xmage%3Amage-root&issues=AWIlv32RgrzAwlaaQ7rP&open=AWIlv32RgrzAwlaaQ7rP

* ensure closing of scanner if it was opened

* Refactored method in EmpyrialArchAngel to not always return same value.

* Refactored method in FalkenrathAristocrat to not always return same value.

* Refactored method in GilderBairn to not always return the same value.

* fixed left open resources, ensured quiet closing of the streams

* Refactored method in IceCave to not always return same value.

* Refactored method in KjeldoranRoyalGuard to not always return same value.

* Refactored method in LegionsInitiative to not always return same value.

* Refactored method in NaturesWill to not always return same value.

* added quiet closing method in new streamutils class, used to clean up the connectdialog

* Fix small typo

* added quiet closing to saveobjectutil

* closed resources in savegame method of gamecontroller

* properly close resources in loadGame method of GameReplay class

* further proper resource closing in ServerMessagesUtil

* fixed unclosed resources in copy method in mage framework Copier

* closed unclosed resources in copyCompressed method in Copier

* ensure closing of filewriter in manasymbols

* ensure proper closing of Stream in arcane UI

* ensure closing of datagram socket in arcane Util

* ensure resource closing in deckimport from clipboard

* ensure closing of plugin classloader

* ensured closing of zipinputstream resource

* ensure closing of fileoutputstream in ScryfallSymbolsSource

* ensure closing resources after finishing/canceling download of pictures

* remove commented code

* move locks to try block to ensure unlocking along all execution paths

* remove dangerous instance of double-checked locking

* removed dangerous instance of double checked locking in settingsmanager

* Removed dangerous instance of double-checked locking in ThemePluginImpl

* close resource which did not happen certainly

* close another stream

* ensure closing of inputstream
2018-03-22 08:13:13 -05:00
spjspj
6e15835232 New M15 Rendering for Unstable lands
(Way to default to 'UST' for the cheat button.
2018-03-20 16:15:08 +11:00
LevelX2
b073ce1c42 * Added to all toUpperCase/toLowerCase calls the Locale.ENGLISH to prevent problems with some languages (e.g. Turkish). Removed some unused import statements. (#4634). 2018-03-18 18:18:54 +01:00
spjspj
f1967de231 This allows hidden information out from the game state. 2018-03-14 01:41:46 +11:00
LevelX2
7e5f4f580d * Fixed wrong user active check for table health. 2018-02-25 12:33:57 +01:00
LevelX2
89b6aeacd6 * Added a test related to #4539. 2018-02-20 16:16:26 +01:00
spjspj
bb512faa98 Add option to get debug information from game state in chat 2018-02-19 12:12:18 +11:00
LevelX2
1ef84278c2
Merge pull request #4419 from rsypen/master
Fixed local server time in client's chat messages
2018-02-15 15:16:52 +01:00
LevelX2
ac81c5bbd4 Changed callbackException handling. 2018-02-03 10:49:57 +01:00
LevelX2
7afc157ba0 xmage 1.4.27V2 2018-01-31 00:08:05 +01:00
LevelX2
5d7532dff2 Reverted changes on Session locking. 2018-01-28 23:25:16 +01:00
LevelX2
7f17011bf0 Added logic to suppress failing callbacks to users that lost connection. 2018-01-28 18:05:43 +01:00
LevelX2
34a884546a Readded message if user lost connection. 2018-01-28 18:03:37 +01:00
LevelX2
2f016c8ea6 Fixed some more exception and/or logging problems. 2018-01-27 13:19:20 +01:00
LevelX2
6b90c1fd7f Fixed some exception problems. 2018-01-27 11:42:43 +01:00
Oleg Agafonov
74f988ce1d Cheats: added 2 new special commands, see #4334:
* show opponent hand
  * show opponent library
  * added params to special commands to show more or less info:
    - pt;
    - color;
    - abilities count;
    - abilities list.
2018-01-26 06:42:23 +04:00
rsypen
ccd121277a
Fixed local server time in client's chat messages 2018-01-15 09:17:35 +01:00
Oleg Agafonov
eae85e71bc UI: added new cheat engine for manual testing (see #4334) 2018-01-04 01:35:33 +04:00
LevelX2
bda8736b9e Some minot fixes /changes. 2017-10-03 17:06:46 +02:00
LevelX2
8221a68efe Minor fix for user handling. 2017-09-05 17:53:03 +02:00
LevelX2
d5284ae226 Fixed that some user data was not cleared as a user was disconnected. 2017-09-05 16:58:06 +02:00
LevelX2
cd9827300d Some minor changes. 2017-09-05 12:00:42 +02:00
LevelX2
abb2efa25c Removed unused code. 2017-09-04 09:54:00 +02:00
LevelX2
720351c065 Some minor user handling changes. 2017-09-02 00:46:24 +02:00
LevelX2
4c5e5d1367 GamManager added lock handling. 2017-09-01 23:22:39 +02:00
LevelX2
7019db9479 TableManager added lock handling. 2017-09-01 21:14:45 +02:00
LevelX2
84fe04b92d Replaced exception handling of invalid deck submitting by a user message. 2017-09-01 20:05:26 +02:00
LevelX2
a46538fc06 Removed some unused code. 2017-09-01 16:03:43 +02:00
LevelX2
d024d59626 * Some changes to chat and user handling. 2017-08-27 00:31:52 +02:00
LevelX2
52897094b3 * Some chnages to chat, user and player handling. 2017-08-26 18:26:55 +02:00
spjspj
95933c2edd Merge pull request #3861 from spjspj/master
Update penny dreadful list (http://pdmtgo.com/legal_cards.txt)
2017-08-20 22:04:33 +10:00
spjspj
4687943176 Update penny dreadful list (http://pdmtgo.com/legal_cards.txt) 2017-08-20 22:01:19 +10:00
LevelX2
d7ee6db923 Fixed condition for deck manipulation report. 2017-08-19 07:47:13 +02:00
LevelX2
fea9dfe8f8 Some more changes to the user handling. 2017-08-18 00:12:38 +02:00
LevelX2
351feb5a99 * Fixed that at match start if a player chooses who starts, the idle check was not started. 2017-08-17 00:36:59 +02:00
LevelX2
8ab9abb8e8 * Some more changes to user disconnect handling. 2017-08-16 07:51:48 +02:00
LevelX2
6244046330 * Some minor changes. 2017-08-14 16:48:48 +02:00
LevelX2
bae7f154df Changed user disconnect handling. The user in the server is no longer deleted directly after connection problem, disconnect or quit. The user object remains now for 8 minutes so the rejoin not possible after disconnect problem should be solved (I hope so). We will see. Also fixed the problem, that the table panel was not shown, if a player disconected and reconected. 2017-08-13 16:22:18 +02:00
spjspj
6435b9950a Add in Penny Dreadful EDH format (plus filter options for deck editor). 2017-08-04 17:13:25 +10:00
LevelX2
0ef94a588c * Fixed some null pointer or other exception bugs. 2017-07-29 19:13:42 +02:00
LevelX2
fbd90bb3e0 * Some minor reworks to prevent exceptions. 2017-07-23 23:16:27 +02:00
LevelX2
ee59ec80e2 * Fixed a problem that the table health check removed tables that were just created by adding 30 seconds check stop after table start to prevent checking while server still is initializing the table start. 2017-07-23 20:28:18 +02:00
LevelX2
4c33359fe2 * Some minor changes to logging and return code handling. 2017-07-23 11:06:23 +02:00
igoudt
905829561e talk to interfaces rather than implementations 2017-07-16 11:08:09 +02:00
igoudt
a167122459 loop to streams 2017-07-08 10:58:47 +02:00
LevelX2
0fd72c3010 * Added check if the deck was modified during sideboarding. 2017-06-05 20:23:09 +02:00
Anders Åstrand
ad0507e739 Ban ignored users from watching
This commit bans ignored users from watching
games where the creator has them on their ignore list.
2017-05-29 21:36:42 +02:00
spjspj
b467ff2080 Add emblems into the int.txt file 'emblem:Human:ElspethSunsChampionEmblem:1' for example 2017-05-21 12:42:50 +10:00
LevelX2
a068de8d18 * Rooftop Storm - Fixed wrong alternate cost handling (fixes #3387). 2017-05-17 15:06:52 +02:00
magenoxx
2a366c4022 #3323: New perspectives, fixed deadlock freeze 2017-05-13 18:57:33 +03:00
LevelX2
60cc3a7622 * Some minor fixed and log changes. 2017-04-25 17:37:38 +02:00
spjspj
be92bf9e41 Merge pull request #3231 from spjspj/master
Add in /card command for chat to get back card's: cost, type, text.
2017-04-25 10:20:09 +10:00
spjspj
1d46fec3ff Add in /card command for chat to get back card's: cost, type, text. 2017-04-25 10:18:00 +10:00
LevelX2
c085ea148a * Changed some logging messages. 2017-04-23 14:11:02 +02:00
spjspj
6ab4a94bd7 spjspj - Add in 'View Current Deck' option. 2017-04-23 13:06:09 +10:00
spjspj
94ea9b8ebd spjspj - Add option of adding in Tokens from the init.txt file
token:Human:MerfolkWizardToken:1
token:Human:GermToken:1
are examples
2017-04-23 02:51:49 +10:00
spjspj
f73c30812e Merge branch 'master' of https://github.com/spjspj/mage 2017-04-22 19:36:28 +10:00
spjspj
8845d77628 spjspj - Remove View Limited Deck option 2017-04-22 19:35:08 +10:00
spjspj
ca519894b5 spjspj - Add a View Limited Deck option to allow you to see your deck during matches. 2017-04-22 19:26:59 +10:00
spjspj
0cd4e06e22 spjspj - Add a View Limited Deck option to allow you to see your deck during matches. 2017-04-22 19:16:12 +10:00
LevelX2
a4afdb8d3f Removed some not needed error log messages. 2017-04-18 23:35:45 +02:00
magenoxx
fdf15262f9 Returned back my old old avatars 2017-04-18 19:56:35 +03:00
LevelX2
7e57c87f81 * Fixed a bug that prevented the 'Right Mouse Click' menu itmes 'Always Yes'/No' to show (fixes #3128). 2017-04-17 23:40:28 +02:00
LevelX2
8ad957447e Some minor changes to server connect handling and logging. 2017-04-17 18:28:35 +02:00
LevelX2
35791ac6b7 Set SocketWriteTimeout to 10 seconds. 2017-04-17 00:01:39 +02:00
LevelX2
88d121f6e9 Fixed a problem that Ai players did no longer work in tournaments. 2017-04-15 18:15:07 +02:00
LevelX2
f90d49ae0a Fixed a problem that general tournament messages (not send by a user) were no longer displayed. 2017-04-15 18:14:39 +02:00
ingmargoudt
8b44327312 wrong negation 2017-04-11 09:15:09 +02:00
ingmargoudt
c461d67d34 put disconnect reason message in enum 2017-04-04 21:59:26 +02:00
ingmargoudt
ff6d1541c3 clientcallbacks to enums 2017-04-04 21:52:15 +02:00
ingmargoudt
f04fecf7a6 broadcast fix 2017-04-04 20:40:37 +02:00
ingmargoudt
211d433ea9 playertype, enum singleton 2017-04-02 22:09:20 +02:00
LevelX2
4c35650b2b * Fixed a problem that chat messages were no longer broadcast (fixes #3050). 2017-04-02 10:51:00 +02:00
ingmargoudt
95869811ac fixed scope issue when logging in 2017-03-25 09:38:08 +01:00
ingmargoudt
334ad729a8 remove usermap by name, introduced more optionals 2017-03-22 20:49:48 +01:00
ingmargoudt
ff6c6405aa rewrites to optionals 2017-03-19 19:48:32 +01:00
ingmargoudt
234cfe9519 rewrote singleton to enum where applicable 2017-03-14 16:32:47 +01:00
Derek Monturo
0ecf679c7f if an empty email address is used, display a more specific message 2017-03-07 10:23:51 -05:00
ingmargoudt
372584f7ad changed cardtype from list to enumset 2017-03-03 17:04:32 +01:00
spjspj
4681232d18 Refactor color restriction in edh... 2017-03-01 09:11:29 +11:00
spjspj
faee8fb298 Refactor color restriction in edh. Change to look at commander color identity. 2017-03-01 08:56:52 +11:00
vraskulin
0bc9cf91a8 Minor improvements - StringBuilder now have initial value 2017-02-28 15:26:07 +03:00
vraskulin
eb58391fe2 Redundant StringBuilder creation. 2017-02-28 11:07:40 +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
vraskulin
498c8cf60c Made utility classes final to explicitly forbid it's inheritance 2017-02-27 17:03:38 +03:00
spjspj
aec46f366b Merge pull request #2894 from spjspj/master
Allow limiting a colour in edh
2017-02-27 23:35:57 +11:00
spjspj
5365f9cac5 Allow limiting a colour in edh 2017-02-27 23:33:58 +11: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
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
spjspj
a6e34c040b Limit messages to 500 characters 2017-02-18 20:32:22 +11: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
vraskulin
f1ef3bf68b Narrowed variables scope. 2017-02-15 16:05:18 +03:00
ingmargoudt
3a152ab3d6 rewrote enum comparisons, iterator to removeIf, added some stream and filters 2017-02-11 22:37:00 +01:00
ingmargoudt
20b24e3360 Merge pull request #2846 from kubikrubikvkube/master
Singleton object should not have map with values that can't be GCed
2017-02-11 20:43:32 +01:00
spjspj
d30e959f43 Merge pull request #2854 from spjspj/master
Implement Parallax Nexus
2017-02-11 20:13:32 +11:00
spjspj
4f13d89849 In testmode, ok to not send an email. 2017-02-11 01:26:52 +11:00
vraskulin
f99cd21275 Mostly code format fixes. 2017-02-09 18:30:31 +03:00
vraskulin
7cf4ca3cae Can be isEmpty 2017-02-09 17:44:14 +03:00
vraskulin
433b08238f We're gonna use standart parameterised constructor, instead of addAll method. 2017-02-09 17:42:05 +03:00
vraskulin
192110cd68 There is no need to call simple getter from the same class. 2017-02-09 17:40:51 +03:00
LevelX2
b8cc0120cb Merge origin/master 2017-02-06 21:21:16 +01:00
LevelX2
1dbd24cde6 Fixed a null pointer error in user. 2017-02-06 21:20:55 +01: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