Commit graph

250 commits

Author SHA1 Message Date
spjspj
843ecddfde Fix mana dialog box. 2018-04-27 23:35:56 +10:00
spjspj
b69f2c4fd8 Add 'Choose Matching' to deck editor 2018-03-31 17:55:55 +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
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
L_J
e7301e2c08
Implemented banding (#41) 2018-02-13 20:36:25 +01:00
Oleg Agafonov
8e3b610a0c Tests: fixed performance problem (x20 speed up, no need to call full garbage collector manually) 2018-01-09 19:27:25 +04:00
Oleg Agafonov
5cda60270c Added svg support: new render for mana icons in tables (deck editor, draft) 2017-11-26 00:50:25 +04:00
Oleg Agafonov
f81489c377 Add fallback card render (origin card render), see #4168 2017-11-18 05:13:38 +04:00
igoudt
9cbc2b7ea2 change client messages to enum rather than string 2017-10-03 15:18:31 +02:00
spjspj
b6a7998eab Mana Circles for deck analysis 2017-07-29 23:55:58 +10: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
spjspj
5514787871 Merge pull request #3350 from spjspj/master
Allow sort by EDH Power level in Deck Editor
2017-05-11 17:54:23 +10:00
spjspj
347d08298f Allow sort by EDH Power level in Deck Editor 2017-05-11 17:52:43 +10:00
LevelX2
ea439505ce Some minor changes. 2017-05-09 17:02:30 +02:00
igoudt
0528555075 make DefaulActionCallback an enum and remove unused parameter 2017-04-27 10:57:48 +02:00
drmDev
04746c5f4f Unit test confirming issue #3195 allowing Celebrant to attack while exerted 2017-04-25 22:07:51 -04:00
Mark Langen
b1ed5c3632 Fixed deck editor Drag & Drop
* Deck editor drag and drop was broken by the window borders change. Still not entirley sure what the root cause is (for some reason SwingUtilities.getDeepestComponentAt won't work correctly with the new setup), but this will fix it by expliticly specifying a deeper root component to start the search from (The MagePane that is active to be specific).
2017-04-14 17:07:52 -06:00
ingmargoudt
f519b12d0e introduced isCreature/isLand/isArtifact/... etc for CardView 2017-04-07 15:08:28 +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
ingmargoudt
2b91b88551 fixing some additional singleton classes 2017-03-16 09:48:02 +01:00
ingmargoudt
d966c82019 change enum equals to == for client 2017-03-01 17:03:11 +01:00
vraskulin
f99cd21275 Mostly code format fixes. 2017-02-09 18:30:31 +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
vraskulin
cb1b507076 Hotfix (client don't compile) after pr 2762 merged to master
There is no ActionListener in import block, so mage-client in current state can't be compiled. Changed ActionListener  to lambda
2017-01-11 11:49:19 +03:00
sotovdev
fe7aaedf1c Merge branch 'master' into bigRefactoring 2017-01-10 15:37:43 +03:00
spjspj
a4275ab658 Deck editor - Add a 'Bling my deck' button. 2017-01-10 22:26:59 +11:00
vraskulin
076840df53 Big refactoring
I used Intellij IDEA to automatically refactor code to achive 3 goals.
1) get rid of anonymouse classes, and replace the with lamba to get more readeable and clean code (like in TableWaitingDialog).
2) make effectively final  variables actually final to avoid inadvertent changes on it in further releases and keep objects as immutable, as possible.
3)  Get rid of unused imports (most of the changes) in whole project classes.
2017-01-09 19:16:53 +03:00
spjspj
24b4bc8e30 spjspj - Add invert selection to deck editor 2016-12-13 00:41:21 +11:00
spjspj
49cfaee144 spjspj - Add concept of 'Multiples' (work out in new edh decks which are not singleton). 2016-11-19 22:45:47 +11:00
spjspj
d7b1ae68ed spjspj - Sorcery count was double 2016-11-18 00:14:59 +11:00
LevelX2
89a739e902 * Removed debug messages. 2016-10-20 15:16:31 +02:00
fireshoes
b733f911f7 Added the four finalists from You Make the Cube. 2016-10-17 23:44:14 -05:00
fireshoes
c045204622 Added the four finalists from You Make the Cube. 2016-10-17 23:43:25 -05:00
fireshoes
abfcd0ab10 Added the four finalists from You Make the Cube. 2016-10-17 23:41:22 -05:00
Mark Langen
5af417ed0b More Drag & Drop editor fixes
* Fixed cards being blurry. The problem isn't completely fixed, but the fix will suffice in most cases. Card Images are only loaded in once, and the cards were loaded in initially at a small size instead of their eventual size after layout. Really they should reload images when resized, but I will tackle that later, and it's only noticable when significantly resizing cards within one usage of the editor anyways.
* Removed some of the unneeded UI on the sideboard half of the DeckView so that componently are less likely to overlap at a small size. Not sure how to ideally handle this, as Swing doesn't really provide an elegant way to hide components at small sizes, and I'm sure the user would rather the components overlap than be unable to resize the window as small as they want due to a minimum size requirement.
2016-10-04 00:23:13 -06:00
Mark Langen
f6d50ce04f Various new Drag & Drop deck editor improvements
* Shift-Click / Shift-Drag now work as expected as far as multi-selection
* Deck editor saves split pane split positions
* Card layout and sort settings are now saved along side the a deck when saving to the .dck format, so that you have back the exact same deck layout when you re-load the deck.
* Fixed the symbol image downloader to work around some of the large-size symbol images being missing on gatherer. Falls back to the medium sized images currently for those symbols.
2016-10-04 00:09:51 -06:00
Mark Langen
a018f2021b Fixed a bug with JFileChooser in the DeckEditorPanel
* On specific platforms (it seems Windows 7-10, JRT 7+), under our specific configuration, in the case where the user selects the exact same file as they chose during a previous selection, JFileChooser reports that the user selected a file, but returns chosen file = null. This commit works around that by assuming they chose the same file as last time in that case.
2016-09-28 23:27:46 -06:00
Mark Langen
615b93f8c3 Finished the new Drag & Drop deck view. It is currently implemented in main deck editor, and limited deck construction.
Still to do:
* Integrate it into the draft view
2016-09-28 20:57:23 -06:00
Mark Langen
56a3c6dc8c Mostly working Drag n Drop deck editor
* Still trying to iron out how to signal back events from cards moving between different drag and drop targets to the DeckEditorPane
2016-09-28 20:57:22 -06:00
Mark Langen
3c2c793f5d Drag n Drop Deck Editor WIP
* Working standalone proof-of-concept application in DragCardGrid.

* Still needs listener functionality in order to integrate it into the existing DeckEditorPanel class.
2016-09-28 20:57:22 -06:00
LevelX2
d7dd635bca Revert "introduced StringUtil class with .isEmpty(String input) and .isNotEmp…" 2016-09-16 23:55:54 +02:00
ingmargoudt
f1cf9e7adb introduced StringUtil class with .isEmpty(String input) and .isNotEmpty(String input), to replace str != null && str.length()>0 statements 2016-09-16 21:23:31 +02:00
ingmargoudt
71398d6d83 added some missing session references 2016-09-16 08:58:44 +02:00
ingmargoudt
3019991473 removed the Session out of local scope and introduced a static SessionHandler that acts as interface to remote.Session 2016-09-15 20:52:41 +02:00
ingmargoudt
3128bd2b4b replace [list].size() == 0 and [string].length() == 0 to use .isEmpty() instead 2016-09-14 15:27:31 +02:00
Mark Langen
d33f8a636e Most obvious bugs ironed out. Ready for PR. 2016-08-31 23:37:31 -06:00
Mark Langen
d5415d2d04 Working Card Rendering 2016-08-31 04:43:28 -06:00