Commit graph

84 commits

Author SHA1 Message Date
Oleg Agafonov
8b4c722ae2 GUI, deck: now a duplicated cards adds to the same place as original cards (close #3314); 2025-05-24 01:08:46 +04:00
TandEm
571eb69890
GUI, deck editor: improved toolbar icons in dark themes (#12873, #12920)
Co-authored-by: TandEm <tandem@users.noreply.github.com>
2024-09-28 19:44:19 +04:00
Oleg Agafonov
f9b59ca411 GUI, deck editor: added gui scale support for sort/order labels, fixed wrong label hints (part of #969, #6887) 2024-07-27 22:39:29 +04:00
Evan Kranzler
cdf91e66fb
Change tribal card type to kindred, update viashino and naga (#12271)
* change tribal card type to kindred

* update viashino to lizard

* update naga to snake
2024-06-08 13:55:52 -04:00
Oleg Agafonov
7817a5cac6 deck improves:
* gui: removed public deck hash info;
* gui: improved xmage dck-file - now it correctly load a card's amount (related to files from third party services);
* server: fixed wrong cheating warning on deck construction (closes #11877);
* refactor: removed outdated hash code and calculations;
* other: added docs, added multiple deck hash tests;
2024-04-10 22:18:07 +04:00
Oleg Agafonov
b315b46871 gui: deck editor - improved popup menu naming, added commander hint to sideboard, fixed generate/random deck dialog on cancel, removed outdated logs; 2024-03-08 00:48:25 +04:00
Oleg Agafonov
ad8e7daf97 refactor: improved card info 2024-02-18 22:40:30 +04:00
Oleg Agafonov
a0ed89035f GUI: fixed wrong clicks from additional mouse buttons (now only left clicks are allowed, closes #11455) 2023-11-23 09:23:01 +04:00
Artemis Kearney
9ba0da00ff
Basic groundwork for extra decks (contraptions, attractions) (#10378)
* extra deck cards not counted in deck size

* extra deck handling in deckbuilder

* move responsibility for extraDeckCard boolean to CardImpl

* remove redundant field copy
2023-08-06 21:06:32 -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
DeepCrimson
3ae5f4979d
Refactor: Remove redundant boxing/unboxing to parse int primitives (#9065) 2022-06-12 12:46:59 -04:00
Oleg Agafonov
a5dfe3ba14 * Cards: updated old sets with new scryfall numbers (fixed images download); 2021-06-30 16:51:01 +04:00
Oleg Agafonov
67ee6fbf25 * GUI: improved cards auto-sorting in deck editor, fixed some sorting bugs for separate mode (#7789); 2021-06-28 00:39:26 +04:00
Evan Kranzler
a61d5543fa replaced all instances of converted mana cost with mana value 2021-04-17 17:02:27 -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
486c0d7c2c GUI: added problem cards selection on legality label clicks (#6854) 2020-08-17 05:15:31 +04:00
Oleg Agafonov
735588cc0d Sets refactor:
* Duels of the Planeswalkers Promos set split to multiple sets (scryfall style);
* Fixed Masterpiece Series sets name;
2020-08-08 13:17:49 +04:00
Oleg Agafonov
7599acf1c8 Removed duplicated sets that was split into multiple (Champs, Game Day, Launch Party, Media Inserts, Super Series) 2020-08-08 11:00:07 +04:00
Oleg Agafonov
f746d4d8d2 Images download:
* removed duplicated set (Clash Pack);
* added images download for Eighth Edition Box, Ninth Edition Box;
2020-08-08 10:14:17 +04:00
Oleg Agafonov
9e6a348cb1
Merge branch 'master' into refactor_promo_sets 2020-08-07 02:48:40 +02:00
Oleg Agafonov
5585e1d878 GUI: deck editor improves:
* Fixed broken DeckArea form (form/java files synced);
* Improved panel sizes and scrolls fixes (small screens support, see #6881);
2020-07-25 12:12:05 +04:00
emerald000
75bc19d4a7 Add a button on the deck editor to change your cards to the oldest versions. 2020-05-05 01:24:34 -04:00
Thomas Hess
3b150daf27
Started updating the image sources for the new set structure. 2020-03-24 17:32:06 +01:00
Thomas Hess
71bdc431db
Aligned Grand Prix Promos set code with Scryfall.
(GPX → PGPX)
2020-03-24 17:31:57 +01:00
Thomas Hess
c74f42be81
Added the Junior APAC Series (PJAS) promotional set. 2020-03-24 17:31:56 +01:00
Thomas Hess
7fa1e9023d
Added the Gateway 2006 (PGTW) promotional set. 2020-03-24 17:31:56 +01:00
Thomas Hess
be87c306c4
Added the Two-Headed Giant Tournament (P2HG) promotional set. 2020-03-24 17:31:55 +01:00
Thomas Hess
db74a91b3c
Added the Junior Series Europe (PJSE) promotional set. 2020-03-24 17:31:55 +01:00
Thomas Hess
f374d74dc2
Add the Release Events (PREL) promotional set. 2020-03-24 17:31:55 +01:00
Thomas Hess
ba0d66c18b
Add the Vintage Championship (OVNT) promotional set. 2020-03-24 17:31:54 +01:00
Thomas Hess
443bc95a63
Split the Magic Player Rewards (MPRP) promotional set into the individual sets.
- Removed Magic Player Rewards (MPRP)
- Added MPR sets 2001 (MPR), 2003-2011 (P03 - P11)
2020-03-24 17:31:54 +01:00
Thomas Hess
6297650c3b
Split the Judge Gift Cards set (JP) into the individual sets as listed on Scryfall.
- Removed the JP set.
- Added G02-G11, J12-J20
- Fixed all usages in the test code
- Updated the sample decks that used these cards.
  The deck lists now contain the updated references.
- Added all Judge Gift sets to the "bling" sets list
2020-03-24 17:31:54 +01:00
Thomas Hess
d628303f3a
Fix set code clash with the old PrereleaseEvents set and the new Pro Tour Collector set (PTC).
Set the PrereleaseEvents code to PPRE, as listed on Scryfall.
2020-03-19 11:09:48 +01:00
Thomas Hess
12d1bd4bb4
Split the cummulative Friday Night Magic set into the individual sets.
- Removed set FNMP
- Added sets F00 - F17 (F18 does not contain cards, only tokens)
2020-03-19 11:09:48 +01:00
Thomas Hess
aab0b2e2fa
Split the cummulative Arena League set into the individual sets.
- Removed set ARENA
- Added sets PARL, PAL99, PAL00, PAL01, PAL02, PAL03, PAL04, PAL05, PAL06
2020-03-19 11:09:48 +01:00
Thomas Hess
b56882091e
Adjust European Land Program set abbreviation to match Scryfall. 2020-03-19 11:09:47 +01:00
Thomas Hess
4d3e41fa35
Adjust Asia Pacific Land Program set abbreviation to match Scryfall. 2020-03-19 11:09:46 +01:00
Oleg Agafonov
cb8d4dc340 * Non creature tokens - fixed rollback errors in AI games (example: Food token, see #6331);
Fixed other potentially NPE errors with rarity;
2020-03-06 03:27:46 +04:00
Ingmar Goudt
ae7919cd07 program towards Interface rather than implementations 2020-02-10 10:40:06 +01:00
Oleg Agafonov
eaaa37db11 Card render testing dialog improves:
* Added chooseable render testing (click by mouse on cards);
* Added column style render testing (many cards mode);
* Added tapped, face down and manifested render testing for permanents;
* CardView: fixed missing copy data (NPE for transformed cards);
* CardArea: added support to draw permanents;
* CardArea: added support of offsets between cards/columns;
2020-01-22 00:44:25 +04:00
Ingmar Goudt
5ba206111a add missing Override annotations 2019-07-14 20:28:48 +02:00
Oleg Agafonov
c45f64bdec UI: improved card render test dialog (added render mode and size choose); 2019-05-06 23:16:58 +04:00
Ingmar Goudt
3359c1f3f1 sonar 220219, criticals 2019-02-22 12:06:11 +01:00
Ingmar Goudt
056226d83c Sonar fixes 19022019 2019-02-19 21:51:45 +01:00
Ingmar Goudt
872eea7326 small cleanups in DragCardGrid 2019-02-18 21:32:20 +01:00
LevelX2
189984d3d6 DeckEditorPanel - Fixed some existing exceptions. 2018-10-10 15:37:26 +02:00
spjspj
1f39a3df51 .. 2018-07-09 01:35:57 +10:00
spjspj
5744bfa843 Add in new bar chart distribution for the 'M' mana analyse button. 2018-07-09 01:15:07 +10:00
spjspj
6b9a2bb12c Add in new bar chart distribution for the 'M' mana analyse button. 2018-07-08 21:28:25 +10:00