Helper files completely removed (easy.txt, quests.txt, etc.) and hard-coded quest properties are a thing of the past.
Model and view fully separated for main panel in quest GUI.
Critical file: QuestEventManager can handle instantiation of all decks, once (ideally).
BoosterPacks in cardshop are functional. Need to discuss and balance their appearance
CardListViewer is caching Card objects to create them a single time. Set of cards shown now exactly matches CardPrinted.
removed the getCardsNumber function from BoosterGenerator (it doesn't know in advance how many cards caller will ask to generate)
moved upload picks from draft deckeditor to boosterDraft class
added an enum to describe limited game type
tests may start failing - they would need an initialized CardDb
Limited game classes have been cleaned (code moved to utility functions in draft, CustomLimited class contains setting to start with custom cardpool or boosters)
Closure introduced to utilities
Deckeditors no longer save all decks on close (there may remain minor bugs)
Deckeditors have mostly been cleaned of usage of global variables
OldGuiNewGame updates deck comboboxes properly
Download deck from tcgplayer feature temporary removed
cleaned up some warnings
=====
Big commit: Restructured Quest quests to use dck files. This required changes in many places. Among other things:
- Model and view separated for quest main panel items
- Quests and battles all generated from dck files
- dck files all updated to contain metadata, main, sideboard
- Quest dck files updated to contain [ai_extra_cards] and [human_extra_cards]
Left delegate methods in AllZone, marking their Javadoc (in English) for future deprecation.
Added some rudimentary tests on forge.model.FModel's getGameState and resetGameState methods.
Bug: 154
GameInfo is renamed to GameSummary and is now an observer for game state. It's purpose is now to hold statistic data on game and actions performed by players. The former functionality moved to ColorChanger and Phase (all combat damage prevention due to Fog spell). Since then game turns calculation is done properly (no need to add/substract 1)
Total cleanup at Gui_WinLose, removed all references to global objects for quest and match-related entites.
Some of quest rewards calculations use now special functions in QuestData class.
Tracking of win and lose conditions refactored (see Player and Upkeep classes)
* Updated former references to preferences to use FModel in forge.GuiDisplay4 and in forge.view.swing.OldGuiNewGame.
* Added simple unit test.
Bug: 106
- Added class forge.model.BuildInfo with unit test.
- Added unit test for forge.model.FModel.
- Added exception class forge.model.MultipleForgeJarsFoundError.
- Updated forge.view.swing.Main with some preliminary code for progress monitoring.
- Reduced CheckStyle, FindBugs, and PMD violations in these files and in net.slightlymagic.braids.util.testng.BraidsAssertFunctions.
- Added missing package-info in net.slightlymagic.braids.util.testng.