mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-19 04:08:01 +00:00
Merge branch 'master' of https://git.cardforge.org/core-developers/forge
This commit is contained in:
@@ -63,7 +63,6 @@ public class ChooseCardNameAi extends SpellAbilityAi {
|
|||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public Card chooseSingleCard(final Player ai, SpellAbility sa, Iterable<Card> options, boolean isOptional, Player targetedPlayer, Map<String, Object> params) {
|
public Card chooseSingleCard(final Player ai, SpellAbility sa, Iterable<Card> options, boolean isOptional, Player targetedPlayer, Map<String, Object> params) {
|
||||||
|
|
||||||
return ComputerUtilCard.getBestAI(options);
|
return ComputerUtilCard.getBestAI(options);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -120,7 +120,7 @@ public class GameFormat implements Comparable<GameFormat> {
|
|||||||
this.name = fName;
|
this.name = fName;
|
||||||
this.effectiveDate = effectiveDate;
|
this.effectiveDate = effectiveDate;
|
||||||
|
|
||||||
if(sets != null) {
|
if (sets != null) {
|
||||||
StaticData data = StaticData.instance();
|
StaticData data = StaticData.instance();
|
||||||
Set<String> parsedSets = new HashSet<>();
|
Set<String> parsedSets = new HashSet<>();
|
||||||
for (String set : sets) {
|
for (String set : sets) {
|
||||||
@@ -129,10 +129,9 @@ public class GameFormat implements Comparable<GameFormat> {
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
parsedSets.add(set);
|
parsedSets.add(set);
|
||||||
|
|
||||||
}
|
}
|
||||||
allowedSetCodes = Lists.newArrayList(parsedSets);
|
allowedSetCodes = Lists.newArrayList(parsedSets);
|
||||||
}else{
|
} else {
|
||||||
allowedSetCodes = new ArrayList<>();
|
allowedSetCodes = new ArrayList<>();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -183,7 +182,7 @@ public class GameFormat implements Comparable<GameFormat> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private static Date parseDate(String date) {
|
private static Date parseDate(String date) {
|
||||||
if( date.length() <= 7 )
|
if (date.length() <= 7)
|
||||||
date = date + "-01";
|
date = date + "-01";
|
||||||
try {
|
try {
|
||||||
return formatter.parse(date);
|
return formatter.parse(date);
|
||||||
@@ -299,11 +298,10 @@ public class GameFormat implements Comparable<GameFormat> {
|
|||||||
|
|
||||||
if (other.formatType != formatType){
|
if (other.formatType != formatType){
|
||||||
return formatType.compareTo(other.formatType);
|
return formatType.compareTo(other.formatType);
|
||||||
}else{
|
}
|
||||||
if (other.formatSubType != formatSubType){
|
if (other.formatSubType != formatSubType){
|
||||||
return formatSubType.compareTo(other.formatSubType);
|
return formatSubType.compareTo(other.formatSubType);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
if (formatType.equals(FormatType.HISTORIC)){
|
if (formatType.equals(FormatType.HISTORIC)){
|
||||||
int compareDates = this.effectiveDate.compareTo(other.effectiveDate);
|
int compareDates = this.effectiveDate.compareTo(other.effectiveDate);
|
||||||
if (compareDates != 0)
|
if (compareDates != 0)
|
||||||
@@ -342,7 +340,7 @@ public class GameFormat implements Comparable<GameFormat> {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected GameFormat read(File file) {
|
protected GameFormat read(File file) {
|
||||||
if(!includeHistoric && !coreFormats.contains(file.getName())){
|
if (!includeHistoric && !coreFormats.contains(file.getName())) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
final Map<String, List<String>> contents = FileSection.parseSections(FileUtil.readFile(file));
|
final Map<String, List<String>> contents = FileSection.parseSections(FileUtil.readFile(file));
|
||||||
@@ -391,17 +389,17 @@ public class GameFormat implements Comparable<GameFormat> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Boolean strRestrictedLegendary = section.getBoolean("restrictedlegendary");
|
Boolean strRestrictedLegendary = section.getBoolean("restrictedlegendary");
|
||||||
if ( strRestrictedLegendary != null ) {
|
if (strRestrictedLegendary != null) {
|
||||||
restrictedLegendary = strRestrictedLegendary;
|
restrictedLegendary = strRestrictedLegendary;
|
||||||
}
|
}
|
||||||
|
|
||||||
strCars = section.get("additional");
|
strCars = section.get("additional");
|
||||||
if ( strCars != null ) {
|
if (strCars != null) {
|
||||||
additionalCards = Arrays.asList(strCars.split("; "));
|
additionalCards = Arrays.asList(strCars.split("; "));
|
||||||
}
|
}
|
||||||
|
|
||||||
strCars = section.get("rarities");
|
strCars = section.get("rarities");
|
||||||
if ( strCars != null ) {
|
if (strCars != null) {
|
||||||
CardRarity cr;
|
CardRarity cr;
|
||||||
rarities = Lists.newArrayList();
|
rarities = Lists.newArrayList();
|
||||||
for (String s: strCars.split(", ")) {
|
for (String s: strCars.split(", ")) {
|
||||||
@@ -453,8 +451,8 @@ public class GameFormat implements Comparable<GameFormat> {
|
|||||||
|
|
||||||
public Iterable<GameFormat> getSanctionedList() {
|
public Iterable<GameFormat> getSanctionedList() {
|
||||||
List<GameFormat> coreList = new ArrayList<>();
|
List<GameFormat> coreList = new ArrayList<>();
|
||||||
for(GameFormat format: naturallyOrdered){
|
for (GameFormat format: naturallyOrdered) {
|
||||||
if(format.getFormatType().equals(FormatType.SANCTIONED)){
|
if (format.getFormatType().equals(FormatType.SANCTIONED)){
|
||||||
coreList.add(format);
|
coreList.add(format);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -463,8 +461,8 @@ public class GameFormat implements Comparable<GameFormat> {
|
|||||||
|
|
||||||
public Iterable<GameFormat> getFilterList() {
|
public Iterable<GameFormat> getFilterList() {
|
||||||
List<GameFormat> coreList = new ArrayList<>();
|
List<GameFormat> coreList = new ArrayList<>();
|
||||||
for(GameFormat format: naturallyOrdered){
|
for (GameFormat format: naturallyOrdered) {
|
||||||
if(!format.getFormatType().equals(FormatType.HISTORIC)
|
if (!format.getFormatType().equals(FormatType.HISTORIC)
|
||||||
&&!format.getFormatType().equals(FormatType.DIGITAL)){
|
&&!format.getFormatType().equals(FormatType.DIGITAL)){
|
||||||
coreList.add(format);
|
coreList.add(format);
|
||||||
}
|
}
|
||||||
@@ -474,8 +472,8 @@ public class GameFormat implements Comparable<GameFormat> {
|
|||||||
|
|
||||||
public Iterable<GameFormat> getHistoricList() {
|
public Iterable<GameFormat> getHistoricList() {
|
||||||
List<GameFormat> coreList = new ArrayList<>();
|
List<GameFormat> coreList = new ArrayList<>();
|
||||||
for(GameFormat format: naturallyOrdered){
|
for (GameFormat format: naturallyOrdered) {
|
||||||
if(format.getFormatType().equals(FormatType.HISTORIC)){
|
if (format.getFormatType().equals(FormatType.HISTORIC)){
|
||||||
coreList.add(format);
|
coreList.add(format);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -484,10 +482,10 @@ public class GameFormat implements Comparable<GameFormat> {
|
|||||||
|
|
||||||
public Map<String, List<GameFormat>> getHistoricMap() {
|
public Map<String, List<GameFormat>> getHistoricMap() {
|
||||||
Map<String, List<GameFormat>> coreList = new HashMap<>();
|
Map<String, List<GameFormat>> coreList = new HashMap<>();
|
||||||
for(GameFormat format: naturallyOrdered){
|
for (GameFormat format: naturallyOrdered){
|
||||||
if(format.getFormatType().equals(FormatType.HISTORIC)){
|
if (format.getFormatType().equals(FormatType.HISTORIC)){
|
||||||
String alpha = format.getName().substring(0,1);
|
String alpha = format.getName().substring(0,1);
|
||||||
if(!coreList.containsKey(alpha)){
|
if (!coreList.containsKey(alpha)) {
|
||||||
coreList.put(alpha,new ArrayList<>());
|
coreList.put(alpha,new ArrayList<>());
|
||||||
}
|
}
|
||||||
coreList.get(alpha).add(format);
|
coreList.get(alpha).add(format);
|
||||||
@@ -549,7 +547,7 @@ public class GameFormat implements Comparable<GameFormat> {
|
|||||||
SortedSet<GameFormat> result = new TreeSet<>();
|
SortedSet<GameFormat> result = new TreeSet<>();
|
||||||
Set<FormatSubType> coveredTypes = new HashSet<>();
|
Set<FormatSubType> coveredTypes = new HashSet<>();
|
||||||
CardPool allCards = deck.getAllCardsInASinglePool();
|
CardPool allCards = deck.getAllCardsInASinglePool();
|
||||||
for(GameFormat gf : reverseDateOrdered) {
|
for (GameFormat gf : reverseDateOrdered) {
|
||||||
if (gf.getFormatType().equals(FormatType.DIGITAL) && !exhaustive){
|
if (gf.getFormatType().equals(FormatType.DIGITAL) && !exhaustive){
|
||||||
//exclude Digital formats from lists for now
|
//exclude Digital formats from lists for now
|
||||||
continue;
|
continue;
|
||||||
@@ -587,13 +585,12 @@ public class GameFormat implements Comparable<GameFormat> {
|
|||||||
}
|
}
|
||||||
if (gf2.formatType != gf1.formatType){
|
if (gf2.formatType != gf1.formatType){
|
||||||
return gf1.formatType.compareTo(gf2.formatType);
|
return gf1.formatType.compareTo(gf2.formatType);
|
||||||
}else{
|
}
|
||||||
if (gf2.formatSubType != gf1.formatSubType){
|
if (gf2.formatSubType != gf1.formatSubType){
|
||||||
return gf1.formatSubType.compareTo(gf2.formatSubType);
|
return gf1.formatSubType.compareTo(gf2.formatSubType);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
if (gf1.formatType.equals(FormatType.HISTORIC)){
|
if (gf1.formatType.equals(FormatType.HISTORIC)){
|
||||||
if(gf1.effectiveDate!=gf2.effectiveDate) {//for matching dates or default dates default to name sorting
|
if (gf1.effectiveDate!=gf2.effectiveDate) {//for matching dates or default dates default to name sorting
|
||||||
return gf1.effectiveDate.compareTo(gf2.effectiveDate);
|
return gf1.effectiveDate.compareTo(gf2.effectiveDate);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -436,6 +436,13 @@ public class PlayerView extends GameEntityView {
|
|||||||
return getZoneSize(TrackableProperty.Library);
|
return getZoneSize(TrackableProperty.Library);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public FCollectionView<CardView> getSideboard() {
|
||||||
|
return get(TrackableProperty.Sideboard);
|
||||||
|
}
|
||||||
|
public int getSideboardSize() {
|
||||||
|
return getZoneSize(TrackableProperty.Sideboard);
|
||||||
|
}
|
||||||
|
|
||||||
public FCollectionView<CardView> getCards(final ZoneType zone) {
|
public FCollectionView<CardView> getCards(final ZoneType zone) {
|
||||||
TrackableProperty prop = getZoneProp(zone);
|
TrackableProperty prop = getZoneProp(zone);
|
||||||
if (prop != null) {
|
if (prop != null) {
|
||||||
|
|||||||
@@ -2,7 +2,6 @@ package forge.itemmanager.filters;
|
|||||||
|
|
||||||
import forge.deck.DeckProxy;
|
import forge.deck.DeckProxy;
|
||||||
import forge.game.GameFormat;
|
import forge.game.GameFormat;
|
||||||
import forge.item.PaperCard;
|
|
||||||
import forge.itemmanager.ItemManager;
|
import forge.itemmanager.ItemManager;
|
||||||
import forge.model.FModel;
|
import forge.model.FModel;
|
||||||
|
|
||||||
|
|||||||
@@ -481,7 +481,6 @@ public class DialogChooseSets {
|
|||||||
|
|
||||||
private int getMainDialogWidth() {
|
private int getMainDialogWidth() {
|
||||||
int winWidth = Singletons.getView().getFrame().getSize().width;
|
int winWidth = Singletons.getView().getFrame().getSize().width;
|
||||||
System.out.println("Win Width " + winWidth);
|
|
||||||
int[] sizeBoundaries = new int[] {800, 1024, 1280, 2048};
|
int[] sizeBoundaries = new int[] {800, 1024, 1280, 2048};
|
||||||
return calculateRelativePanelDimension(winWidth, 90, sizeBoundaries);
|
return calculateRelativePanelDimension(winWidth, 90, sizeBoundaries);
|
||||||
}
|
}
|
||||||
@@ -489,7 +488,6 @@ public class DialogChooseSets {
|
|||||||
// So far, not yet used, but left here just in case
|
// So far, not yet used, but left here just in case
|
||||||
private int getMainDialogHeight() {
|
private int getMainDialogHeight() {
|
||||||
int winHeight = Singletons.getView().getFrame().getSize().height;
|
int winHeight = Singletons.getView().getFrame().getSize().height;
|
||||||
System.out.println("Win Height " + winHeight);
|
|
||||||
int[] sizeBoundaries = new int[] {600, 720, 780, 1024};
|
int[] sizeBoundaries = new int[] {600, 720, 780, 1024};
|
||||||
return calculateRelativePanelDimension(winHeight, 40, sizeBoundaries);
|
return calculateRelativePanelDimension(winHeight, 40, sizeBoundaries);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -485,6 +485,7 @@ public final class CMatchUI
|
|||||||
case Exile:
|
case Exile:
|
||||||
case Flashback:
|
case Flashback:
|
||||||
case Command:
|
case Command:
|
||||||
|
case Ante:
|
||||||
case Sideboard:
|
case Sideboard:
|
||||||
if (FloatingZone.show(this,player,zone)) {
|
if (FloatingZone.show(this,player,zone)) {
|
||||||
updatedPlayerZones.add(update);
|
updatedPlayerZones.add(update);
|
||||||
@@ -513,6 +514,8 @@ public final class CMatchUI
|
|||||||
case Exile:
|
case Exile:
|
||||||
case Flashback:
|
case Flashback:
|
||||||
case Command:
|
case Command:
|
||||||
|
case Ante:
|
||||||
|
case Sideboard:
|
||||||
FloatingZone.hide(this,player,zone);
|
FloatingZone.hide(this,player,zone);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
|||||||
@@ -69,6 +69,8 @@ public class CField implements ICDoc {
|
|||||||
final ZoneAction graveAction = new ZoneAction(matchUI, player, ZoneType.Graveyard);
|
final ZoneAction graveAction = new ZoneAction(matchUI, player, ZoneType.Graveyard);
|
||||||
final ZoneAction flashBackAction = new ZoneAction(matchUI, player, ZoneType.Flashback);
|
final ZoneAction flashBackAction = new ZoneAction(matchUI, player, ZoneType.Flashback);
|
||||||
final ZoneAction commandAction = new ZoneAction(matchUI, player, ZoneType.Command);
|
final ZoneAction commandAction = new ZoneAction(matchUI, player, ZoneType.Command);
|
||||||
|
final ZoneAction anteAction = new ZoneAction(matchUI, player, ZoneType.Ante);
|
||||||
|
final ZoneAction sideboardAction = new ZoneAction(matchUI, player, ZoneType.Sideboard);
|
||||||
|
|
||||||
final Function<Byte, Boolean> manaAction = new Function<Byte, Boolean>() {
|
final Function<Byte, Boolean> manaAction = new Function<Byte, Boolean>() {
|
||||||
@Override public final Boolean apply(final Byte colorCode) {
|
@Override public final Boolean apply(final Byte colorCode) {
|
||||||
@@ -85,7 +87,8 @@ public class CField implements ICDoc {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
view.getDetailsPanel().setupMouseActions(handAction, libraryAction, exileAction, graveAction, flashBackAction, commandAction, manaAction);
|
view.getDetailsPanel().setupMouseActions(handAction, libraryAction, exileAction, graveAction, flashBackAction,
|
||||||
|
commandAction, anteAction, sideboardAction, manaAction);
|
||||||
}
|
}
|
||||||
|
|
||||||
public final CMatchUI getMatchUI() {
|
public final CMatchUI getMatchUI() {
|
||||||
|
|||||||
@@ -39,6 +39,8 @@ public class PlayerDetailsPanel extends JPanel {
|
|||||||
private final DetailLabel lblExile = new DetailLabel(FSkinProp.IMG_ZONE_EXILE, Localizer.getInstance().getMessage("lblExileNCards", "%s"));
|
private final DetailLabel lblExile = new DetailLabel(FSkinProp.IMG_ZONE_EXILE, Localizer.getInstance().getMessage("lblExileNCards", "%s"));
|
||||||
private final DetailLabel lblFlashback = new DetailLabel(FSkinProp.IMG_ZONE_FLASHBACK, Localizer.getInstance().getMessage("lblFlashbackNCards", "%s"));
|
private final DetailLabel lblFlashback = new DetailLabel(FSkinProp.IMG_ZONE_FLASHBACK, Localizer.getInstance().getMessage("lblFlashbackNCards", "%s"));
|
||||||
private final DetailLabel lblCommand = new DetailLabel(FSkinProp.IMG_PLANESWALKER, Localizer.getInstance().getMessage("lblCommandZoneNCards", "%s"));
|
private final DetailLabel lblCommand = new DetailLabel(FSkinProp.IMG_PLANESWALKER, Localizer.getInstance().getMessage("lblCommandZoneNCards", "%s"));
|
||||||
|
private final DetailLabel lblAnte = new DetailLabel(FSkinProp.IMG_ZONE_ANTE, Localizer.getInstance().getMessage("lblAnteZoneNCards", "%s"));
|
||||||
|
private final DetailLabel lblSideboard = new DetailLabel(FSkinProp.IMG_ZONE_SIDEBOARD, Localizer.getInstance().getMessage("lblSideboardNCards", "%s"));
|
||||||
private final List<Pair<DetailLabel, Byte>> manaLabels = new ArrayList<>();
|
private final List<Pair<DetailLabel, Byte>> manaLabels = new ArrayList<>();
|
||||||
|
|
||||||
public PlayerDetailsPanel(final PlayerView player0) {
|
public PlayerDetailsPanel(final PlayerView player0) {
|
||||||
@@ -67,6 +69,7 @@ public class PlayerDetailsPanel extends JPanel {
|
|||||||
final SkinnedPanel row4 = new SkinnedPanel(new MigLayout("insets 0, gap 0"));
|
final SkinnedPanel row4 = new SkinnedPanel(new MigLayout("insets 0, gap 0"));
|
||||||
final SkinnedPanel row5 = new SkinnedPanel(new MigLayout("insets 0, gap 0"));
|
final SkinnedPanel row5 = new SkinnedPanel(new MigLayout("insets 0, gap 0"));
|
||||||
final SkinnedPanel row6 = new SkinnedPanel(new MigLayout("insets 0, gap 0"));
|
final SkinnedPanel row6 = new SkinnedPanel(new MigLayout("insets 0, gap 0"));
|
||||||
|
final SkinnedPanel row7 = new SkinnedPanel(new MigLayout("insets 0, gap 0"));
|
||||||
|
|
||||||
row1.setBackground(FSkin.getColor(FSkin.Colors.CLR_ZEBRA));
|
row1.setBackground(FSkin.getColor(FSkin.Colors.CLR_ZEBRA));
|
||||||
row2.setOpaque(false);
|
row2.setOpaque(false);
|
||||||
@@ -74,6 +77,7 @@ public class PlayerDetailsPanel extends JPanel {
|
|||||||
row4.setOpaque(false);
|
row4.setOpaque(false);
|
||||||
row5.setBackground(FSkin.getColor(FSkin.Colors.CLR_ZEBRA));
|
row5.setBackground(FSkin.getColor(FSkin.Colors.CLR_ZEBRA));
|
||||||
row6.setOpaque(false);
|
row6.setOpaque(false);
|
||||||
|
row7.setBackground(FSkin.getColor(FSkin.Colors.CLR_ZEBRA));
|
||||||
|
|
||||||
// Hand, library, graveyard, exile, flashback, command
|
// Hand, library, graveyard, exile, flashback, command
|
||||||
final String constraintsCell = "w 50%-4px!, h 100%!, gapleft 2px, gapright 2px";
|
final String constraintsCell = "w 50%-4px!, h 100%!, gapleft 2px, gapright 2px";
|
||||||
@@ -87,22 +91,26 @@ public class PlayerDetailsPanel extends JPanel {
|
|||||||
row3.add(lblFlashback, constraintsCell);
|
row3.add(lblFlashback, constraintsCell);
|
||||||
row3.add(lblCommand, constraintsCell);
|
row3.add(lblCommand, constraintsCell);
|
||||||
|
|
||||||
row4.add(manaLabels.get(0).getLeft(), constraintsCell);
|
row4.add(lblAnte, constraintsCell);
|
||||||
row4.add(manaLabels.get(1).getLeft(), constraintsCell);
|
row4.add(lblSideboard, constraintsCell);
|
||||||
|
|
||||||
row5.add(manaLabels.get(2).getLeft(), constraintsCell);
|
row5.add(manaLabels.get(0).getLeft(), constraintsCell);
|
||||||
row5.add(manaLabels.get(3).getLeft(), constraintsCell);
|
row5.add(manaLabels.get(1).getLeft(), constraintsCell);
|
||||||
|
|
||||||
row6.add(manaLabels.get(4).getLeft(), constraintsCell);
|
row6.add(manaLabels.get(2).getLeft(), constraintsCell);
|
||||||
row6.add(manaLabels.get(5).getLeft(), constraintsCell);
|
row6.add(manaLabels.get(3).getLeft(), constraintsCell);
|
||||||
|
|
||||||
final String constraintsRow = "w 100%!, h 16%!";
|
row7.add(manaLabels.get(4).getLeft(), constraintsCell);
|
||||||
|
row7.add(manaLabels.get(5).getLeft(), constraintsCell);
|
||||||
|
|
||||||
|
final String constraintsRow = "w 100%!, h 14%!";
|
||||||
add(row1, constraintsRow + ", gap 0 0 2% 0");
|
add(row1, constraintsRow + ", gap 0 0 2% 0");
|
||||||
add(row2, constraintsRow);
|
add(row2, constraintsRow);
|
||||||
add(row3, constraintsRow);
|
add(row3, constraintsRow);
|
||||||
add(row4, constraintsRow);
|
add(row4, constraintsRow);
|
||||||
add(row5, constraintsRow);
|
add(row5, constraintsRow);
|
||||||
add(row6, constraintsRow);
|
add(row6, constraintsRow);
|
||||||
|
add(row7, constraintsRow);
|
||||||
}
|
}
|
||||||
|
|
||||||
public Component getLblLibrary() {
|
public Component getLblLibrary() {
|
||||||
@@ -119,7 +127,9 @@ public class PlayerDetailsPanel extends JPanel {
|
|||||||
librarySize = String.valueOf(player.getLibrarySize()),
|
librarySize = String.valueOf(player.getLibrarySize()),
|
||||||
flashbackSize = String.valueOf(player.getFlashbackSize()),
|
flashbackSize = String.valueOf(player.getFlashbackSize()),
|
||||||
exileSize = String.valueOf(player.getExileSize()),
|
exileSize = String.valueOf(player.getExileSize()),
|
||||||
commandSize = String.valueOf(player.getCommandSize());
|
commandSize = String.valueOf(player.getCommandSize()),
|
||||||
|
anteSize = String.valueOf(player.getAnteSize()),
|
||||||
|
sideboardSize = String.valueOf(player.getSideboardSize());
|
||||||
|
|
||||||
lblHand.setText(handSize);
|
lblHand.setText(handSize);
|
||||||
lblHand.setToolTip(handSize, player.getMaxHandString());
|
lblHand.setToolTip(handSize, player.getMaxHandString());
|
||||||
@@ -133,6 +143,10 @@ public class PlayerDetailsPanel extends JPanel {
|
|||||||
lblExile.setToolTip(exileSize);
|
lblExile.setToolTip(exileSize);
|
||||||
lblCommand.setText(commandSize);
|
lblCommand.setText(commandSize);
|
||||||
lblCommand.setToolTip(commandSize);
|
lblCommand.setToolTip(commandSize);
|
||||||
|
lblAnte.setText(anteSize);
|
||||||
|
lblAnte.setToolTip(anteSize);
|
||||||
|
lblSideboard.setText(sideboardSize);
|
||||||
|
lblSideboard.setToolTip(sideboardSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -147,7 +161,7 @@ public class PlayerDetailsPanel extends JPanel {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void setupMouseActions(final Runnable handAction, final Runnable libraryAction, final Runnable exileAction,
|
public void setupMouseActions(final Runnable handAction, final Runnable libraryAction, final Runnable exileAction,
|
||||||
final Runnable graveAction, final Runnable flashBackAction, final Runnable commandAction,
|
final Runnable graveAction, final Runnable flashBackAction, final Runnable commandAction, final Runnable anteAction, final Runnable sideboardAction,
|
||||||
final Function<Byte, Boolean> manaAction) {
|
final Function<Byte, Boolean> manaAction) {
|
||||||
// Detail label listeners
|
// Detail label listeners
|
||||||
lblGraveyard.addMouseListener(new FMouseAdapter() {
|
lblGraveyard.addMouseListener(new FMouseAdapter() {
|
||||||
@@ -180,6 +194,16 @@ public class PlayerDetailsPanel extends JPanel {
|
|||||||
commandAction.run();
|
commandAction.run();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
lblAnte.addMouseListener(new FMouseAdapter() {
|
||||||
|
@Override public void onLeftClick(final MouseEvent e) {
|
||||||
|
anteAction.run();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
lblSideboard.addMouseListener(new FMouseAdapter() {
|
||||||
|
@Override public void onLeftClick(final MouseEvent e) {
|
||||||
|
sideboardAction.run();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
for (final Pair<DetailLabel, Byte> labelPair : manaLabels) {
|
for (final Pair<DetailLabel, Byte> labelPair : manaLabels) {
|
||||||
labelPair.getLeft().addMouseListener(new FMouseAdapter() {
|
labelPair.getLeft().addMouseListener(new FMouseAdapter() {
|
||||||
|
|||||||
@@ -188,6 +188,15 @@ public class FloatingZone extends FloatingCardArea {
|
|||||||
case Flashback:
|
case Flashback:
|
||||||
window.setIconImage(FSkin.getImage(FSkinProp.IMG_ZONE_FLASHBACK));
|
window.setIconImage(FSkin.getImage(FSkinProp.IMG_ZONE_FLASHBACK));
|
||||||
break;
|
break;
|
||||||
|
case Command:
|
||||||
|
window.setIconImage(FSkin.getImage(FSkinProp.IMG_PLANESWALKER));
|
||||||
|
break;
|
||||||
|
case Ante:
|
||||||
|
window.setIconImage(FSkin.getImage(FSkinProp.IMG_ZONE_ANTE));
|
||||||
|
break;
|
||||||
|
case Sideboard:
|
||||||
|
window.setIconImage(FSkin.getImage(FSkinProp.IMG_ZONE_SIDEBOARD));
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
locPref = null;
|
locPref = null;
|
||||||
break;
|
break;
|
||||||
@@ -247,6 +256,15 @@ public class FloatingZone extends FloatingCardArea {
|
|||||||
case Flashback:
|
case Flashback:
|
||||||
locPref = isAi ? FPref.ZONE_LOC_AI_FLASHBACK : FPref.ZONE_LOC_HUMAN_FLASHBACK;
|
locPref = isAi ? FPref.ZONE_LOC_AI_FLASHBACK : FPref.ZONE_LOC_HUMAN_FLASHBACK;
|
||||||
break;
|
break;
|
||||||
|
case Command:
|
||||||
|
locPref = isAi ? FPref.ZONE_LOC_AI_COMMAND : FPref.ZONE_LOC_HUMAN_COMMAND;
|
||||||
|
break;
|
||||||
|
case Ante:
|
||||||
|
locPref = isAi ? FPref.ZONE_LOC_AI_ANTE : FPref.ZONE_LOC_HUMAN_ANTE;
|
||||||
|
break;
|
||||||
|
case Sideboard:
|
||||||
|
locPref = isAi ? FPref.ZONE_LOC_AI_SIDEBOARD : FPref.ZONE_LOC_HUMAN_SIDEBOARD;
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
locPref = null;
|
locPref = null;
|
||||||
break;
|
break;
|
||||||
|
|||||||
@@ -34,6 +34,8 @@ public enum FSkinImage implements FImage {
|
|||||||
GRAVEYARD (FSkinProp.IMG_ZONE_GRAVEYARD, SourceFile.ICONS),
|
GRAVEYARD (FSkinProp.IMG_ZONE_GRAVEYARD, SourceFile.ICONS),
|
||||||
HDGRAVEYARD (FSkinProp.IMG_HDZONE_GRAVEYARD, SourceFile.BUTTONS),
|
HDGRAVEYARD (FSkinProp.IMG_HDZONE_GRAVEYARD, SourceFile.BUTTONS),
|
||||||
|
|
||||||
|
SIDEBOARD (FSkinProp.IMG_ZONE_SIDEBOARD, SourceFile.ICONS),
|
||||||
|
|
||||||
HDMANAPOOL (FSkinProp.IMG_HDZONE_MANAPOOL, SourceFile.BUTTONS),
|
HDMANAPOOL (FSkinProp.IMG_HDZONE_MANAPOOL, SourceFile.BUTTONS),
|
||||||
|
|
||||||
POISON (FSkinProp.IMG_ZONE_POISON, SourceFile.ICONS),
|
POISON (FSkinProp.IMG_ZONE_POISON, SourceFile.ICONS),
|
||||||
|
|||||||
@@ -76,6 +76,7 @@ public class VPlayerPanel extends FContainer {
|
|||||||
tabs.add(tabManaPool);
|
tabs.add(tabManaPool);
|
||||||
|
|
||||||
addZoneDisplay(ZoneType.Exile, Forge.hdbuttons ? FSkinImage.HDEXILE : FSkinImage.EXILE);
|
addZoneDisplay(ZoneType.Exile, Forge.hdbuttons ? FSkinImage.HDEXILE : FSkinImage.EXILE);
|
||||||
|
addZoneDisplay(ZoneType.Sideboard, Forge.hdbuttons ? FSkinImage.HDSIDEBOARD :FSkinImage.SIDEBOARD);
|
||||||
|
|
||||||
commandZone = add(new CommandZoneDisplay(player));
|
commandZone = add(new CommandZoneDisplay(player));
|
||||||
|
|
||||||
|
|||||||
@@ -887,7 +887,7 @@ lblSet=Auflage
|
|||||||
#Set word has different meanings in other languages
|
#Set word has different meanings in other languages
|
||||||
lblDefault=Standard
|
lblDefault=Standard
|
||||||
lblType=Typ
|
lblType=Typ
|
||||||
lblPlaneswalkerDeckSort=Planeswalker Deck
|
lblPlaneswalkerDeckSort=Planeswalker-Deck
|
||||||
lblRarity=Seltenheit
|
lblRarity=Seltenheit
|
||||||
lblConvertToFoil=Foil
|
lblConvertToFoil=Foil
|
||||||
lblMulticolor=Mehrfarbig
|
lblMulticolor=Mehrfarbig
|
||||||
@@ -904,6 +904,7 @@ lblCard=Karte
|
|||||||
lblFormat=Format
|
lblFormat=Format
|
||||||
lblFormats=Formate
|
lblFormats=Formate
|
||||||
lblQuestWorld=Quest-Welt
|
lblQuestWorld=Quest-Welt
|
||||||
|
lblBlock=Block
|
||||||
lblSets=Sets
|
lblSets=Sets
|
||||||
lblTypes=Typen
|
lblTypes=Typen
|
||||||
lblConvertedManaCosts=umgewandelte Manakosten
|
lblConvertedManaCosts=umgewandelte Manakosten
|
||||||
@@ -2558,6 +2559,8 @@ lblLibraryNCards=Bibliothek ({0})
|
|||||||
lblExileNCards=Exil ({0})
|
lblExileNCards=Exil ({0})
|
||||||
lblFlashbackNCards=Rückblende-Karten ({0})
|
lblFlashbackNCards=Rückblende-Karten ({0})
|
||||||
lblCommandZoneNCards=Komandozone ({0})
|
lblCommandZoneNCards=Komandozone ({0})
|
||||||
|
lblAnteZoneNCards=Ante zone ({0})
|
||||||
|
lblSideboardNCards=Sideboard ({0})
|
||||||
lblWhiteManaOfN=Weißes Mana ({0})
|
lblWhiteManaOfN=Weißes Mana ({0})
|
||||||
lblBlueManaOfN=Blaues Mana ({0})
|
lblBlueManaOfN=Blaues Mana ({0})
|
||||||
lblBlackManaOfN=Schwarzes Mana ({0})
|
lblBlackManaOfN=Schwarzes Mana ({0})
|
||||||
|
|||||||
@@ -2558,6 +2558,8 @@ lblLibraryNCards=Library ({0})
|
|||||||
lblExileNCards=Exile ({0})
|
lblExileNCards=Exile ({0})
|
||||||
lblFlashbackNCards=Flashback cards ({0})
|
lblFlashbackNCards=Flashback cards ({0})
|
||||||
lblCommandZoneNCards=Command zone ({0})
|
lblCommandZoneNCards=Command zone ({0})
|
||||||
|
lblAnteZoneNCards=Ante zone ({0})
|
||||||
|
lblSideboardNCards=Sideboard ({0})
|
||||||
lblWhiteManaOfN=White mana ({0})
|
lblWhiteManaOfN=White mana ({0})
|
||||||
lblBlueManaOfN=Blue mana ({0})
|
lblBlueManaOfN=Blue mana ({0})
|
||||||
lblBlackManaOfN=Black mana ({0})
|
lblBlackManaOfN=Black mana ({0})
|
||||||
|
|||||||
@@ -2557,6 +2557,8 @@ lblLibraryNCards=Biblioteca ({0})
|
|||||||
lblExileNCards=Exilio ({0})
|
lblExileNCards=Exilio ({0})
|
||||||
lblFlashbackNCards=Cartas con retrospectiva ({0})
|
lblFlashbackNCards=Cartas con retrospectiva ({0})
|
||||||
lblCommandZoneNCards=Zona de comando ({0})
|
lblCommandZoneNCards=Zona de comando ({0})
|
||||||
|
lblAnteZoneNCards=Ante zone ({0})
|
||||||
|
lblSideboardNCards=Sideboard ({0})
|
||||||
lblWhiteManaOfN=Maná blanco ({0})
|
lblWhiteManaOfN=Maná blanco ({0})
|
||||||
lblBlueManaOfN=Maná azul ({0})
|
lblBlueManaOfN=Maná azul ({0})
|
||||||
lblBlackManaOfN=Maná negro ({0})
|
lblBlackManaOfN=Maná negro ({0})
|
||||||
|
|||||||
@@ -2557,6 +2557,8 @@ lblLibraryNCards=Grimorio ({0})
|
|||||||
lblExileNCards=Esilio ({0})
|
lblExileNCards=Esilio ({0})
|
||||||
lblFlashbackNCards=Carte Flashback ({0})
|
lblFlashbackNCards=Carte Flashback ({0})
|
||||||
lblCommandZoneNCards=Zona di Comando ({0})
|
lblCommandZoneNCards=Zona di Comando ({0})
|
||||||
|
lblAnteZoneNCards=Ante zone ({0})
|
||||||
|
lblSideboardNCards=Sideboard ({0})
|
||||||
lblWhiteManaOfN=Mana Bianco ({0})
|
lblWhiteManaOfN=Mana Bianco ({0})
|
||||||
lblBlueManaOfN=Mana Blu ({0})
|
lblBlueManaOfN=Mana Blu ({0})
|
||||||
lblBlackManaOfN=Mana Nero ({0})
|
lblBlackManaOfN=Mana Nero ({0})
|
||||||
|
|||||||
@@ -2558,6 +2558,8 @@ lblLibraryNCards=ライブラリー ({0})
|
|||||||
lblExileNCards=追放 ({0})
|
lblExileNCards=追放 ({0})
|
||||||
lblFlashbackNCards=フラッシュバックカード ({0})
|
lblFlashbackNCards=フラッシュバックカード ({0})
|
||||||
lblCommandZoneNCards=統率領域 ({0})
|
lblCommandZoneNCards=統率領域 ({0})
|
||||||
|
lblAnteZoneNCards=アンティ領域 ({0})
|
||||||
|
lblSideboardNCards=サイドボード ({0})
|
||||||
lblWhiteManaOfN=白マナ ({0})
|
lblWhiteManaOfN=白マナ ({0})
|
||||||
lblBlueManaOfN=青マナ ({0})
|
lblBlueManaOfN=青マナ ({0})
|
||||||
lblBlackManaOfN=黒マナ ({0})
|
lblBlackManaOfN=黒マナ ({0})
|
||||||
|
|||||||
@@ -2558,6 +2558,8 @@ lblLibraryNCards=牌库 ({0})
|
|||||||
lblExileNCards=放逐区 ({0})
|
lblExileNCards=放逐区 ({0})
|
||||||
lblFlashbackNCards=可返照 ({0})
|
lblFlashbackNCards=可返照 ({0})
|
||||||
lblCommandZoneNCards=指挥官区 ({0})
|
lblCommandZoneNCards=指挥官区 ({0})
|
||||||
|
lblAnteZoneNCards=Ante zone ({0})
|
||||||
|
lblSideboardNCards=Sideboard ({0})
|
||||||
lblWhiteManaOfN=白色法术力 ({0})
|
lblWhiteManaOfN=白色法术力 ({0})
|
||||||
lblBlueManaOfN=蓝色法术力 ({0})
|
lblBlueManaOfN=蓝色法术力 ({0})
|
||||||
lblBlackManaOfN=黑色法术力 ({0})
|
lblBlackManaOfN=黑色法术力 ({0})
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 328 KiB After Width: | Height: | Size: 306 KiB |
@@ -238,12 +238,18 @@ public class ForgePreferences extends PreferencesStore<ForgePreferences.FPref> {
|
|||||||
ZONE_LOC_HUMAN_GRAVEYARD(""),
|
ZONE_LOC_HUMAN_GRAVEYARD(""),
|
||||||
ZONE_LOC_HUMAN_EXILE(""),
|
ZONE_LOC_HUMAN_EXILE(""),
|
||||||
ZONE_LOC_HUMAN_FLASHBACK(""),
|
ZONE_LOC_HUMAN_FLASHBACK(""),
|
||||||
|
ZONE_LOC_HUMAN_COMMAND(""),
|
||||||
|
ZONE_LOC_HUMAN_ANTE(""),
|
||||||
|
ZONE_LOC_HUMAN_SIDEBOARD(""),
|
||||||
|
|
||||||
ZONE_LOC_AI_HAND(""),
|
ZONE_LOC_AI_HAND(""),
|
||||||
ZONE_LOC_AI_LIBRARY(""),
|
ZONE_LOC_AI_LIBRARY(""),
|
||||||
ZONE_LOC_AI_GRAVEYARD(""),
|
ZONE_LOC_AI_GRAVEYARD(""),
|
||||||
ZONE_LOC_AI_EXILE(""),
|
ZONE_LOC_AI_EXILE(""),
|
||||||
ZONE_LOC_AI_FLASHBACK(""),
|
ZONE_LOC_AI_FLASHBACK(""),
|
||||||
|
ZONE_LOC_AI_COMMAND(""),
|
||||||
|
ZONE_LOC_AI_ANTE(""),
|
||||||
|
ZONE_LOC_AI_SIDEBOARD(""),
|
||||||
|
|
||||||
CHAT_WINDOW_LOC(""),
|
CHAT_WINDOW_LOC(""),
|
||||||
|
|
||||||
|
|||||||
@@ -62,6 +62,11 @@ public enum FSkinProp {
|
|||||||
IMG_ZONE_GRAVEYARD (new int[] {320, 0, 40, 40}, PropType.IMAGE),
|
IMG_ZONE_GRAVEYARD (new int[] {320, 0, 40, 40}, PropType.IMAGE),
|
||||||
IMG_HDZONE_GRAVEYARD (new int[] {132, 6, 128, 128}, PropType.BUTTONS),
|
IMG_HDZONE_GRAVEYARD (new int[] {132, 6, 128, 128}, PropType.BUTTONS),
|
||||||
|
|
||||||
|
IMG_ZONE_ANTE (new int[] {360, 0, 40, 40}, PropType.IMAGE),
|
||||||
|
|
||||||
|
IMG_ZONE_SIDEBOARD (new int[] {360, 40, 40, 40}, PropType.IMAGE),
|
||||||
|
IMG_HDZONE_SIDEBOARD (new int[] {132, 1792, 128, 128}, PropType.BUTTONS),
|
||||||
|
|
||||||
IMG_HDZONE_MANAPOOL (new int[] {2, 6, 128, 128}, PropType.BUTTONS),
|
IMG_HDZONE_MANAPOOL (new int[] {2, 6, 128, 128}, PropType.BUTTONS),
|
||||||
|
|
||||||
IMG_ZONE_POISON (new int[] {320, 80, 40, 40}, PropType.IMAGE),
|
IMG_ZONE_POISON (new int[] {320, 80, 40, 40}, PropType.IMAGE),
|
||||||
|
|||||||
Reference in New Issue
Block a user