Commit graph

64 commits

Author SHA1 Message Date
Oleg Agafonov
53a072b759 GUI, preferences: removed 4 useless size settings, fixed wrong fonts in few places like miss image path (part of #969, #6887) 2024-07-27 21:35:33 +04:00
Oleg Agafonov
2631b31b8a GUI, preferences: improved theme switch at runtime (fixed main menu update); 2024-07-03 23:46:12 +04:00
Oleg Agafonov
64f3df035b GUI, preferences: added theme switch without app restart (for preview only, app must be restarted anyway for full GUI refresh); 2024-07-03 04:31:07 +04:00
Oleg Agafonov
e3dee4eac1 GUI, preferences: improved proxy tab, removed un-used servers list 2024-07-02 13:17:23 +04:00
Oleg Agafonov
34816be219 GUI: added missing image info in card popup hint (works in any render mode, support cards, tokens, emblems, etc - can be disabled in Preferences, related to #7759, #2158); 2024-02-19 12:40:35 +04:00
Susucre
ec3e067c9d
GUI: display P/T of vehicles in hover panel (#11153) 2023-09-12 21:43:25 -04:00
Alexander Novotny
76f30b3046
Added attachment controller info (#10440)
Fixes magefree/mage#9971
2023-06-09 05:34:26 +04:00
Evan Kranzler
947351932b
Ready for Review: Implementing Battles (#10156)
* add types and subtypes

* add startingDefense attribute

* [MOM] Implement Invasion of Ravnica / Guildpact Paragon

* fix two small errors

* refactor various instances of "any target"

* fully implement defense counters

* battles can now be attacked

* [MOM] Implement Invasion of Dominaria / Serra Faithkeeper

* [MOM] Implement Invasion of Innistrad / Deluge of the Dead

* [MOM] Implement Invasion of Kaladesh / Aetherwing, Golden-Scale Flagship

* [MOM] Implement Invasion of Kamigawa / Rooftop Saboteurs

* [MOM] Implement Invasion of Karsus / Refraction Elemental

* [MOM] Implement Invasion of Tolvada / The Broken Sky

* simplify battle info ability

* fix verify failure

* some more fixes for attacking battles

* [MOM] Implement Invasion of Kaldheim / Pyre of the World Tree

* [MOM] Implement Invasion of Lorwyn / Winnowing Forces

* [MOM] Implement Invasion of Moag / Bloomwielder Dryads

* [MOM] Implement Invasion of Shandalar / Leyline Surge

* [MOM] Implement Invasion of Belenon / Belenon War Anthem

* [MOM] Implement Invasion of Pyrulea / Gargantuan Slabhorn

* [MOM] Implement Invasion of Vryn / Overloaded Mage-Ring

* [MOM] Implement Marshal of Zhalfir

* [MOM] Implement Sunfall

* implement protectors for sieges

* partially implement siege defeated trigger

* fix verify failure

* some updates to blocking

* [MOM] Implement Invasion of Mercadia / Kyren Flamewright

* [MOM] Implement Invasion of Theros / Ephara, Ever-Sheltering

* [MOM] Implement Invasion of Ulgrotha / Grandmother Ravi Sengir

* [MOM] Implement Invasion of Xerex / Vertex Paladin

* add initial battle test

* fix verify failure

* [MOM] Implement Invasion of Amonkhet / Lazotep Convert

* [MOM] update spoiler

* update how protectors are chosen

* update text

* battles can't block

* add control change test

* rename battle test for duel

* add multiplayer test

* [MOM] Implement Invasion of Alara / Awaken the Maelstrom

* [MOM] Implement Invasion of Eldraine

* [MOM] Implement Invasion of Ergamon / Truga Cliffhanger

* [MOM] Implement Invasion of Ixalan / Belligerent Regisaur

* battles now cast transformed (this is super hacky but we need to refactor TDFCs anyway)

* add TODO

* add ignore for randomly failing test

* a few small fixes

* add defense to MtgJsonCard (unused like loyalty)

* implement ProtectorIdPredicate

* small fixes
2023-04-13 20:03:16 -04:00
Oleg Agafonov
275e996c08 * Performance: memory usage optimization for deck editor (removed bloated usage of ManaCosts -> ManaColor objects, see #7515); 2021-02-12 22:00:16 +04:00
Oleg Agafonov
a1da5ef437 * GUI: new reworked GUI and card render engine, card icons and dozens of other fixes (see full list in related PR); 2021-01-30 16:38:55 +04:00
Oleg Agafonov
ab8a4eb26a Little fixes and code refactor 2020-08-29 18:09:44 +04:00
Oleg Agafonov
0be7d6579b * UI: split cards - fixed wrong card names in rules text and hints (#6549); 2020-05-18 08:24:17 +04:00
Leandro Doctors
855a9cc427 fixup! program towards Interface rather than implementations 2020-03-22 20:42:11 -03:00
Ingmar Goudt
ae7919cd07 program towards Interface rather than implementations 2020-02-10 10:40:06 +01:00
Oleg Agafonov
9518306016 * UI: added auto-size of PT box in mtgo render mode (large values are now visible); 2019-05-11 14:55:55 +04:00
Oleg Agafonov
5c48803ef9 * UI: improved cards appearance:
* added colorized PT values (boosted is green, unboosted is red);
  * added toughness with damage calcs (damaged is red);
  * image render: now title and PT texts are readable/big in small cards;
  * mtgo render: improved image quality (less pixelated now);
  * mtgo render: improved PT font (bold now);
2019-05-10 10:01:51 +04:00
Ingmar Goudt
8319fbf9ad replace public fields with encapsulation 2019-03-03 09:51:14 +01:00
Oleg Agafonov
043a7af086 Added condition hints with good/bad icons for cards 2019-02-05 13:05:10 +04:00
GrayedFox
42b539c41f
renamed utility functions for clarity 2018-05-23 16:49:48 +02:00
GrayedFox
ebc36c503e
add restoring tournament table chat divider location
refactor getting current bounds into utility function
2018-05-22 20:36:05 +02:00
GrayedFox
5822a7d94d
refactor divider setting and saving into utility functions
refactor setting and saving filters into utility functions
2018-05-22 20:11:07 +02: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
LevelX2
3b19304f64 * Fixed that soulbond arrow to paired card was not shown and improved soulbond text on permanent. 2018-02-14 12:41:44 +01:00
LevelX2
18cab46b05 * Improved editor search function, fixed some problems with search for split card rules. 2017-07-29 11:43:05 +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
ingmargoudt
1649530e7b remove helper functions from cardUtil 2017-04-07 16:40:38 +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
d966c82019 change enum equals to == for client 2017-03-01 17:03:11 +01: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
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
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
fwannmacher
9b5a02c09c - Fixed issue #2075 2016-08-04 09:52:56 -03:00
LevelX2
e15807b9ed * Some more changes to adjustment possibilities of GUI size. 2016-02-19 16:30:52 +01:00
LevelX2
77eff0984a Some more changes to GUI to better support high screen resolutions. 2016-02-18 00:27:48 +01:00
LevelX2
5ca4e3bc7a Some more changes to GUI to better support high screen resolutions. 2016-02-16 23:15:34 +01:00
LevelX2
1835671f3d Some more changes to GUI to better support high screen resolutions. 2016-02-14 13:41:43 +01:00
LevelX2
81934e32e3 * Revealing the top card of the library is now also shown by an extra window (no longer hiding life). Now Iconyfying and deiconifying does not change the postion of the reveal window. Iconifyed window width was a bit raised to be able to read more of the title in that state. 2015-06-25 01:07:34 +02:00
LevelX2
87f919ecac * Reworked handling of revealed and look at windows. Windows can stay open now and moved to a position and stay there. 2015-06-21 23:49:16 +02:00
LevelX2
bafd27f5b3 Identifier are shown for Looked at and revealed cards view 2015-06-03 17:05:59 +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
4cf21739c4 * Saved position and size of choice window during a game session. 2015-05-06 16:58:14 +02:00
LevelX2
e29eea791c * Fixed null pointer exception for tooltip and triggered abilities (made a kind of workaround and it's still unclear to me what caused this problems). 2015-03-12 16:54:30 +01:00
LevelX2
424448b38f * Handling of resource images fixed. 2014-12-14 22:54:58 +01:00
LevelX2
1ed1bc2e0d * Added a color indication in the tooltip window. 2014-12-12 11:34:34 +01:00
LevelX2
4ae5ac129d Some tweaking to the size of the card popup window. 2014-11-27 15:20:45 +01:00