Rounded Highlight if Round Corners are enabled (and some cleanup)

put on EDT thread pixmap texture conversion
generate zh-CN fonts only when locale is zh-CN
This commit is contained in:
Anthony Calosa
2019-10-14 10:36:53 +08:00
parent 4a6725d228
commit efa3501172
8 changed files with 99 additions and 77 deletions

View File

@@ -63,6 +63,9 @@ public class Forge implements ApplicationListener {
public static float heigtModifier = 0.0f; public static float heigtModifier = 0.0f;
private static boolean isloadingaMatch = false; private static boolean isloadingaMatch = false;
public static boolean showFPS = false; public static boolean showFPS = false;
public static boolean enableUIMask = false;
public static boolean enablePreloadExtendedArt = false;
public static String locale = "en-US";
public static ApplicationListener getApp(Clipboard clipboard0, IDeviceAdapter deviceAdapter0, String assetDir0) { public static ApplicationListener getApp(Clipboard clipboard0, IDeviceAdapter deviceAdapter0, String assetDir0) {
if (GuiBase.getInterface() == null) { if (GuiBase.getInterface() == null) {
@@ -105,8 +108,10 @@ public class Forge implements ApplicationListener {
FSkin.loadLight(skinName, splashScreen); FSkin.loadLight(skinName, splashScreen);
textureFiltering = prefs.getPrefBoolean(FPref.UI_LIBGDX_TEXTURE_FILTERING); textureFiltering = prefs.getPrefBoolean(FPref.UI_LIBGDX_TEXTURE_FILTERING);
showFPS = prefs.getPrefBoolean(FPref.UI_SHOW_FPS); showFPS = prefs.getPrefBoolean(FPref.UI_SHOW_FPS);
enableUIMask = prefs.getPrefBoolean(FPref.UI_ENABLE_BORDER_MASKING);
enablePreloadExtendedArt = prefs.getPrefBoolean(FPref.UI_ENABLE_PRELOAD_EXTENDED_ART);
locale = prefs.getPref(FPref.UI_LANGUAGE);
final Localizer localizer = Localizer.getInstance(); final Localizer localizer = Localizer.getInstance();
@@ -121,7 +126,7 @@ public class Forge implements ApplicationListener {
FModel.initialize(splashScreen.getProgressBar(), null); FModel.initialize(splashScreen.getProgressBar(), null);
splashScreen.getProgressBar().setDescription(localizer.getMessage("lblLoadingFonts")); splashScreen.getProgressBar().setDescription(localizer.getMessage("lblLoadingFonts"));
FSkinFont.preloadAll(prefs.getPref(FPref.UI_LANGUAGE)); FSkinFont.preloadAll(locale);
splashScreen.getProgressBar().setDescription(localizer.getMessage("lblLoadingCardTranslations")); splashScreen.getProgressBar().setDescription(localizer.getMessage("lblLoadingCardTranslations"));
CardTranslation.preloadTranslation(prefs.getPref(FPref.UI_LANGUAGE)); CardTranslation.preloadTranslation(prefs.getPref(FPref.UI_LANGUAGE));
@@ -129,7 +134,7 @@ public class Forge implements ApplicationListener {
splashScreen.getProgressBar().setDescription(localizer.getMessage("lblFinishingStartup")); splashScreen.getProgressBar().setDescription(localizer.getMessage("lblFinishingStartup"));
//add reminder to preload //add reminder to preload
if (prefs.getPrefBoolean(FPref.UI_ENABLE_PRELOAD_EXTENDED_ART)) if (enablePreloadExtendedArt)
splashScreen.getProgressBar().setDescription("Preload Extended Art..."); splashScreen.getProgressBar().setDescription("Preload Extended Art...");
Gdx.app.postRunnable(new Runnable() { Gdx.app.postRunnable(new Runnable() {
@Override @Override
@@ -145,7 +150,7 @@ public class Forge implements ApplicationListener {
} }
private void preloadExtendedArt() { private void preloadExtendedArt() {
if (!FModel.getPreferences().getPrefBoolean(FPref.UI_ENABLE_PRELOAD_EXTENDED_ART)) if (!enablePreloadExtendedArt)
return; return;
List<String> keys = new ArrayList<>(); List<String> keys = new ArrayList<>();
File[] directories = new File(ForgeConstants.CACHE_CARD_PICS_DIR).listFiles(new FileFilter() { File[] directories = new File(ForgeConstants.CACHE_CARD_PICS_DIR).listFiles(new FileFilter() {

View File

@@ -16,6 +16,7 @@ import com.badlogic.gdx.graphics.g2d.freetype.FreeTypeFontGenerator.FreeTypeFont
import com.badlogic.gdx.graphics.glutils.PixmapTextureData; import com.badlogic.gdx.graphics.glutils.PixmapTextureData;
import com.badlogic.gdx.utils.Array; import com.badlogic.gdx.utils.Array;
import forge.FThreads; import forge.FThreads;
import forge.Forge;
import forge.properties.ForgeConstants; import forge.properties.ForgeConstants;
import forge.util.FileUtil; import forge.util.FileUtil;
import forge.util.TextBounds; import forge.util.TextBounds;
@@ -357,6 +358,7 @@ public class FSkinFont {
//generate from zh-CN.properties,and cardnames-zh-CN.txt //generate from zh-CN.properties,and cardnames-zh-CN.txt
//forge generate 3000+ characters cache need Take some time(MIN_FONT_SIZE - MAX_FONT_SIZE all size) //forge generate 3000+ characters cache need Take some time(MIN_FONT_SIZE - MAX_FONT_SIZE all size)
//maybe using libgdx-hiero generate font cache is better //maybe using libgdx-hiero generate font cache is better
if (Forge.locale.equals("zh-CN"))
chars += "●、。「」『』一丁七万三上下不与丑专且世丘业丛东丝两严丧个中" chars += "●、。「」『』一丁七万三上下不与丑专且世丘业丛东丝两严丧个中"
+ "丰临丸丹为主丽举乃久么义之乌乍乐乔乖乘乙九也乡书乱乳乾了予争" + "丰临丸丹为主丽举乃久么义之乌乍乐乔乖乘乙九也乡书乱乳乾了予争"
+ "事二于云互五井亘亚些亡交亥亦产享京亮亲亵人亿什仁仅仆仇今介仍" + "事二于云互五井亘亚些亡交亥亦产享京亮亲亵人亿什仁仅仆仇今介仍"

View File

@@ -8,12 +8,14 @@ import com.badlogic.gdx.graphics.Pixmap;
import com.badlogic.gdx.graphics.Texture; import com.badlogic.gdx.graphics.Texture;
import com.badlogic.gdx.graphics.TextureData; import com.badlogic.gdx.graphics.TextureData;
import com.badlogic.gdx.graphics.glutils.PixmapTextureData; import com.badlogic.gdx.graphics.glutils.PixmapTextureData;
import forge.FThreads;
import org.cache2k.integration.CacheLoader; import org.cache2k.integration.CacheLoader;
import forge.Forge; import forge.Forge;
import forge.ImageKeys; import forge.ImageKeys;
final class ImageLoader extends CacheLoader<String, Texture> { final class ImageLoader extends CacheLoader<String, Texture> {
Texture n;
@Override @Override
public Texture load(String key) { public Texture load(String key) {
boolean extendedArt = false; boolean extendedArt = false;
@@ -44,6 +46,9 @@ final class ImageLoader extends CacheLoader<String, Texture> {
public Texture generateTexture(FileHandle fh, Texture t, boolean textureFilter) { public Texture generateTexture(FileHandle fh, Texture t, boolean textureFilter) {
if (t == null || fh == null) if (t == null || fh == null)
return t; return t;
FThreads.invokeInEdtNowOrLater(new Runnable() {
@Override
public void run() {
Pixmap pImage = new Pixmap(fh); Pixmap pImage = new Pixmap(fh);
int w = pImage.getWidth(); int w = pImage.getWidth();
int h = pImage.getHeight(); int h = pImage.getHeight();
@@ -55,12 +60,14 @@ final class ImageLoader extends CacheLoader<String, Texture> {
Pixmap.Format.RGBA8888, Pixmap.Format.RGBA8888,
textureFilter, //use mipmaps textureFilter, //use mipmaps
false, true); false, true);
t = new Texture(textureData); n = new Texture(textureData);
if (textureFilter) if (textureFilter)
t.setFilter(Texture.TextureFilter.MipMapLinearLinear, Texture.TextureFilter.Linear); n.setFilter(Texture.TextureFilter.MipMapLinearLinear, Texture.TextureFilter.Linear);
pImage.dispose(); pImage.dispose();
pMask.dispose(); pMask.dispose();
return t; }
});
return n;
} }
public Pixmap createRoundedRectangle(int width, int height, int cornerRadius, Color color) { public Pixmap createRoundedRectangle(int width, int height, int cornerRadius, Color color) {
Pixmap pixmap = new Pixmap(width, height, Pixmap.Format.RGBA8888); Pixmap pixmap = new Pixmap(width, height, Pixmap.Format.RGBA8888);

View File

@@ -2,14 +2,13 @@ package forge.card;
import com.badlogic.gdx.graphics.Texture; import com.badlogic.gdx.graphics.Texture;
import forge.Forge;
import forge.Graphics; import forge.Graphics;
import forge.assets.FImage; import forge.assets.FImage;
import forge.assets.ImageCache; import forge.assets.ImageCache;
import forge.card.CardRenderer.CardStackPosition; import forge.card.CardRenderer.CardStackPosition;
import forge.game.card.CardView; import forge.game.card.CardView;
import forge.item.PaperCard; import forge.item.PaperCard;
import forge.model.FModel;
import forge.properties.ForgePreferences;
import forge.toolbox.FCardPanel; import forge.toolbox.FCardPanel;
public class CardImage implements FImage { public class CardImage implements FImage {
@@ -19,9 +18,6 @@ public class CardImage implements FImage {
public CardImage(PaperCard card0) { public CardImage(PaperCard card0) {
card = card0; card = card0;
} }
private static boolean isPreferenceEnabled(ForgePreferences.FPref preferenceName) {
return FModel.getPreferences().getPrefBoolean(preferenceName);
}
@Override @Override
public float getWidth() { public float getWidth() {
@@ -38,11 +34,10 @@ public class CardImage implements FImage {
@Override @Override
public void draw(Graphics g, float x, float y, float w, float h) { public void draw(Graphics g, float x, float y, float w, float h) {
boolean mask = isPreferenceEnabled(ForgePreferences.FPref.UI_ENABLE_BORDER_MASKING);
if (image == null) { //attempt to retrieve card image if needed if (image == null) { //attempt to retrieve card image if needed
image = ImageCache.getImage(card); image = ImageCache.getImage(card);
if (image == null) { if (image == null) {
if (mask) //render this if mask is still loading if (Forge.enableUIMask) //render this if mask is still loading
CardImageRenderer.drawCardImage(g, CardView.getCardForUi(card), false, x, y, w, h, CardStackPosition.Top); CardImageRenderer.drawCardImage(g, CardView.getCardForUi(card), false, x, y, w, h, CardStackPosition.Top);
return; //can't draw anything if can't be loaded yet return; //can't draw anything if can't be loaded yet
@@ -53,7 +48,7 @@ public class CardImage implements FImage {
CardImageRenderer.drawCardImage(g, CardView.getCardForUi(card), false, x, y, w, h, CardStackPosition.Top); CardImageRenderer.drawCardImage(g, CardView.getCardForUi(card), false, x, y, w, h, CardStackPosition.Top);
} }
else { else {
if (mask) { if (Forge.enableUIMask) {
if (ImageCache.isExtendedArt(card)) if (ImageCache.isExtendedArt(card))
g.drawImage(image, x, y, w, h); g.drawImage(image, x, y, w, h);
else { else {

View File

@@ -4,6 +4,7 @@ import com.badlogic.gdx.graphics.Color;
import com.badlogic.gdx.graphics.Texture; import com.badlogic.gdx.graphics.Texture;
import com.badlogic.gdx.utils.Align; import com.badlogic.gdx.utils.Align;
import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableList;
import forge.Forge;
import forge.Graphics; import forge.Graphics;
import forge.assets.FBufferedImage; import forge.assets.FBufferedImage;
import forge.assets.FSkinColor; import forge.assets.FSkinColor;
@@ -325,7 +326,6 @@ public class CardImageRenderer {
} }
public static void drawZoom(Graphics g, CardView card, GameView gameView, boolean altState, float x, float y, float w, float h, float dispW, float dispH, boolean isCurrentCard) { public static void drawZoom(Graphics g, CardView card, GameView gameView, boolean altState, float x, float y, float w, float h, float dispW, float dispH, boolean isCurrentCard) {
boolean mask = isPreferenceEnabled(ForgePreferences.FPref.UI_ENABLE_BORDER_MASKING);
final Texture image = ImageCache.getImage(card.getState(altState).getImageKey(MatchController.instance.getLocalPlayers()), true); final Texture image = ImageCache.getImage(card.getState(altState).getImageKey(MatchController.instance.getLocalPlayers()), true);
if (image == null) { //draw details if can't draw zoom if (image == null) { //draw details if can't draw zoom
drawDetails(g, card, gameView, altState, x, y, w, h); drawDetails(g, card, gameView, altState, x, y, w, h);
@@ -354,7 +354,7 @@ public class CardImageRenderer {
boolean rotateSplit = FModel.getPreferences().getPrefBoolean(ForgePreferences.FPref.UI_ROTATE_SPLIT_CARDS); boolean rotateSplit = FModel.getPreferences().getPrefBoolean(ForgePreferences.FPref.UI_ROTATE_SPLIT_CARDS);
boolean rotatePlane = FModel.getPreferences().getPrefBoolean(ForgePreferences.FPref.UI_ROTATE_PLANE_OR_PHENOMENON); boolean rotatePlane = FModel.getPreferences().getPrefBoolean(ForgePreferences.FPref.UI_ROTATE_PLANE_OR_PHENOMENON);
if (rotatePlane && (card.getCurrentState().isPhenomenon() || card.getCurrentState().isPlane())) { if (rotatePlane && (card.getCurrentState().isPhenomenon() || card.getCurrentState().isPlane())) {
if (mask){ if (Forge.enableUIMask){
if (ImageCache.isExtendedArt(card)) if (ImageCache.isExtendedArt(card))
g.drawRotatedImage(image, new_x, new_y, new_w, new_h, new_x + new_w / 2, new_y + new_h / 2, -90); g.drawRotatedImage(image, new_x, new_y, new_w, new_h, new_x + new_w / 2, new_y + new_h / 2, -90);
else { else {
@@ -370,7 +370,7 @@ public class CardImageRenderer {
g.drawRotatedImage(image, new_x, new_y, new_w, new_h, new_x + new_w / 2, new_y + new_h / 2, -90); g.drawRotatedImage(image, new_x, new_y, new_w, new_h, new_x + new_w / 2, new_y + new_h / 2, -90);
} else if (rotateSplit && isCurrentCard && card.isSplitCard() && canLook) { } else if (rotateSplit && isCurrentCard && card.isSplitCard() && canLook) {
boolean isAftermath = card.getText().contains("Aftermath") || card.getAlternateState().getOracleText().contains("Aftermath"); boolean isAftermath = card.getText().contains("Aftermath") || card.getAlternateState().getOracleText().contains("Aftermath");
if (mask) { if (Forge.enableUIMask) {
if (ImageCache.isExtendedArt(card)) if (ImageCache.isExtendedArt(card))
g.drawRotatedImage(image, new_x, new_y, new_w, new_h, new_x + new_w / 2, new_y + new_h / 2, isAftermath ? 90 : -90); g.drawRotatedImage(image, new_x, new_y, new_w, new_h, new_x + new_w / 2, new_y + new_h / 2, isAftermath ? 90 : -90);
else { else {
@@ -386,7 +386,7 @@ public class CardImageRenderer {
g.drawRotatedImage(image, new_x, new_y, new_w, new_h, new_x + new_w / 2, new_y + new_h / 2, isAftermath ? 90 : -90); g.drawRotatedImage(image, new_x, new_y, new_w, new_h, new_x + new_w / 2, new_y + new_h / 2, isAftermath ? 90 : -90);
} }
else { else {
if (mask) { if (Forge.enableUIMask) {
if (ImageCache.isExtendedArt(card)) if (ImageCache.isExtendedArt(card))
g.drawImage(image, x, y, w, h); g.drawImage(image, x, y, w, h);
else { else {
@@ -560,8 +560,4 @@ public class CardImageRenderer {
g.drawRect(BORDER_THICKNESS, Color.BLACK, x, y, w, h); g.drawRect(BORDER_THICKNESS, Color.BLACK, x, y, w, h);
g.drawText(ptText, PT_FONT, Color.BLACK, x, y, w, h, false, Align.center, true); g.drawText(ptText, PT_FONT, Color.BLACK, x, y, w, h, false, Align.center, true);
} }
private static boolean isPreferenceEnabled(ForgePreferences.FPref preferenceName) {
return FModel.getPreferences().getPrefBoolean(preferenceName);
}
} }

View File

@@ -16,6 +16,7 @@ import com.badlogic.gdx.graphics.glutils.PixmapTextureData;
import com.badlogic.gdx.utils.Align; import com.badlogic.gdx.utils.Align;
import com.badlogic.gdx.utils.Array; import com.badlogic.gdx.utils.Array;
import forge.CachedCardImage; import forge.CachedCardImage;
import forge.Forge;
import forge.FThreads; import forge.FThreads;
import forge.Graphics; import forge.Graphics;
import forge.StaticData; import forge.StaticData;
@@ -394,7 +395,6 @@ public class CardRenderer {
} }
public static void drawCard(Graphics g, IPaperCard pc, float x, float y, float w, float h, CardStackPosition pos) { public static void drawCard(Graphics g, IPaperCard pc, float x, float y, float w, float h, CardStackPosition pos) {
boolean mask = isPreferenceEnabled(FPref.UI_ENABLE_BORDER_MASKING);
Texture image = new RendererCachedCardImage(pc, false).getImage(); Texture image = new RendererCachedCardImage(pc, false).getImage();
float radius = (h - w)/8; float radius = (h - w)/8;
@@ -403,7 +403,7 @@ public class CardRenderer {
CardImageRenderer.drawCardImage(g, CardView.getCardForUi(pc), false, x, y, w, h, pos); CardImageRenderer.drawCardImage(g, CardView.getCardForUi(pc), false, x, y, w, h, pos);
} }
else { else {
if (mask) { if (Forge.enableUIMask) {
if (ImageCache.isExtendedArt(pc)) if (ImageCache.isExtendedArt(pc))
g.drawImage(image, x, y, w, h); g.drawImage(image, x, y, w, h);
else { else {
@@ -423,14 +423,13 @@ public class CardRenderer {
} }
} }
else { else {
if (mask) //render this if mask is still loading if (Forge.enableUIMask) //render this if mask is still loading
CardImageRenderer.drawCardImage(g, CardView.getCardForUi(pc), false, x, y, w, h, pos); CardImageRenderer.drawCardImage(g, CardView.getCardForUi(pc), false, x, y, w, h, pos);
else //draw cards without textures as just a black rectangle else //draw cards without textures as just a black rectangle
g.fillRect(Color.BLACK, x, y, w, h); g.fillRect(Color.BLACK, x, y, w, h);
} }
} }
public static void drawCard(Graphics g, CardView card, float x, float y, float w, float h, CardStackPosition pos, boolean rotate) { public static void drawCard(Graphics g, CardView card, float x, float y, float w, float h, CardStackPosition pos, boolean rotate) {
boolean mask = isPreferenceEnabled(FPref.UI_ENABLE_BORDER_MASKING);
Texture image = new RendererCachedCardImage(card, false).getImage(); Texture image = new RendererCachedCardImage(card, false).getImage();
float radius = (h - w)/8; float radius = (h - w)/8;
@@ -441,7 +440,7 @@ public class CardRenderer {
else { else {
if(FModel.getPreferences().getPrefBoolean(ForgePreferences.FPref.UI_ROTATE_PLANE_OR_PHENOMENON) if(FModel.getPreferences().getPrefBoolean(ForgePreferences.FPref.UI_ROTATE_PLANE_OR_PHENOMENON)
&& (card.getCurrentState().isPhenomenon() || card.getCurrentState().isPlane()) && rotate){ && (card.getCurrentState().isPhenomenon() || card.getCurrentState().isPlane()) && rotate){
if (mask) { if (Forge.enableUIMask) {
if (ImageCache.isExtendedArt(card)) if (ImageCache.isExtendedArt(card))
g.drawRotatedImage(image, x, y, w, h, x + w / 2, y + h / 2, -90); g.drawRotatedImage(image, x, y, w, h, x + w / 2, y + h / 2, -90);
else { else {
@@ -453,7 +452,7 @@ public class CardRenderer {
g.drawRotatedImage(image, x, y, w, h, x + w / 2, y + h / 2, -90); g.drawRotatedImage(image, x, y, w, h, x + w / 2, y + h / 2, -90);
} }
else { else {
if (mask) { if (Forge.enableUIMask) {
if (ImageCache.isExtendedArt(card)) if (ImageCache.isExtendedArt(card))
g.drawImage(image, x, y, w, h); g.drawImage(image, x, y, w, h);
else { else {
@@ -469,7 +468,7 @@ public class CardRenderer {
drawFoilEffect(g, card, x, y, w, h, false); drawFoilEffect(g, card, x, y, w, h, false);
} }
else { else {
if (mask) //render this if mask is still loading if (Forge.enableUIMask) //render this if mask is still loading
CardImageRenderer.drawCardImage(g, card, false, x, y, w, h, pos); CardImageRenderer.drawCardImage(g, card, false, x, y, w, h, pos);
else //draw cards without textures as just a black rectangle else //draw cards without textures as just a black rectangle
g.fillRect(Color.BLACK, x, y, w, h); g.fillRect(Color.BLACK, x, y, w, h);

View File

@@ -1,5 +1,6 @@
package forge.itemmanager.views; package forge.itemmanager.views;
import forge.Forge;
import forge.Forge.KeyInputAdapter; import forge.Forge.KeyInputAdapter;
import forge.Graphics; import forge.Graphics;
import forge.assets.FImage; import forge.assets.FImage;
@@ -954,7 +955,16 @@ public class ImageView<T extends InventoryItem> extends ItemView<T> {
final float w = getWidth(); final float w = getWidth();
final float h = getHeight(); final float h = getHeight();
if (selected) { if (selected) { //if round border is enabled, the select highlight is also rounded..
if (Forge.enableUIMask) {
//fillroundrect has rough/aliased corner
g.fillRoundRect(Color.GREEN, x - SEL_BORDER_SIZE, y - SEL_BORDER_SIZE,
w + 2 * SEL_BORDER_SIZE, h + 2 * SEL_BORDER_SIZE, (h - w) / 10);
//drawroundrect has GL_SMOOTH to `smoothen/faux` the aliased corner
g.drawRoundRect(1f, Color.GREEN, x - SEL_BORDER_SIZE, y - SEL_BORDER_SIZE,
w + 1.5f * SEL_BORDER_SIZE, h + 1.5f * SEL_BORDER_SIZE, (h - w) / 10);
}
else //default rectangle highlight
g.fillRect(Color.GREEN, x - SEL_BORDER_SIZE, y - SEL_BORDER_SIZE, g.fillRect(Color.GREEN, x - SEL_BORDER_SIZE, y - SEL_BORDER_SIZE,
w + 2 * SEL_BORDER_SIZE, h + 2 * SEL_BORDER_SIZE); w + 2 * SEL_BORDER_SIZE, h + 2 * SEL_BORDER_SIZE);
} }

View File

@@ -260,7 +260,7 @@ public class SettingsPage extends TabPage<SettingsScreen> {
TabPageScreen.COMPACT_TABS = FModel.getPreferences().getPrefBoolean(FPref.UI_COMPACT_TABS); TabPageScreen.COMPACT_TABS = FModel.getPreferences().getPrefBoolean(FPref.UI_COMPACT_TABS);
parentScreen.revalidate(); parentScreen.revalidate();
} }
}, 4); },4);
lstSettings.addItem(new BooleanSetting(FPref.UI_COMPACT_LIST_ITEMS, lstSettings.addItem(new BooleanSetting(FPref.UI_COMPACT_LIST_ITEMS,
localizer.getMessage("lblCompactListItems"), localizer.getMessage("lblCompactListItems"),
localizer.getMessage("nlCompactListItems")), localizer.getMessage("nlCompactListItems")),
@@ -303,12 +303,24 @@ public class SettingsPage extends TabPage<SettingsScreen> {
4); 4);
lstSettings.addItem(new BooleanSetting(FPref.UI_ENABLE_BORDER_MASKING, lstSettings.addItem(new BooleanSetting(FPref.UI_ENABLE_BORDER_MASKING,
"Enable Round Border Mask", "Enable Round Border Mask",
"When enabled, the card corners are rounded (Preferably Card with Full Borders)."), "When enabled, the card corners are rounded (Preferably Card with Full Borders)."){
4); @Override
public void select() {
super.select();
//update
Forge.enableUIMask = FModel.getPreferences().getPrefBoolean(FPref.UI_ENABLE_BORDER_MASKING);
}
},4);
lstSettings.addItem(new BooleanSetting(FPref.UI_ENABLE_PRELOAD_EXTENDED_ART, lstSettings.addItem(new BooleanSetting(FPref.UI_ENABLE_PRELOAD_EXTENDED_ART,
"Preload Extended Art Cards", "Preload Extended Art Cards",
"When enabled, Preloads Extended Art Cards to Cache on Startup."), "When enabled, Preloads Extended Art Cards to Cache on Startup."){
4); @Override
public void select() {
super.select();
//update
Forge.enablePreloadExtendedArt = FModel.getPreferences().getPrefBoolean(FPref.UI_ENABLE_PRELOAD_EXTENDED_ART);
}
},4);
lstSettings.addItem(new BooleanSetting(FPref.UI_SHOW_FPS, lstSettings.addItem(new BooleanSetting(FPref.UI_SHOW_FPS,
"Show FPS Display", "Show FPS Display",
"When enabled, show the FPS Display (Experimental)."){ "When enabled, show the FPS Display (Experimental)."){
@@ -319,7 +331,6 @@ public class SettingsPage extends TabPage<SettingsScreen> {
Forge.showFPS = FModel.getPreferences().getPrefBoolean(FPref.UI_SHOW_FPS); Forge.showFPS = FModel.getPreferences().getPrefBoolean(FPref.UI_SHOW_FPS);
} }
},4); },4);
lstSettings.addItem(new CustomSelectSetting(FPref.UI_CARD_COUNTER_DISPLAY_TYPE, lstSettings.addItem(new CustomSelectSetting(FPref.UI_CARD_COUNTER_DISPLAY_TYPE,
localizer.getMessage("cbpCounterDisplayType"), localizer.getMessage("cbpCounterDisplayType"),
localizer.getMessage("nlCounterDisplayType"), localizer.getMessage("nlCounterDisplayType"),
@@ -327,7 +338,6 @@ public class SettingsPage extends TabPage<SettingsScreen> {
ForgeConstants.CounterDisplayType.TEXT.getName(), ForgeConstants.CounterDisplayType.IMAGE.getName(), ForgeConstants.CounterDisplayType.TEXT.getName(), ForgeConstants.CounterDisplayType.IMAGE.getName(),
ForgeConstants.CounterDisplayType.HYBRID.getName(), ForgeConstants.CounterDisplayType.OLD_WHEN_SMALL.getName()}), ForgeConstants.CounterDisplayType.HYBRID.getName(), ForgeConstants.CounterDisplayType.OLD_WHEN_SMALL.getName()}),
4); 4);
//Card Overlays //Card Overlays
lstSettings.addItem(new BooleanSetting(FPref.UI_SHOW_CARD_OVERLAYS, lstSettings.addItem(new BooleanSetting(FPref.UI_SHOW_CARD_OVERLAYS,
localizer.getMessage("lblShowCardOverlays"), localizer.getMessage("lblShowCardOverlays"),
@@ -353,7 +363,6 @@ public class SettingsPage extends TabPage<SettingsScreen> {
localizer.getMessage("lblShowAbilityIconsOverlays"), localizer.getMessage("lblShowAbilityIconsOverlays"),
localizer.getMessage("nlShowAbilityIconsOverlays")), localizer.getMessage("nlShowAbilityIconsOverlays")),
5); 5);
//Vibration Options //Vibration Options
lstSettings.addItem(new BooleanSetting(FPref.UI_VIBRATE_ON_LIFE_LOSS, lstSettings.addItem(new BooleanSetting(FPref.UI_VIBRATE_ON_LIFE_LOSS,
localizer.getMessage("lblVibrateWhenLosingLife"), localizer.getMessage("lblVibrateWhenLosingLife"),
@@ -363,7 +372,6 @@ public class SettingsPage extends TabPage<SettingsScreen> {
localizer.getMessage("lblVibrateAfterLongPress"), localizer.getMessage("lblVibrateAfterLongPress"),
localizer.getMessage("nlVibrateAfterLongPress")), localizer.getMessage("nlVibrateAfterLongPress")),
6); 6);
//Sound Options //Sound Options
lstSettings.addItem(new BooleanSetting(FPref.UI_ENABLE_SOUNDS, lstSettings.addItem(new BooleanSetting(FPref.UI_ENABLE_SOUNDS,
localizer.getMessage("cbEnableSounds"), localizer.getMessage("cbEnableSounds"),
@@ -378,7 +386,7 @@ public class SettingsPage extends TabPage<SettingsScreen> {
//update background music when this setting changes //update background music when this setting changes
SoundSystem.instance.changeBackgroundTrack(); SoundSystem.instance.changeBackgroundTrack();
} }
}, 7); },7);
/*lstSettings.addItem(new BooleanSetting(FPref.UI_ALT_SOUND_SYSTEM, /*lstSettings.addItem(new BooleanSetting(FPref.UI_ALT_SOUND_SYSTEM,
"Use Alternate Sound System", "Use Alternate Sound System",
"Use the alternate sound system (only use if you have issues with sound not playing or disappearing)."), "Use the alternate sound system (only use if you have issues with sound not playing or disappearing)."),