Move custom skins to cache

- added skins downloader
This commit is contained in:
Anthony Calosa
2021-02-10 14:55:12 +08:00
parent 0f53353852
commit ffb0b8bb89
136 changed files with 204 additions and 18 deletions

View File

@@ -6,7 +6,6 @@ import com.google.common.collect.Lists;
import com.google.common.collect.Maps; import com.google.common.collect.Maps;
import forge.LobbyPlayer; import forge.LobbyPlayer;
import forge.ai.LobbyPlayerAi; import forge.ai.LobbyPlayerAi;
import forge.card.CardStateName;
import forge.game.*; import forge.game.*;
import forge.game.card.*; import forge.game.card.*;
import forge.game.card.token.TokenInfo; import forge.game.card.token.TokenInfo;

View File

@@ -286,4 +286,11 @@ public final class FileUtil {
}, 5000); //abort reading file if it takes longer than 5 seconds }, 5000); //abort reading file if it takes longer than 5 seconds
return lines; return lines;
} }
public static String getParent(final String resourcePath) {
File f = new File(resourcePath);
if (f.getParentFile().getName() != null)
return f.getParentFile().getName();
return "";
}
} }

View File

@@ -60,6 +60,11 @@ public enum CSubmenuDownloaders implements ICDoc {
new GuiDownloader(new GuiDownloadPrices()).show(); new GuiDownloader(new GuiDownloadPrices()).show();
} }
}; };
private final UiCommand cmdDownloadSkins = new UiCommand() {
@Override public void run() {
new GuiDownloader(new GuiDownloadSkins()).show();
}
};
private final UiCommand cmdHowToPlay = new UiCommand() { private final UiCommand cmdHowToPlay = new UiCommand() {
@Override public void run() { @Override public void run() {
VSubmenuDownloaders.SINGLETON_INSTANCE.showHowToPlay(); VSubmenuDownloaders.SINGLETON_INSTANCE.showHowToPlay();
@@ -102,6 +107,7 @@ public enum CSubmenuDownloaders implements ICDoc {
view.setImportPicturesCommand(cmdImportPictures); view.setImportPicturesCommand(cmdImportPictures);
view.setHowToPlayCommand(cmdHowToPlay); view.setHowToPlayCommand(cmdHowToPlay);
view.setDownloadPricesCommand(cmdDownloadPrices); view.setDownloadPricesCommand(cmdDownloadPrices);
view.setDownloadSkinsCommand(cmdDownloadSkins);
view.setLicensingCommand(cmdLicensing); view.setLicensingCommand(cmdLicensing);
} }

View File

@@ -66,6 +66,7 @@ public enum VSubmenuDownloaders implements IVSubmenu<CSubmenuDownloaders> {
private final FLabel btnImportPictures = _makeButton(localizer.getMessage("btnImportPictures")); private final FLabel btnImportPictures = _makeButton(localizer.getMessage("btnImportPictures"));
private final FLabel btnHowToPlay = _makeButton(localizer.getMessage("btnHowToPlay")); private final FLabel btnHowToPlay = _makeButton(localizer.getMessage("btnHowToPlay"));
private final FLabel btnDownloadPrices = _makeButton(localizer.getMessage("btnDownloadPrices")); private final FLabel btnDownloadPrices = _makeButton(localizer.getMessage("btnDownloadPrices"));
private final FLabel btnDownloadSkins = _makeButton(localizer.getMessage("btnDownloadSkins"));
private final FLabel btnLicensing = _makeButton(localizer.getMessage("btnLicensing")); private final FLabel btnLicensing = _makeButton(localizer.getMessage("btnLicensing"));
/** /**
@@ -102,6 +103,9 @@ public enum VSubmenuDownloaders implements IVSubmenu<CSubmenuDownloaders> {
pnlContent.add(btnDownloadPrices, constraintsBTN); pnlContent.add(btnDownloadPrices, constraintsBTN);
pnlContent.add(_makeLabel(localizer.getMessage("lblDownloadPrices")), constraintsLBL); pnlContent.add(_makeLabel(localizer.getMessage("lblDownloadPrices")), constraintsLBL);
pnlContent.add(btnDownloadSkins, constraintsBTN);
pnlContent.add(_makeLabel(localizer.getMessage("lblDownloadSkins")), constraintsLBL);
} else { } else {
String text = localizer.getMessage("lblYourVersionOfJavaIsTooOld"); String text = localizer.getMessage("lblYourVersionOfJavaIsTooOld");
@@ -178,6 +182,7 @@ public enum VSubmenuDownloaders implements IVSubmenu<CSubmenuDownloaders> {
public void setHowToPlayCommand(UiCommand command) { btnHowToPlay.setCommand(command); } public void setHowToPlayCommand(UiCommand command) { btnHowToPlay.setCommand(command); }
public void setDownloadPricesCommand(UiCommand command) { btnDownloadPrices.setCommand(command); } public void setDownloadPricesCommand(UiCommand command) { btnDownloadPrices.setCommand(command); }
public void setLicensingCommand(UiCommand command) { btnLicensing.setCommand(command); } public void setLicensingCommand(UiCommand command) { btnLicensing.setCommand(command); }
public void setDownloadSkinsCommand(UiCommand command) { btnDownloadSkins.setCommand(command); }
public void focusTopButton() { public void focusTopButton() {
btnDownloadPics.requestFocusInWindow(); btnDownloadPics.requestFocusInWindow();

View File

@@ -1089,6 +1089,7 @@ public class FSkin {
if (allSkins == null) { //initialize if (allSkins == null) { //initialize
allSkins = new ArrayList<>(); allSkins = new ArrayList<>();
allSkins.add("Default");//init default
final List<String> skinDirectoryNames = getSkinDirectoryNames(); final List<String> skinDirectoryNames = getSkinDirectoryNames();
for (String skinDirectoryName : skinDirectoryNames) { for (String skinDirectoryName : skinDirectoryNames) {
allSkins.add(WordUtil.capitalize(skinDirectoryName.replace('_', ' '))); allSkins.add(WordUtil.capitalize(skinDirectoryName.replace('_', ' ')));
@@ -1101,7 +1102,7 @@ public class FSkin {
// Non-default (preferred) skin name and dir. // Non-default (preferred) skin name and dir.
preferredName = skinName.toLowerCase().replace(' ', '_'); preferredName = skinName.toLowerCase().replace(' ', '_');
preferredDir = ForgeConstants.SKINS_DIR + preferredName + "/"; preferredDir = preferredName.equals("default") ? ForgeConstants.DEFAULT_SKINS_DIR : ForgeConstants.CACHE_SKINS_DIR + preferredName + "/";
if (onInit) { if (onInit) {
final File f = new File(preferredDir + ForgeConstants.SPLASH_BG_FILE); final File f = new File(preferredDir + ForgeConstants.SPLASH_BG_FILE);
@@ -1371,7 +1372,7 @@ public class FSkin {
public static List<String> getSkinDirectoryNames() { public static List<String> getSkinDirectoryNames() {
final List<String> mySkins = new ArrayList<>(); final List<String> mySkins = new ArrayList<>();
final File dir = new File(ForgeConstants.SKINS_DIR); final File dir = new File(ForgeConstants.CACHE_SKINS_DIR);
final String[] children = dir.list(); final String[] children = dir.list();
if (children == null) { if (children == null) {
System.err.println("FSkin > can't find skins directory!"); System.err.println("FSkin > can't find skins directory!");

View File

@@ -97,7 +97,7 @@ public class FSkin {
Forge.hdstart = false; Forge.hdstart = false;
//ensure skins directory exists //ensure skins directory exists
final FileHandle dir = Gdx.files.absolute(ForgeConstants.SKINS_DIR); final FileHandle dir = Gdx.files.absolute(ForgeConstants.CACHE_SKINS_DIR);
if (!dir.exists() || !dir.isDirectory()) { if (!dir.exists() || !dir.isDirectory()) {
//if skins directory doesn't exist, point to internal assets/skin directory instead for the sake of the splash screen //if skins directory doesn't exist, point to internal assets/skin directory instead for the sake of the splash screen
preferredDir = Gdx.files.internal("fallback_skin"); preferredDir = Gdx.files.internal("fallback_skin");
@@ -106,6 +106,7 @@ public class FSkin {
if (splashScreen != null) { if (splashScreen != null) {
if (allSkins == null) { //initialize if (allSkins == null) { //initialize
allSkins = new Array<>(); allSkins = new Array<>();
allSkins.add("Default"); //init default
final Array<String> skinDirectoryNames = getSkinDirectoryNames(); final Array<String> skinDirectoryNames = getSkinDirectoryNames();
for (final String skinDirectoryName : skinDirectoryNames) { for (final String skinDirectoryName : skinDirectoryNames) {
allSkins.add(WordUtil.capitalize(skinDirectoryName.replace('_', ' '))); allSkins.add(WordUtil.capitalize(skinDirectoryName.replace('_', ' ')));
@@ -115,7 +116,7 @@ public class FSkin {
} }
// Non-default (preferred) skin name and dir. // Non-default (preferred) skin name and dir.
preferredDir = Gdx.files.absolute(ForgeConstants.SKINS_DIR + preferredName); preferredDir = Gdx.files.absolute(preferredName.equals("default") ? ForgeConstants.BASE_SKINS_DIR + preferredName : ForgeConstants.CACHE_SKINS_DIR + preferredName);
if (!preferredDir.exists() || !preferredDir.isDirectory()) { if (!preferredDir.exists() || !preferredDir.isDirectory()) {
preferredDir.mkdirs(); preferredDir.mkdirs();
} }
@@ -219,8 +220,12 @@ public class FSkin {
try { try {
textures.put(f1.path(), new Texture(f1)); textures.put(f1.path(), new Texture(f1));
textures.put(f2.path(), new Texture(f2)); Pixmap preferredIcons = new Pixmap(f1);
Pixmap preferredIcons = new Pixmap(f2); if (f2.exists()) {
textures.put(f2.path(), new Texture(f2));
preferredIcons = new Pixmap(f2);
}
textures.put(f3.path(), new Texture(f3)); textures.put(f3.path(), new Texture(f3));
if (f6.exists()) { if (f6.exists()) {
textures.put(f6.path(), new Texture(f6)); textures.put(f6.path(), new Texture(f6));
@@ -429,7 +434,7 @@ public class FSkin {
public static Array<String> getSkinDirectoryNames() { public static Array<String> getSkinDirectoryNames() {
final Array<String> mySkins = new Array<>(); final Array<String> mySkins = new Array<>();
final FileHandle dir = Gdx.files.absolute(ForgeConstants.SKINS_DIR); final FileHandle dir = Gdx.files.absolute(ForgeConstants.CACHE_SKINS_DIR);
for (FileHandle skinFile : dir.list()) { for (FileHandle skinFile : dir.list()) {
String skinName = skinFile.name(); String skinName = skinFile.name();
if (skinName.equalsIgnoreCase(".svn")) { continue; } if (skinName.equalsIgnoreCase(".svn")) { continue; }

View File

@@ -8,6 +8,7 @@ import forge.download.GuiDownloadQuestImages;
import forge.download.GuiDownloadSetPicturesLQ; import forge.download.GuiDownloadSetPicturesLQ;
import forge.download.GuiDownloadService; import forge.download.GuiDownloadService;
import forge.download.GuiDownloadSkins;
import forge.util.Localizer; import forge.util.Localizer;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
@@ -76,7 +77,13 @@ public class FilesPage extends TabPage<SettingsScreen> {
return new GuiDownloadPrices(); return new GuiDownloadPrices();
} }
}, 0); }, 0);
lstItems.addItem(new ContentDownloader(localizer.getMessage("btnDownloadSkins"),
localizer.getMessage("lblDownloadSkins")) {
@Override
protected GuiDownloadService createService() {
return new GuiDownloadSkins();
}
}, 0);
//storage locations //storage locations
final StorageOption cardPicsOption = new StorageOption(localizer.getMessage("lblCardPicsLocation"), ForgeProfileProperties.getCardPicsDir()) { final StorageOption cardPicsOption = new StorageOption(localizer.getMessage("lblCardPicsLocation"), ForgeProfileProperties.getCardPicsDir()) {
@Override @Override

View File

@@ -510,8 +510,10 @@ public class SettingsPage extends TabPage<SettingsScreen> {
public CustomSelectSetting(FPref pref0, String label0, String description0, Iterable<String> options0) { public CustomSelectSetting(FPref pref0, String label0, String description0, Iterable<String> options0) {
super(pref0, label0 + ":", description0); super(pref0, label0 + ":", description0);
for (String option : options0) { if (options0 != null) {
options.add(option); for (String option : options0) {
options.add(option);
}
} }
} }
public <E extends Enum<E>> CustomSelectSetting(FPref pref0, String label0, String description0, Class<E> enumData) { public <E extends Enum<E>> CustomSelectSetting(FPref pref0, String label0, String description0, Class<E> enumData) {

View File

@@ -206,6 +206,7 @@ lblListImageData=Prüfe auf von Forge nicht unterstütze Karten und fehlende Kar
btnImportPictures=Daten importieren btnImportPictures=Daten importieren
btnHowToPlay=Wie man spielt btnHowToPlay=Wie man spielt
btnDownloadPrices=Kartenpreise herunterladen btnDownloadPrices=Kartenpreise herunterladen
btnDownloadSkins=Download Skins
btnLicensing=Lizenzhinweis btnLicensing=Lizenzhinweis
lblCheckForUpdates=Prüfe Server auf eine aktuellere Version lblCheckForUpdates=Prüfe Server auf eine aktuellere Version
lblDownloadPics=Lädt ein Standardbild pro Karte. lblDownloadPics=Lädt ein Standardbild pro Karte.
@@ -214,6 +215,7 @@ lblDownloadSetPics=Lädt alle Bilder pro Karte. Eines für jedes Set, in welchem
lblDownloadQuestImages=Lädt die Bilder für den Quest-Modus. lblDownloadQuestImages=Lädt die Bilder für den Quest-Modus.
lblDownloadAchievementImages=Lädt die Bilder zu den möglichen Erfolgen. Verschönert die Trophäensammlung. lblDownloadAchievementImages=Lädt die Bilder zu den möglichen Erfolgen. Verschönert die Trophäensammlung.
lblDownloadPrices=Lädt aktuelle Kartenpreise für den Kartenladen im Spiel. lblDownloadPrices=Lädt aktuelle Kartenpreise für den Kartenladen im Spiel.
lblDownloadSkins=Download available skins used in customizing forge appearance.
lblYourVersionOfJavaIsTooOld=Deine Java-Version ist leider zu alt. lblYourVersionOfJavaIsTooOld=Deine Java-Version ist leider zu alt.
lblPleaseUpdateToTheLatestVersionOfJava=Bitte aktualisiere auf die neueste Java-Version. lblPleaseUpdateToTheLatestVersionOfJava=Bitte aktualisiere auf die neueste Java-Version.
lblYoureRunning=Du nutzt lblYoureRunning=Du nutzt

View File

@@ -206,6 +206,7 @@ lblListImageData=Audit cards not implemented by Forge and missing card images
btnImportPictures=Import Data btnImportPictures=Import Data
btnHowToPlay=How To Play btnHowToPlay=How To Play
btnDownloadPrices=Download Card Prices btnDownloadPrices=Download Card Prices
btnDownloadSkins=Download Skins
btnLicensing=License Details btnLicensing=License Details
lblCheckForUpdates=Check Forge server to see if there''s a more recent release lblCheckForUpdates=Check Forge server to see if there''s a more recent release
lblDownloadPics=Download default card picture for each card. lblDownloadPics=Download default card picture for each card.
@@ -214,6 +215,7 @@ lblDownloadSetPics=Download all pictures of each card (one for each set the card
lblDownloadQuestImages=Download tokens and icons used in Quest mode. lblDownloadQuestImages=Download tokens and icons used in Quest mode.
lblDownloadAchievementImages=Download achievement images to really make your trophies stand out. lblDownloadAchievementImages=Download achievement images to really make your trophies stand out.
lblDownloadPrices=Download up-to-date price list for in-game card shops. lblDownloadPrices=Download up-to-date price list for in-game card shops.
lblDownloadSkins=Download available skins used in customizing forge appearance.
lblYourVersionOfJavaIsTooOld=Your version of Java is too old to use the content downloaders. lblYourVersionOfJavaIsTooOld=Your version of Java is too old to use the content downloaders.
lblPleaseUpdateToTheLatestVersionOfJava=Please update to the latest version of Java lblPleaseUpdateToTheLatestVersionOfJava=Please update to the latest version of Java
lblYoureRunning=You''re running lblYoureRunning=You''re running

View File

@@ -206,6 +206,7 @@ lblListImageData=Audita cartas no implementadas por Forge e imágenes de cartas
btnImportPictures=Importar Datos btnImportPictures=Importar Datos
btnHowToPlay=Cómo jugar (Inglés) btnHowToPlay=Cómo jugar (Inglés)
btnDownloadPrices=Descargar precios de las cartas btnDownloadPrices=Descargar precios de las cartas
btnDownloadSkins=Download Skins
btnLicensing=Detalles de la licencia btnLicensing=Detalles de la licencia
lblCheckForUpdates=Comprueba si en el servidor de Forge existe alguna versión más reciente lblCheckForUpdates=Comprueba si en el servidor de Forge existe alguna versión más reciente
lblDownloadPics=Descarga una única carta de la última edición donde apareció. lblDownloadPics=Descarga una única carta de la última edición donde apareció.
@@ -214,6 +215,7 @@ lblDownloadSetPics=Descarga las cartas de todas las ediciones (una por cada edic
lblDownloadQuestImages=Descarga fichas e íconos utilizados en el modo Aventura. lblDownloadQuestImages=Descarga fichas e íconos utilizados en el modo Aventura.
lblDownloadAchievementImages=Descarga las imágenes de los trofeos para que destaquen. lblDownloadAchievementImages=Descarga las imágenes de los trofeos para que destaquen.
lblDownloadPrices=Descarga la lista de precios actualizada para la tienda de cartas del juego. lblDownloadPrices=Descarga la lista de precios actualizada para la tienda de cartas del juego.
lblDownloadSkins=Download available skins used in customizing forge appearance.
lblYourVersionOfJavaIsTooOld=Tu versión de Java es demasiado antigua para usar los descargadores de contenido. lblYourVersionOfJavaIsTooOld=Tu versión de Java es demasiado antigua para usar los descargadores de contenido.
lblPleaseUpdateToTheLatestVersionOfJava=Por favor, actualiza a la última versión de Java lblPleaseUpdateToTheLatestVersionOfJava=Por favor, actualiza a la última versión de Java
lblYoureRunning=Estás ejecutando lblYoureRunning=Estás ejecutando

View File

@@ -206,6 +206,7 @@ lblListImageData=Carte di controllo non implementate da Forge e immagini di cart
btnImportPictures=Importa dati btnImportPictures=Importa dati
btnHowToPlay=Come giocare btnHowToPlay=Come giocare
btnDownloadPrices=Scarica i prezzi delle carte btnDownloadPrices=Scarica i prezzi delle carte
btnDownloadSkins=Download Skins
btnLicensing=Dettagli della licenza btnLicensing=Dettagli della licenza
lblCheckForUpdates=Check Forge server to see if there''s a more recent release lblCheckForUpdates=Check Forge server to see if there''s a more recent release
lblDownloadPics=Scarica l''immagine della carta predefinita per ogni carta. lblDownloadPics=Scarica l''immagine della carta predefinita per ogni carta.
@@ -214,6 +215,7 @@ lblDownloadSetPics=Scarica tutte le immagini di ogni carta (una per ogni set in
lblDownloadQuestImages=Scarica i token e le icone utilizzati nella modalità Quest. lblDownloadQuestImages=Scarica i token e le icone utilizzati nella modalità Quest.
lblDownloadAchievementImages=Scarica le immagini degli obiettivi per far risaltare davvero i tuoi trofei. lblDownloadAchievementImages=Scarica le immagini degli obiettivi per far risaltare davvero i tuoi trofei.
lblDownloadPrices=Scarica il listino aggiornato per i negozi di carte di gioco. lblDownloadPrices=Scarica il listino aggiornato per i negozi di carte di gioco.
lblDownloadSkins=Download available skins used in customizing forge appearance.
lblYourVersionOfJavaIsTooOld=La tua versione di Java è troppo vecchia per utilizzare i downloader di contenuti. lblYourVersionOfJavaIsTooOld=La tua versione di Java è troppo vecchia per utilizzare i downloader di contenuti.
lblPleaseUpdateToTheLatestVersionOfJava=Si prega di aggiornare all''ultima versione di Java lblPleaseUpdateToTheLatestVersionOfJava=Si prega di aggiornare all''ultima versione di Java
lblYoureRunning=Stai correndo lblYoureRunning=Stai correndo

View File

@@ -206,6 +206,7 @@ lblListImageData=统计Forge实现且缺少的图片的牌
btnImportPictures=导入数据 btnImportPictures=导入数据
btnHowToPlay=如何玩 btnHowToPlay=如何玩
btnDownloadPrices=下载卡牌价格 btnDownloadPrices=下载卡牌价格
btnDownloadSkins=Download Skins
btnLicensing=许可证详情 btnLicensing=许可证详情
lblCheckForUpdates=查看是否有新的版本 lblCheckForUpdates=查看是否有新的版本
lblDownloadPics=下载缺省牌的图片 lblDownloadPics=下载缺省牌的图片
@@ -214,6 +215,7 @@ lblDownloadSetPics=下载每张牌的图片(每张牌出现一次)
lblDownloadQuestImages=下载冒险之旅里使用的衍生物与图标 lblDownloadQuestImages=下载冒险之旅里使用的衍生物与图标
lblDownloadAchievementImages=下载成就图片,让你的奖杯更引人注目。 lblDownloadAchievementImages=下载成就图片,让你的奖杯更引人注目。
lblDownloadPrices=下载卡牌商店最新的价格表 lblDownloadPrices=下载卡牌商店最新的价格表
lblDownloadSkins=Download available skins used in customizing forge appearance.
lblYourVersionOfJavaIsTooOld=你的Java版本太旧无法开始下载内容 lblYourVersionOfJavaIsTooOld=你的Java版本太旧无法开始下载内容
lblPleaseUpdateToTheLatestVersionOfJava=请更新到最新版本的JRE lblPleaseUpdateToTheLatestVersionOfJava=请更新到最新版本的JRE
lblYoureRunning=你在运行 lblYoureRunning=你在运行

View File

@@ -0,0 +1,119 @@
https://downloads.cardforge.org/skins/arabian_nights/bg_match.jpg
https://downloads.cardforge.org/skins/arabian_nights/bg_splash.png
https://downloads.cardforge.org/skins/arabian_nights/bg_texture.jpg
https://downloads.cardforge.org/skins/arabian_nights/font1.ttf
https://downloads.cardforge.org/skins/arabian_nights/sprite_icons.png
https://downloads.cardforge.org/skins/comic/bg_match.jpg
https://downloads.cardforge.org/skins/comic/bg_splash.png
https://downloads.cardforge.org/skins/comic/bg_texture.jpg
https://downloads.cardforge.org/skins/comic/font1.ttf
https://downloads.cardforge.org/skins/comic/sprite_icons.png
https://downloads.cardforge.org/skins/darkforge/bg_chaos_wheel.png
https://downloads.cardforge.org/skins/darkforge/bg_match.jpg
https://downloads.cardforge.org/skins/darkforge/bg_splash.png
https://downloads.cardforge.org/skins/darkforge/bg_splash_hd.png
https://downloads.cardforge.org/skins/darkforge/bg_texture.jpg
https://downloads.cardforge.org/skins/darkforge/font1.ttf
https://downloads.cardforge.org/skins/darkforge/hd_logo.png
https://downloads.cardforge.org/skins/darkforge/sprite_avatars.png
https://downloads.cardforge.org/skins/darkforge/sprite_buttons.png
https://downloads.cardforge.org/skins/darkforge/sprite_icons.png
https://downloads.cardforge.org/skins/darkforge/sprite_start.png
https://downloads.cardforge.org/skins/darkforge/sprite_trophies.png
https://downloads.cardforge.org/skins/darkred/bg_match.jpg
https://downloads.cardforge.org/skins/darkred/bg_splash.png
https://downloads.cardforge.org/skins/darkred/bg_texture.jpg
https://downloads.cardforge.org/skins/darkred/font1.ttf
https://downloads.cardforge.org/skins/darkred/sprite_icons.png
https://downloads.cardforge.org/skins/darky/bg_match.jpg
https://downloads.cardforge.org/skins/darky/bg_splash.png
https://downloads.cardforge.org/skins/darky/bg_texture.jpg
https://downloads.cardforge.org/skins/darky/font1.ttf
https://downloads.cardforge.org/skins/darky/sprite_icons.png
https://downloads.cardforge.org/skins/dark_ascension/bg_match.jpg
https://downloads.cardforge.org/skins/dark_ascension/bg_splash.png
https://downloads.cardforge.org/skins/dark_ascension/bg_texture.jpg
https://downloads.cardforge.org/skins/dark_ascension/font1.ttf
https://downloads.cardforge.org/skins/dark_ascension/sprite_icons.png
https://downloads.cardforge.org/skins/firebloom/bg_match.jpg
https://downloads.cardforge.org/skins/firebloom/bg_splash.png
https://downloads.cardforge.org/skins/firebloom/bg_texture.jpg
https://downloads.cardforge.org/skins/firebloom/font1.ttf
https://downloads.cardforge.org/skins/firebloom/sprite_icons.png
https://downloads.cardforge.org/skins/inferno/bg_match.jpg
https://downloads.cardforge.org/skins/inferno/bg_splash.png
https://downloads.cardforge.org/skins/inferno/bg_texture.jpg
https://downloads.cardforge.org/skins/inferno/font1.ttf
https://downloads.cardforge.org/skins/inferno/sprite_icons.png
https://downloads.cardforge.org/skins/innistrad/bg_match.jpg
https://downloads.cardforge.org/skins/innistrad/bg_splash.png
https://downloads.cardforge.org/skins/innistrad/bg_texture.jpg
https://downloads.cardforge.org/skins/innistrad/font1.ttf
https://downloads.cardforge.org/skins/innistrad/sprite_icons.png
https://downloads.cardforge.org/skins/journeyman/bg_match.jpg
https://downloads.cardforge.org/skins/journeyman/bg_splash.png
https://downloads.cardforge.org/skins/journeyman/bg_texture.jpg
https://downloads.cardforge.org/skins/journeyman/font1.ttf
https://downloads.cardforge.org/skins/journeyman/sprite_icons.png
https://downloads.cardforge.org/skins/kamigawa/bg_match.jpg
https://downloads.cardforge.org/skins/kamigawa/bg_splash.png
https://downloads.cardforge.org/skins/kamigawa/bg_texture.jpg
https://downloads.cardforge.org/skins/kamigawa/font1.ttf
https://downloads.cardforge.org/skins/kamigawa/sprite_icons.png
https://downloads.cardforge.org/skins/marble_blue/bg_match.jpg
https://downloads.cardforge.org/skins/marble_blue/bg_splash.png
https://downloads.cardforge.org/skins/marble_blue/bg_texture.jpg
https://downloads.cardforge.org/skins/marble_blue/font1.ttf
https://downloads.cardforge.org/skins/marble_blue/notes.txt
https://downloads.cardforge.org/skins/marble_blue/sprite_icons.png
https://downloads.cardforge.org/skins/metalcraft/bg_match.jpg
https://downloads.cardforge.org/skins/metalcraft/bg_splash.png
https://downloads.cardforge.org/skins/metalcraft/bg_texture.jpg
https://downloads.cardforge.org/skins/metalcraft/font1.ttf
https://downloads.cardforge.org/skins/metalcraft/sprite_icons.png
https://downloads.cardforge.org/skins/mythic_rare/bg_match.jpg
https://downloads.cardforge.org/skins/mythic_rare/bg_splash.png
https://downloads.cardforge.org/skins/mythic_rare/bg_texture.jpg
https://downloads.cardforge.org/skins/mythic_rare/font1.ttf
https://downloads.cardforge.org/skins/mythic_rare/sprite_icons.png
https://downloads.cardforge.org/skins/phyrexia/bg_match.jpg
https://downloads.cardforge.org/skins/phyrexia/bg_splash.png
https://downloads.cardforge.org/skins/phyrexia/bg_texture.jpg
https://downloads.cardforge.org/skins/phyrexia/font1.ttf
https://downloads.cardforge.org/skins/phyrexia/sprite_icons.png
https://downloads.cardforge.org/skins/ravnica/bg_match.jpg
https://downloads.cardforge.org/skins/ravnica/bg_splash.png
https://downloads.cardforge.org/skins/ravnica/bg_texture.jpg
https://downloads.cardforge.org/skins/ravnica/font1.ttf
https://downloads.cardforge.org/skins/ravnica/sprite_icons.png
https://downloads.cardforge.org/skins/rebel/bg_match.jpg
https://downloads.cardforge.org/skins/rebel/bg_splash.png
https://downloads.cardforge.org/skins/rebel/bg_texture.jpg
https://downloads.cardforge.org/skins/rebel/font1.ttf
https://downloads.cardforge.org/skins/rebel/sprite_icons.png
https://downloads.cardforge.org/skins/sleeping_forest/bg_match.jpg
https://downloads.cardforge.org/skins/sleeping_forest/bg_splash.png
https://downloads.cardforge.org/skins/sleeping_forest/bg_texture.jpg
https://downloads.cardforge.org/skins/sleeping_forest/font1.ttf
https://downloads.cardforge.org/skins/sleeping_forest/sprite_icons.png
https://downloads.cardforge.org/skins/smith/bg_match.jpg
https://downloads.cardforge.org/skins/smith/bg_splash.png
https://downloads.cardforge.org/skins/smith/bg_texture.jpg
https://downloads.cardforge.org/skins/smith/font1.ttf
https://downloads.cardforge.org/skins/smith/sprite_icons.png
https://downloads.cardforge.org/skins/the_dale/bg_match.jpg
https://downloads.cardforge.org/skins/the_dale/bg_splash.png
https://downloads.cardforge.org/skins/the_dale/bg_texture.jpg
https://downloads.cardforge.org/skins/the_dale/font1.ttf
https://downloads.cardforge.org/skins/the_dale/sprite_icons.png
https://downloads.cardforge.org/skins/the_simpsons/bg_match.jpg
https://downloads.cardforge.org/skins/the_simpsons/bg_splash.png
https://downloads.cardforge.org/skins/the_simpsons/bg_texture.jpg
https://downloads.cardforge.org/skins/the_simpsons/font1.ttf
https://downloads.cardforge.org/skins/the_simpsons/sprite_avatars.png
https://downloads.cardforge.org/skins/the_simpsons/sprite_icons.png
https://downloads.cardforge.org/skins/zendikar/bg_match.jpg
https://downloads.cardforge.org/skins/zendikar/bg_splash.png
https://downloads.cardforge.org/skins/zendikar/bg_texture.jpg
https://downloads.cardforge.org/skins/zendikar/font1.ttf
https://downloads.cardforge.org/skins/zendikar/sprite_icons.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 677 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 75 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 578 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 251 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 609 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 173 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 238 KiB

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 428 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 359 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 389 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 261 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 167 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 240 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 142 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 203 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 323 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 758 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 140 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 110 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 126 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 163 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 687 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 459 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 338 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 268 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 373 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 156 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 267 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 254 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 129 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 539 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 459 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 253 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 718 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 427 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 325 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 347 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 622 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 314 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 322 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 431 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 415 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 98 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 76 KiB

View File

@@ -1,3 +0,0 @@
Abbadon font used for splash.
Aller font used as font1.
Marbles rendered using VRay.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 959 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 353 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 256 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 584 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 533 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 145 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 449 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 259 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 520 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 738 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 443 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 565 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 346 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 458 KiB

Some files were not shown because too many files have changed in this diff Show More