From e16026752006b13ed3467553f72b98c65c778e72 Mon Sep 17 00:00:00 2001 From: elcnesh Date: Tue, 9 Sep 2014 14:02:33 +0000 Subject: [PATCH] Refactor ForgeConstants to work with android also. --- .../src/main/java/forge/GuiDesktop.java | 7 - .../src/main/java/forge/view/Main.java | 8 + .../main/java/forge/interfaces/IGuiBase.java | 1 - .../java/forge/properties/ForgeConstants.java | 302 +++++++++++------- 4 files changed, 203 insertions(+), 115 deletions(-) diff --git a/forge-gui-desktop/src/main/java/forge/GuiDesktop.java b/forge-gui-desktop/src/main/java/forge/GuiDesktop.java index 4ea2a3b01d1..1376f2ce139 100644 --- a/forge-gui-desktop/src/main/java/forge/GuiDesktop.java +++ b/forge-gui-desktop/src/main/java/forge/GuiDesktop.java @@ -20,7 +20,6 @@ import javax.swing.MenuElement; import javax.swing.MenuSelectionManager; import javax.swing.SwingUtilities; -import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.tuple.Pair; import com.google.common.base.Function; @@ -122,12 +121,6 @@ public class GuiDesktop implements IGuiBase { return SwingUtilities.isEventDispatchThread(); } - @Override - public String getAssetsDir() { - return StringUtils.containsIgnoreCase(BuildInfo.getVersionString(), "svn") ? - "../forge-gui/" : ""; - } - @Override public ISkinImage getSkinIcon(FSkinProp skinProp) { if (skinProp == null) { return null; } diff --git a/forge-gui-desktop/src/main/java/forge/view/Main.java b/forge-gui-desktop/src/main/java/forge/view/Main.java index 2f390f93ce7..cfc3147c8e1 100644 --- a/forge-gui-desktop/src/main/java/forge/view/Main.java +++ b/forge-gui-desktop/src/main/java/forge/view/Main.java @@ -17,11 +17,15 @@ */ package forge.view; +import org.apache.commons.lang3.StringUtils; + import forge.GuiBase; import forge.GuiDesktop; import forge.Singletons; import forge.card.CardReaderExperiments; import forge.error.ExceptionHandler; +import forge.properties.ForgeConstants; +import forge.util.BuildInfo; /** * Main class for Forge's swing application view. @@ -31,6 +35,10 @@ public final class Main { * Main entrypoint for Forge */ public static void main(final String[] args) { + // Init ForgeConstants + final String assetsDir = StringUtils.containsIgnoreCase(BuildInfo.getVersionString(), "svn") ? "../forge-gui/" : ""; + ForgeConstants.init(assetsDir); + // HACK - temporary solution to "Comparison method violates it's general contract!" crash System.setProperty("java.util.Arrays.useLegacyMergeSort", "true"); diff --git a/forge-gui/src/main/java/forge/interfaces/IGuiBase.java b/forge-gui/src/main/java/forge/interfaces/IGuiBase.java index 42cbd47cfa3..ee88ea8551f 100644 --- a/forge-gui/src/main/java/forge/interfaces/IGuiBase.java +++ b/forge-gui/src/main/java/forge/interfaces/IGuiBase.java @@ -38,7 +38,6 @@ public interface IGuiBase { void invokeInEdtLater(Runnable runnable); void invokeInEdtAndWait(final Runnable proc); boolean isGuiThread(); - String getAssetsDir(); ISkinImage getSkinIcon(FSkinProp skinProp); ISkinImage getUnskinnedIcon(String path); void showBugReportDialog(String title, String text, boolean showExitAppBtn); diff --git a/forge-gui/src/main/java/forge/properties/ForgeConstants.java b/forge-gui/src/main/java/forge/properties/ForgeConstants.java index f0cad15b89f..eee3396bc9a 100644 --- a/forge-gui/src/main/java/forge/properties/ForgeConstants.java +++ b/forge-gui/src/main/java/forge/properties/ForgeConstants.java @@ -20,131 +20,107 @@ package forge.properties; import java.util.Collections; import java.util.Map; -import org.apache.commons.lang3.StringUtils; - -import forge.util.BuildInfo; - public final class ForgeConstants { - public static final String ASSETS_DIR = StringUtils.containsIgnoreCase(BuildInfo.getVersionString(), "svn") ? - "../forge-gui/" : ""; - public static final String PROFILE_FILE = ASSETS_DIR + "forge.profile.properties"; - public static final String PROFILE_TEMPLATE_FILE = PROFILE_FILE + ".example"; + public static void init(final String assetsDir) { + ASSETS_DIR = assetsDir; + PROFILE_FILE = ASSETS_DIR + "forge.profile.properties"; + PROFILE_TEMPLATE_FILE = PROFILE_FILE + ".example"; - public static final String RES_DIR = ASSETS_DIR + "res/"; - public static final String LISTS_DIR = RES_DIR + "lists/"; - public static final String KEYWORD_LIST_FILE = LISTS_DIR + "NonStackingKWList.txt"; - public static final String TYPE_LIST_FILE = LISTS_DIR + "TypeLists.txt"; - public static final String IMAGE_LIST_TOKENS_FILE = LISTS_DIR + "token-images.txt"; - public static final String IMAGE_LIST_QUEST_OPPONENT_ICONS_FILE = LISTS_DIR + "quest-opponent-icons.txt"; - public static final String IMAGE_LIST_QUEST_PET_SHOP_ICONS_FILE = LISTS_DIR + "quest-pet-shop-icons.txt"; - public static final String IMAGE_LIST_QUEST_TOKENS_FILE = LISTS_DIR + "quest-pet-token-images.txt"; - public static final String IMAGE_LIST_QUEST_BOOSTERS_FILE = LISTS_DIR + "booster-images.txt"; - public static final String IMAGE_LIST_QUEST_FATPACKS_FILE = LISTS_DIR + "fatpack-images.txt"; - public static final String IMAGE_LIST_QUEST_BOOSTERBOXES_FILE = LISTS_DIR + "boosterbox-images.txt"; - public static final String IMAGE_LIST_QUEST_PRECONS_FILE = LISTS_DIR + "precon-images.txt"; - public static final String IMAGE_LIST_QUEST_TOURNAMENTPACKS_FILE = LISTS_DIR + "tournamentpack-images.txt"; + RES_DIR = ASSETS_DIR + "res/"; + LISTS_DIR = RES_DIR + "lists/"; - public static final String CHANGES_FILE = ASSETS_DIR + "CHANGES.txt"; - public static final String LICENSE_FILE = ASSETS_DIR + "LICENSE.txt"; - public static final String README_FILE = ASSETS_DIR + "README.txt"; - public static final String HOWTO_FILE = RES_DIR + "howto.txt"; + KEYWORD_LIST_FILE = LISTS_DIR + "NonStackingKWList.txt"; + TYPE_LIST_FILE = LISTS_DIR + "TypeLists.txt"; + IMAGE_LIST_TOKENS_FILE = LISTS_DIR + "token-images.txt"; + IMAGE_LIST_QUEST_OPPONENT_ICONS_FILE = LISTS_DIR + "quest-opponent-icons.txt"; + IMAGE_LIST_QUEST_PET_SHOP_ICONS_FILE = LISTS_DIR + "quest-pet-shop-icons.txt"; + IMAGE_LIST_QUEST_TOKENS_FILE = LISTS_DIR + "quest-pet-token-images.txt"; + IMAGE_LIST_QUEST_BOOSTERS_FILE = LISTS_DIR + "booster-images.txt"; + IMAGE_LIST_QUEST_FATPACKS_FILE = LISTS_DIR + "fatpack-images.txt"; + IMAGE_LIST_QUEST_BOOSTERBOXES_FILE = LISTS_DIR + "boosterbox-images.txt"; + IMAGE_LIST_QUEST_PRECONS_FILE = LISTS_DIR + "precon-images.txt"; + IMAGE_LIST_QUEST_TOURNAMENTPACKS_FILE = LISTS_DIR + "tournamentpack-images.txt"; - public static final String DRAFT_DIR = RES_DIR + "draft/"; - public static final String DRAFT_RANKINGS_FILE = DRAFT_DIR + "rankings.txt"; - public static final String SEALED_DIR = RES_DIR + "sealed/"; - public static final String CARD_DATA_DIR = RES_DIR + "cardsfolder/"; - public static final String EDITIONS_DIR = RES_DIR + "editions/"; - public static final String BLOCK_DATA_DIR = RES_DIR + "blockdata/"; - public static final String DECK_CUBE_DIR = RES_DIR + "cube/"; - public static final String AI_PROFILE_DIR = RES_DIR + "ai/"; - public static final String SOUND_DIR = RES_DIR + "sound/"; - public static final String MUSIC_DIR = RES_DIR + "music/"; - public static final String LANG_DIR = RES_DIR + "languages/"; - public static final String EFFECTS_DIR = RES_DIR + "effects/"; + CHANGES_FILE = ASSETS_DIR + "CHANGES.txt"; + LICENSE_FILE = ASSETS_DIR + "LICENSE.txt"; + README_FILE = ASSETS_DIR + "README.txt"; + HOWTO_FILE = RES_DIR + "howto.txt"; - private static final String QUEST_DIR = RES_DIR + "quest/"; - public static final String QUEST_WORLD_DIR = QUEST_DIR + "world/"; - public static final String QUEST_PRECON_DIR = QUEST_DIR + "precons/"; - public static final String PRICES_BOOSTER_FILE = QUEST_DIR + "booster-prices.txt"; - public static final String BAZAAR_DIR = QUEST_DIR + "bazaar/"; - public static final String BAZAAR_INDEX_FILE = BAZAAR_DIR + "index.xml"; - public static final String DEFAULT_DUELS_DIR = QUEST_DIR + "duels"; - public static final String DEFAULT_CHALLENGES_DIR = QUEST_DIR + "challenges"; - public static final String THEMES_DIR = QUEST_DIR + "themes"; + DRAFT_DIR = RES_DIR + "draft/"; + DRAFT_RANKINGS_FILE = DRAFT_DIR + "rankings.txt"; + SEALED_DIR = RES_DIR + "sealed/"; + CARD_DATA_DIR = RES_DIR + "cardsfolder/"; + EDITIONS_DIR = RES_DIR + "editions/"; + BLOCK_DATA_DIR = RES_DIR + "blockdata/"; + DECK_CUBE_DIR = RES_DIR + "cube/"; + AI_PROFILE_DIR = RES_DIR + "ai/"; + SOUND_DIR = RES_DIR + "sound/"; + MUSIC_DIR = RES_DIR + "music/"; + LANG_DIR = RES_DIR + "languages/"; + EFFECTS_DIR = RES_DIR + "effects/"; - public static final String SKINS_DIR = RES_DIR + "skins/"; - public static final String DEFAULT_SKINS_DIR = SKINS_DIR + "default/"; - //don't associate these skin files with a directory since skin directory will be determined later - public static final String SPRITE_ICONS_FILE = "sprite_icons.png"; - public static final String SPRITE_FOILS_FILE = "sprite_foils.png"; - public static final String SPRITE_OLD_FOILS_FILE = "sprite_old_foils.png"; - public static final String SPRITE_AVATARS_FILE = "sprite_avatars.png"; - public static final String FONT_FILE = "font1.ttf"; - public static final String SPLASH_BG_FILE = "bg_splash.png"; - public static final String MATCH_BG_FILE = "bg_match.jpg"; - public static final String TEXTURE_BG_FILE = "bg_texture.jpg"; - public static final String DRAFT_DECK_IMG_FILE = "bg_draft_deck.png"; + QUEST_DIR = RES_DIR + "quest/"; + QUEST_WORLD_DIR = QUEST_DIR + "world/"; + QUEST_PRECON_DIR = QUEST_DIR + "precons/"; + PRICES_BOOSTER_FILE = QUEST_DIR + "booster-prices.txt"; + BAZAAR_DIR = QUEST_DIR + "bazaar/"; + BAZAAR_INDEX_FILE = BAZAAR_DIR + "index.xml"; + DEFAULT_DUELS_DIR = QUEST_DIR + "duels"; + DEFAULT_CHALLENGES_DIR = QUEST_DIR + "challenges"; + THEMES_DIR = QUEST_DIR + "themes"; + + SKINS_DIR = RES_DIR + "skins/"; + DEFAULT_SKINS_DIR = SKINS_DIR + "default/"; - // data tree roots - public static final String USER_DIR; - public static final String CACHE_DIR; - public static final String CACHE_CARD_PICS_DIR; - public static final Map CACHE_CARD_PICS_SUBDIR; - public static final int SERVER_PORT_NUMBER; - static { ForgeProfileProperties.load(); USER_DIR = ForgeProfileProperties.getUserDir(); CACHE_DIR = ForgeProfileProperties.getCacheDir(); CACHE_CARD_PICS_DIR = ForgeProfileProperties.getCardPicsDir(); CACHE_CARD_PICS_SUBDIR = Collections.unmodifiableMap(ForgeProfileProperties.getCardPicsSubDirs()); SERVER_PORT_NUMBER = ForgeProfileProperties.getServerPort(); - } - // data that is only in the profile dirs - public static final String USER_QUEST_DIR = USER_DIR + "quest/"; - public static final String USER_PREFS_DIR = USER_DIR + "preferences/"; - public static final String USER_GAMES_DIR = USER_DIR + "games/"; - public static final String LOG_FILE = USER_DIR + "forge.log"; - public static final String DECK_BASE_DIR = USER_DIR + "decks/"; - public static final String DECK_CONSTRUCTED_DIR = DECK_BASE_DIR + "constructed/"; - public static final String DECK_DRAFT_DIR = DECK_BASE_DIR + "draft/"; - public static final String DECK_WINSTON_DIR = DECK_BASE_DIR + "winston/"; - public static final String DECK_SEALED_DIR = DECK_BASE_DIR + "sealed/"; - public static final String DECK_SCHEME_DIR = DECK_BASE_DIR + "scheme/"; - public static final String DECK_PLANE_DIR = DECK_BASE_DIR + "planar/"; - public static final String DECK_COMMANDER_DIR = DECK_BASE_DIR + "commander/"; - public static final String QUEST_SAVE_DIR = USER_QUEST_DIR + "saves/"; - public static final String MAIN_PREFS_FILE = USER_PREFS_DIR + "forge.preferences"; - public static final String CARD_PREFS_FILE = USER_PREFS_DIR + "card.preferences"; - public static final String DECK_PREFS_FILE = USER_PREFS_DIR + "deck.preferences"; - public static final String QUEST_PREFS_FILE = USER_PREFS_DIR + "quest.preferences"; - public static final String ITEM_VIEW_PREFS_FILE = USER_PREFS_DIR + "item_view.preferences"; + USER_QUEST_DIR = USER_DIR + "quest/"; + USER_PREFS_DIR = USER_DIR + "preferences/"; + USER_GAMES_DIR = USER_DIR + "games/"; + LOG_FILE = USER_DIR + "forge.log"; + DECK_BASE_DIR = USER_DIR + "decks/"; + DECK_CONSTRUCTED_DIR = DECK_BASE_DIR + "constructed/"; + DECK_DRAFT_DIR = DECK_BASE_DIR + "draft/"; + DECK_WINSTON_DIR = DECK_BASE_DIR + "winston/"; + DECK_SEALED_DIR = DECK_BASE_DIR + "sealed/"; + DECK_SCHEME_DIR = DECK_BASE_DIR + "scheme/"; + DECK_PLANE_DIR = DECK_BASE_DIR + "planar/"; + DECK_COMMANDER_DIR = DECK_BASE_DIR + "commander/"; + QUEST_SAVE_DIR = USER_QUEST_DIR + "saves/"; + MAIN_PREFS_FILE = USER_PREFS_DIR + "forge.preferences"; + CARD_PREFS_FILE = USER_PREFS_DIR + "card.preferences"; + DECK_PREFS_FILE = USER_PREFS_DIR + "deck.preferences"; + QUEST_PREFS_FILE = USER_PREFS_DIR + "quest.preferences"; + ITEM_VIEW_PREFS_FILE = USER_PREFS_DIR + "item_view.preferences"; - // data that has defaults in the program dir but overrides/additions in the user dir - private static final String _DEFAULTS_DIR = RES_DIR + "defaults/"; - public static final String NO_CARD_FILE = _DEFAULTS_DIR + "no_card.jpg"; - public static final FileLocation WINDOW_LAYOUT_FILE = new FileLocation(_DEFAULTS_DIR, USER_PREFS_DIR, "window.xml"); - public static final FileLocation MATCH_LAYOUT_FILE = new FileLocation(_DEFAULTS_DIR, USER_PREFS_DIR, "match.xml"); - public static final FileLocation WORKSHOP_LAYOUT_FILE = new FileLocation(_DEFAULTS_DIR, USER_PREFS_DIR, "workshop.xml"); - public static final FileLocation EDITOR_LAYOUT_FILE = new FileLocation(_DEFAULTS_DIR, USER_PREFS_DIR, "editor.xml"); - public static final FileLocation GAUNTLET_DIR = new FileLocation(_DEFAULTS_DIR, USER_DIR, "gauntlet/"); + _DEFAULTS_DIR = RES_DIR + "defaults/"; + NO_CARD_FILE = _DEFAULTS_DIR + "no_card.jpg"; - // data that is only in the cached dir - private static final String PICS_DIR = CACHE_DIR + "pics/"; - public static final String DB_DIR = CACHE_DIR + "db/"; - public static final String FONTS_DIR = CACHE_DIR + "fonts/"; - public static final String CACHE_TOKEN_PICS_DIR = PICS_DIR + "tokens/"; - public static final String CACHE_ICON_PICS_DIR = PICS_DIR + "icons/"; - public static final String CACHE_SYMBOLS_DIR = PICS_DIR + "symbols/"; - public static final String CACHE_BOOSTER_PICS_DIR = PICS_DIR + "boosters/"; - public static final String CACHE_FATPACK_PICS_DIR = PICS_DIR + "fatpacks/"; - public static final String CACHE_BOOSTERBOX_PICS_DIR = PICS_DIR + "boosterboxes/"; - public static final String CACHE_PRECON_PICS_DIR = PICS_DIR + "precons/"; - public static final String CACHE_TOURNAMENTPACK_PICS_DIR = PICS_DIR + "tournamentpacks/"; - public static final String QUEST_CARD_PRICE_FILE = DB_DIR + "all-prices.txt"; + WINDOW_LAYOUT_FILE = new FileLocation(_DEFAULTS_DIR, USER_PREFS_DIR, "window.xml"); + MATCH_LAYOUT_FILE = new FileLocation(_DEFAULTS_DIR, USER_PREFS_DIR, "match.xml"); + WORKSHOP_LAYOUT_FILE = new FileLocation(_DEFAULTS_DIR, USER_PREFS_DIR, "workshop.xml"); + EDITOR_LAYOUT_FILE = new FileLocation(_DEFAULTS_DIR, USER_PREFS_DIR, "editor.xml"); + GAUNTLET_DIR = new FileLocation(_DEFAULTS_DIR, USER_DIR, "gauntlet/"); - public static final String[] PROFILE_DIRS = { + PICS_DIR = CACHE_DIR + "pics/"; + DB_DIR = CACHE_DIR + "db/"; + FONTS_DIR = CACHE_DIR + "fonts/"; + CACHE_TOKEN_PICS_DIR = PICS_DIR + "tokens/"; + CACHE_ICON_PICS_DIR = PICS_DIR + "icons/"; + CACHE_SYMBOLS_DIR = PICS_DIR + "symbols/"; + CACHE_BOOSTER_PICS_DIR = PICS_DIR + "boosters/"; + CACHE_FATPACK_PICS_DIR = PICS_DIR + "fatpacks/"; + CACHE_BOOSTERBOX_PICS_DIR = PICS_DIR + "boosterboxes/"; + CACHE_PRECON_PICS_DIR = PICS_DIR + "precons/"; + CACHE_TOURNAMENTPACK_PICS_DIR = PICS_DIR + "tournamentpacks/"; + + PROFILE_DIRS = new String[] { USER_DIR, CACHE_DIR, CACHE_CARD_PICS_DIR, @@ -164,7 +140,119 @@ public final class ForgeConstants { CACHE_BOOSTERBOX_PICS_DIR, CACHE_PRECON_PICS_DIR, CACHE_TOURNAMENTPACK_PICS_DIR }; + } + public static String ASSETS_DIR; + public static String PROFILE_FILE; + public static String PROFILE_TEMPLATE_FILE; + + public static String RES_DIR; + public static String LISTS_DIR; + public static String KEYWORD_LIST_FILE; + public static String TYPE_LIST_FILE; + public static String IMAGE_LIST_TOKENS_FILE; + public static String IMAGE_LIST_QUEST_OPPONENT_ICONS_FILE; + public static String IMAGE_LIST_QUEST_PET_SHOP_ICONS_FILE; + public static String IMAGE_LIST_QUEST_TOKENS_FILE; + public static String IMAGE_LIST_QUEST_BOOSTERS_FILE; + public static String IMAGE_LIST_QUEST_FATPACKS_FILE; + public static String IMAGE_LIST_QUEST_BOOSTERBOXES_FILE; + public static String IMAGE_LIST_QUEST_PRECONS_FILE; + public static String IMAGE_LIST_QUEST_TOURNAMENTPACKS_FILE; + + public static String CHANGES_FILE; + public static String LICENSE_FILE; + public static String README_FILE; + public static String HOWTO_FILE; + + public static String DRAFT_DIR; + public static String DRAFT_RANKINGS_FILE; + public static String SEALED_DIR; + public static String CARD_DATA_DIR; + public static String EDITIONS_DIR; + public static String BLOCK_DATA_DIR; + public static String DECK_CUBE_DIR; + public static String AI_PROFILE_DIR; + public static String SOUND_DIR; + public static String MUSIC_DIR; + public static String LANG_DIR; + public static String EFFECTS_DIR; + + private static String QUEST_DIR; + public static String QUEST_WORLD_DIR; + public static String QUEST_PRECON_DIR; + public static String PRICES_BOOSTER_FILE; + public static String BAZAAR_DIR; + public static String BAZAAR_INDEX_FILE; + public static String DEFAULT_DUELS_DIR; + public static String DEFAULT_CHALLENGES_DIR; + public static String THEMES_DIR; + + public static String SKINS_DIR; + public static String DEFAULT_SKINS_DIR; + //don't associate these skin files with a directory since skin directory will be determined later + public static final String SPRITE_ICONS_FILE = "sprite_icons.png"; + public static final String SPRITE_FOILS_FILE = "sprite_foils.png"; + public static final String SPRITE_OLD_FOILS_FILE = "sprite_old_foils.png"; + public static final String SPRITE_AVATARS_FILE = "sprite_avatars.png"; + public static final String FONT_FILE = "font1.ttf"; + public static final String SPLASH_BG_FILE = "bg_splash.png"; + public static final String MATCH_BG_FILE = "bg_match.jpg"; + public static final String TEXTURE_BG_FILE = "bg_texture.jpg"; + public static final String DRAFT_DECK_IMG_FILE = "bg_draft_deck.png"; + + // data tree roots + public static String USER_DIR; + public static String CACHE_DIR; + public static String CACHE_CARD_PICS_DIR; + public static Map CACHE_CARD_PICS_SUBDIR; + public static int SERVER_PORT_NUMBER; + + // data that is only in the profile dirs + public static String USER_QUEST_DIR; + public static String USER_PREFS_DIR; + public static String USER_GAMES_DIR; + public static String LOG_FILE; + public static String DECK_BASE_DIR; + public static String DECK_CONSTRUCTED_DIR; + public static String DECK_DRAFT_DIR; + public static String DECK_WINSTON_DIR; + public static String DECK_SEALED_DIR; + public static String DECK_SCHEME_DIR; + public static String DECK_PLANE_DIR; + public static String DECK_COMMANDER_DIR; + public static String QUEST_SAVE_DIR; + public static String MAIN_PREFS_FILE; + public static String CARD_PREFS_FILE; + public static String DECK_PREFS_FILE; + public static String QUEST_PREFS_FILE; + public static String ITEM_VIEW_PREFS_FILE; + + // data that has defaults in the program dir but overrides/additions in the user dir + private static String _DEFAULTS_DIR; + public static String NO_CARD_FILE; + public static FileLocation WINDOW_LAYOUT_FILE; + public static FileLocation MATCH_LAYOUT_FILE; + public static FileLocation WORKSHOP_LAYOUT_FILE; + public static FileLocation EDITOR_LAYOUT_FILE; + public static FileLocation GAUNTLET_DIR; + + // data that is only in the cached dir + private static String PICS_DIR; + public static String DB_DIR; + public static String FONTS_DIR; + public static String CACHE_TOKEN_PICS_DIR; + public static String CACHE_ICON_PICS_DIR; + public static String CACHE_SYMBOLS_DIR; + public static String CACHE_BOOSTER_PICS_DIR; + public static String CACHE_FATPACK_PICS_DIR; + public static String CACHE_BOOSTERBOX_PICS_DIR; + public static String CACHE_PRECON_PICS_DIR; + public static String CACHE_TOURNAMENTPACK_PICS_DIR; + public static String QUEST_CARD_PRICE_FILE; + + public static String[] PROFILE_DIRS; + // URLs private static final String URL_CARDFORGE = "http://cardforge.org"; public static final String URL_DRAFT_UPLOAD = URL_CARDFORGE + "/draftAI/submitDraftData.php";