mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-16 02:38:02 +00:00
- Modified setting. "Text/Mana Overlay" replaced with individual toggle setting for Card Name, P/T and Mana Cost overlays.
This commit is contained in:
@@ -87,7 +87,9 @@ public enum CSubmenuPreferences implements ICDoc {
|
|||||||
lstControls.add(Pair.of(view.getCbUploadDraft(), FPref.UI_UPLOAD_DRAFT));
|
lstControls.add(Pair.of(view.getCbUploadDraft(), FPref.UI_UPLOAD_DRAFT));
|
||||||
lstControls.add(Pair.of(view.getCbStackLand(), FPref.UI_SMOOTH_LAND));
|
lstControls.add(Pair.of(view.getCbStackLand(), FPref.UI_SMOOTH_LAND));
|
||||||
lstControls.add(Pair.of(view.getCbRandomFoil(), FPref.UI_RANDOM_FOIL));
|
lstControls.add(Pair.of(view.getCbRandomFoil(), FPref.UI_RANDOM_FOIL));
|
||||||
lstControls.add(Pair.of(view.getCbTextMana(), FPref.UI_CARD_OVERLAY));
|
lstControls.add(Pair.of(view.getCbOverlayCardName(), FPref.UI_OVERLAY_CARD_NAME));
|
||||||
|
lstControls.add(Pair.of(view.getCbOverlayCardPower(), FPref.UI_OVERLAY_CARD_POWER));
|
||||||
|
lstControls.add(Pair.of(view.getCbOverlayCardManaCost(), FPref.UI_OVERLAY_CARD_MANA_COST));
|
||||||
lstControls.add(Pair.of(view.getCbRandomizeArt(), FPref.UI_RANDOM_CARD_ART));
|
lstControls.add(Pair.of(view.getCbRandomizeArt(), FPref.UI_RANDOM_CARD_ART));
|
||||||
lstControls.add(Pair.of(view.getCbEnableSounds(), FPref.UI_ENABLE_SOUNDS));
|
lstControls.add(Pair.of(view.getCbEnableSounds(), FPref.UI_ENABLE_SOUNDS));
|
||||||
lstControls.add(Pair.of(view.getCbAltSoundSystem(), FPref.UI_ALT_SOUND_SYSTEM));
|
lstControls.add(Pair.of(view.getCbAltSoundSystem(), FPref.UI_ALT_SOUND_SYSTEM));
|
||||||
|
|||||||
@@ -94,7 +94,9 @@ public enum VSubmenuPreferences implements IVSubmenu<CSubmenuPreferences> {
|
|||||||
private final JCheckBox cbDevMode = new OptionsCheckBox("Developer Mode");
|
private final JCheckBox cbDevMode = new OptionsCheckBox("Developer Mode");
|
||||||
private final JCheckBox cbEnforceDeckLegality = new OptionsCheckBox("Deck Conformance");
|
private final JCheckBox cbEnforceDeckLegality = new OptionsCheckBox("Deck Conformance");
|
||||||
private final JCheckBox cbCloneImgSource = new OptionsCheckBox("Clones use original card art");
|
private final JCheckBox cbCloneImgSource = new OptionsCheckBox("Clones use original card art");
|
||||||
private final JCheckBox cbTextMana = new OptionsCheckBox("Text / Mana Overlay");
|
private final JCheckBox cbOverlayCardName = new OptionsCheckBox("Card Name");
|
||||||
|
private final JCheckBox cbOverlayCardPower = new OptionsCheckBox("Power/Toughness");
|
||||||
|
private final JCheckBox cbOverlayCardManaCost = new OptionsCheckBox("Mana Cost");
|
||||||
private final JCheckBox cbScaleLarger = new OptionsCheckBox("Scale Image Larger");
|
private final JCheckBox cbScaleLarger = new OptionsCheckBox("Scale Image Larger");
|
||||||
private final JCheckBox cbRandomFoil = new OptionsCheckBox("Random Foil");
|
private final JCheckBox cbRandomFoil = new OptionsCheckBox("Random Foil");
|
||||||
private final JCheckBox cbRandomizeArt = new OptionsCheckBox("Randomize Card Art");
|
private final JCheckBox cbRandomizeArt = new OptionsCheckBox("Randomize Card Art");
|
||||||
@@ -189,8 +191,12 @@ public enum VSubmenuPreferences implements IVSubmenu<CSubmenuPreferences> {
|
|||||||
pnlPrefs.add(cbUiForTouchScreen, regularConstraints);
|
pnlPrefs.add(cbUiForTouchScreen, regularConstraints);
|
||||||
pnlPrefs.add(new NoteLabel("Increases some UI elements to provide a better experience on touchscreen devices. (Needs restart)"), regularConstraints);
|
pnlPrefs.add(new NoteLabel("Increases some UI elements to provide a better experience on touchscreen devices. (Needs restart)"), regularConstraints);
|
||||||
|
|
||||||
pnlPrefs.add(cbTextMana, regularConstraints);
|
// Overlay options
|
||||||
pnlPrefs.add(new NoteLabel("Overlays each card with basic card-specific information."), regularConstraints);
|
pnlPrefs.add(new SectionLabel("Card Overlay Options"), sectionConstraints);
|
||||||
|
pnlPrefs.add(new NoteLabel("Show text overlays which are easier to read when cards are reduced in size to fit the play area."), regularConstraints);
|
||||||
|
pnlPrefs.add(cbOverlayCardName, regularConstraints);
|
||||||
|
pnlPrefs.add(cbOverlayCardPower, regularConstraints);
|
||||||
|
pnlPrefs.add(cbOverlayCardManaCost, regularConstraints);
|
||||||
|
|
||||||
// Sound options
|
// Sound options
|
||||||
pnlPrefs.add(new SectionLabel("Sound Options"), sectionConstraints);
|
pnlPrefs.add(new SectionLabel("Sound Options"), sectionConstraints);
|
||||||
@@ -443,8 +449,18 @@ public enum VSubmenuPreferences implements IVSubmenu<CSubmenuPreferences> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/** @return {@link javax.swing.JCheckBox} */
|
/** @return {@link javax.swing.JCheckBox} */
|
||||||
public JCheckBox getCbTextMana() {
|
public JCheckBox getCbOverlayCardName() {
|
||||||
return cbTextMana;
|
return cbOverlayCardName;
|
||||||
|
}
|
||||||
|
|
||||||
|
/** @return {@link javax.swing.JCheckBox} */
|
||||||
|
public JCheckBox getCbOverlayCardPower() {
|
||||||
|
return cbOverlayCardPower;
|
||||||
|
}
|
||||||
|
|
||||||
|
/** @return {@link javax.swing.JCheckBox} */
|
||||||
|
public JCheckBox getCbOverlayCardManaCost() {
|
||||||
|
return cbOverlayCardManaCost;
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @return {@link javax.swing.JCheckBox} */
|
/** @return {@link javax.swing.JCheckBox} */
|
||||||
|
|||||||
@@ -38,7 +38,9 @@ public class ForgePreferences extends PreferencesStore<ForgePreferences.FPref> {
|
|||||||
UI_RANDOM_FOIL ("false"),
|
UI_RANDOM_FOIL ("false"),
|
||||||
UI_SMOOTH_LAND ("false"),
|
UI_SMOOTH_LAND ("false"),
|
||||||
UI_AVATARS ("0,1"),
|
UI_AVATARS ("0,1"),
|
||||||
UI_CARD_OVERLAY ("true"),
|
UI_OVERLAY_CARD_NAME ("true"),
|
||||||
|
UI_OVERLAY_CARD_POWER ("true"),
|
||||||
|
UI_OVERLAY_CARD_MANA_COST ("true"),
|
||||||
UI_UPLOAD_DRAFT ("false"),
|
UI_UPLOAD_DRAFT ("false"),
|
||||||
UI_SCALE_LARGER ("true"),
|
UI_SCALE_LARGER ("true"),
|
||||||
UI_MAX_STACK ("3"),
|
UI_MAX_STACK ("3"),
|
||||||
|
|||||||
@@ -125,7 +125,6 @@ public class CardPanel extends JPanel implements CardContainer {
|
|||||||
private boolean isAnimationPanel;
|
private boolean isAnimationPanel;
|
||||||
private int cardXOffset, cardYOffset, cardWidth, cardHeight;
|
private int cardXOffset, cardYOffset, cardWidth, cardHeight;
|
||||||
private boolean isSelected;
|
private boolean isSelected;
|
||||||
private boolean showCastingCost;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <p>
|
* <p>
|
||||||
@@ -281,18 +280,6 @@ public class CardPanel extends JPanel implements CardContainer {
|
|||||||
return this.isSelected;
|
return this.isSelected;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* <p>
|
|
||||||
* Setter for the field <code>showCastingCost</code>.
|
|
||||||
* </p>
|
|
||||||
*
|
|
||||||
* @param showCastingCost
|
|
||||||
* a boolean.
|
|
||||||
*/
|
|
||||||
public final void setShowCastingCost(final boolean showCastingCost) {
|
|
||||||
this.showCastingCost = showCastingCost;
|
|
||||||
}
|
|
||||||
|
|
||||||
/** {@inheritDoc} */
|
/** {@inheritDoc} */
|
||||||
@Override
|
@Override
|
||||||
public final void paint(final Graphics g) {
|
public final void paint(final Graphics g) {
|
||||||
@@ -371,7 +358,7 @@ public class CardPanel extends JPanel implements CardContainer {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.showCastingCost && this.cardWidth < 200) {
|
if (showCardManaCostOverlay() && this.cardWidth < 200) {
|
||||||
Card gameCard = this.getGameCard();
|
Card gameCard = this.getGameCard();
|
||||||
boolean showSplitMana = gameCard.isSplitCard() && gameCard.getCurState() == CardCharacteristicName.Original;
|
boolean showSplitMana = gameCard.isSplitCard() && gameCard.getCurState() == CardCharacteristicName.Original;
|
||||||
if ( !showSplitMana ) {
|
if ( !showSplitMana ) {
|
||||||
@@ -593,18 +580,20 @@ public class CardPanel extends JPanel implements CardContainer {
|
|||||||
* a {@link forge.Card} object.
|
* a {@link forge.Card} object.
|
||||||
*/
|
*/
|
||||||
public final void setText(final Card card) {
|
public final void setText(final Card card) {
|
||||||
if ((card == null) || !Singletons.getModel().getPreferences().getPrefBoolean(FPref.UI_CARD_OVERLAY)) {
|
|
||||||
|
if ((card == null)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (card.isFaceDown()) {
|
if (card.isFaceDown()) {
|
||||||
this.titleText.setText("");
|
this.titleText.setText("");
|
||||||
this.showCastingCost = false;
|
|
||||||
} else {
|
} else {
|
||||||
|
if (showCardNameOverlay()) {
|
||||||
this.titleText.setText(card.getName());
|
this.titleText.setText(card.getName());
|
||||||
this.showCastingCost = true;
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (showCardPowerOverlay()) {
|
||||||
String sPt = "";
|
String sPt = "";
|
||||||
if (card.isCreature() && card.isPlaneswalker()) {
|
if (card.isCreature() && card.isPlaneswalker()) {
|
||||||
sPt = String.format("%d/%d (%d)", card.getNetAttack(), card.getNetDefense(), card.getCounters(CounterType.LOYALTY));
|
sPt = String.format("%d/%d (%d)", card.getNetAttack(), card.getNetDefense(), card.getCounters(CounterType.LOYALTY));
|
||||||
@@ -615,6 +604,7 @@ public class CardPanel extends JPanel implements CardContainer {
|
|||||||
sPt = String.valueOf(loyalty == 0 ? card.getBaseLoyalty() : loyalty);
|
sPt = String.valueOf(loyalty == 0 ? card.getBaseLoyalty() : loyalty);
|
||||||
}
|
}
|
||||||
this.ptText.setText(sPt);
|
this.ptText.setText(sPt);
|
||||||
|
}
|
||||||
|
|
||||||
int damage = card.getDamage();
|
int damage = card.getDamage();
|
||||||
this.damageText.setText(damage > 0 ? "\u00BB " + String.valueOf(damage) + " \u00AB" : "");
|
this.damageText.setText(damage > 0 ? "\u00BB " + String.valueOf(damage) + " \u00AB" : "");
|
||||||
@@ -646,9 +636,7 @@ public class CardPanel extends JPanel implements CardContainer {
|
|||||||
}
|
}
|
||||||
|
|
||||||
final BufferedImage image = card == null ? null : ImageCache.getImage(card, imagePanel.getWidth(), imagePanel.getHeight());
|
final BufferedImage image = card == null ? null : ImageCache.getImage(card, imagePanel.getWidth(), imagePanel.getHeight());
|
||||||
if ((this.getGameCard() != null) && Singletons.getModel().getPreferences().getPrefBoolean(FPref.UI_CARD_OVERLAY)) {
|
|
||||||
this.setText(this.getGameCard());
|
this.setText(this.getGameCard());
|
||||||
}
|
|
||||||
|
|
||||||
this.setImage(image);
|
this.setImage(image);
|
||||||
}
|
}
|
||||||
@@ -775,4 +763,22 @@ public class CardPanel extends JPanel implements CardContainer {
|
|||||||
public static final float getBorderSize() {
|
public static final float getBorderSize() {
|
||||||
return BLACK_BORDER_SIZE;
|
return BLACK_BORDER_SIZE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private boolean isPreferenceEnabled(FPref preferenceName) {
|
||||||
|
return Singletons.getModel().getPreferences().getPrefBoolean(preferenceName);
|
||||||
|
}
|
||||||
|
|
||||||
|
private boolean showCardNameOverlay() {
|
||||||
|
return isPreferenceEnabled(FPref.UI_OVERLAY_CARD_NAME);
|
||||||
|
}
|
||||||
|
|
||||||
|
private boolean showCardPowerOverlay() {
|
||||||
|
return isPreferenceEnabled(FPref.UI_OVERLAY_CARD_POWER);
|
||||||
|
}
|
||||||
|
|
||||||
|
private boolean showCardManaCostOverlay() {
|
||||||
|
return isPreferenceEnabled(FPref.UI_OVERLAY_CARD_MANA_COST) && !this.getCard().isFaceDown();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user