Fix so quest stats updated

This commit is contained in:
drdev
2014-07-07 04:16:15 +00:00
parent 77bb8b60c1
commit 787bb94d6d
9 changed files with 166 additions and 57 deletions

View File

@@ -59,7 +59,7 @@ public enum VSubmenuDuels implements IVSubmenu<CSubmenuDuels>, IVQuestStats {
.fontSize(15).build();
private final LblHeader lblTitle = new LblHeader("Quest Mode: Duels");
private final JLabel lblInfo = new FLabel.Builder().text("Select your next duel.")
private final FLabel lblInfo = new FLabel.Builder().text("Select your next duel.")
.fontStyle(Font.BOLD).fontSize(16)
.fontAlign(SwingConstants.LEFT).build();

View File

@@ -58,7 +58,9 @@ public abstract class FDropDownMenu extends FDropDown {
}
public void addItem(FMenuItem item) {
items.add(add(item));
if (item.isVisible()) {
items.add(add(item));
}
}
@Override

View File

@@ -5,17 +5,20 @@ import com.badlogic.gdx.utils.Timer;
import com.badlogic.gdx.utils.Timer.Task;
import forge.Graphics;
import forge.UiCommand;
import forge.assets.FImage;
import forge.assets.FSkinColor;
import forge.assets.FSkinFont;
import forge.assets.FSkinColor.Colors;
import forge.assets.FSkinProp;
import forge.interfaces.IButton;
import forge.toolbox.FDisplayObject;
import forge.toolbox.FEvent;
import forge.toolbox.FEvent.FEventHandler;
import forge.toolbox.FEvent.FEventType;
import forge.util.Utils;
public class FMenuItem extends FDisplayObject {
public class FMenuItem extends FDisplayObject implements IButton {
public static final float HEIGHT = Utils.AVG_FINGER_HEIGHT * 0.8f;
protected static final float DIVOT_WIDTH = HEIGHT / 6;
protected static final float GAP_X = HEIGHT * 0.1f;
@@ -121,4 +124,32 @@ public class FMenuItem extends FDisplayObject {
//draw separator line
g.drawLine(1, SEPARATOR_COLOR, 0, h, w, h);
}
@Override
public String getText() {
return text;
}
@Override
public void setText(String text0) {
}
@Override
public boolean isSelected() {
return false;
}
@Override
public void setSelected(boolean b0) {
}
@Override
public boolean requestFocusInWindow() {
return false;
}
@Override
public void setCommand(UiCommand command0) {
}
@Override
public void setTextColor(FSkinProp color) {
}
@Override
public void setTextColor(int r, int g, int b) {
}
}

View File

@@ -1,5 +1,6 @@
package forge.screens.quest;
import forge.quest.QuestUtil;
import forge.screens.LaunchScreen;
public class QuestChallengesScreen extends LaunchScreen {
@@ -7,6 +8,11 @@ public class QuestChallengesScreen extends LaunchScreen {
super("Quest Duels", QuestMenu.getMenu());
}
@Override
public void onActivate() {
QuestUtil.updateQuestView(QuestMenu.getMenu());
}
@Override
protected void doLayoutAboveBtnStart(float startY, float width, float height) {
// TODO Auto-generated method stub

View File

@@ -1,12 +1,43 @@
package forge.screens.quest;
import forge.assets.FSkinFont;
import forge.interfaces.IButton;
import forge.interfaces.ICheckBox;
import forge.interfaces.IComboBox;
import forge.quest.QuestUtil;
import forge.screens.LaunchScreen;
import forge.toolbox.FCheckBox;
import forge.toolbox.FComboBox;
import forge.toolbox.FLabel;
public class QuestDuelsScreen extends LaunchScreen {
private final FComboBox<String> cbxPet = add(new FComboBox<String>());
private final FCheckBox cbCharm = add(new FCheckBox("Use Charm of Vigor"));
private final FCheckBox cbPlant = add(new FCheckBox("Summon Plant"));
private final FLabel lblZep = add(new FLabel.Builder().text("Launch Zeppelin").font(FSkinFont.get(14)).build());
private final FLabel lblInfo = add(new FLabel.Builder().text("Select your next duel.")
.font(FSkinFont.get(16)).build());
private final FLabel lblCurrentDeck = add(new FLabel.Builder()
.text("Current deck hasn't been set yet.")
.font(FSkinFont.get(12)).build());
private final FLabel lblNextChallengeInWins = add(new FLabel.Builder()
.text("Next challenge in wins hasn't been set yet.")
.font(FSkinFont.get(12)).build());
private final FLabel btnRandomOpponent = add(new FLabel.ButtonBuilder().text("Random Duel").font(FSkinFont.get(16)).build());
public QuestDuelsScreen() {
super("Quest Duels", QuestMenu.getMenu());
}
@Override
public void onActivate() {
QuestUtil.updateQuestView(QuestMenu.getMenu());
}
@Override
protected void doLayoutAboveBtnStart(float startY, float width, float height) {
// TODO Auto-generated method stub
@@ -18,4 +49,32 @@ public class QuestDuelsScreen extends LaunchScreen {
// TODO Auto-generated method stub
return false;
}
public IButton getBtnRandomOpponent() {
return btnRandomOpponent;
}
public IButton getLblNextChallengeInWins() {
return lblNextChallengeInWins;
}
public IButton getLblCurrentDeck() {
return lblCurrentDeck;
}
public IComboBox<String> getCbxPet() {
return cbxPet;
}
public ICheckBox getCbPlant() {
return cbPlant;
}
public ICheckBox getCbCharm() {
return cbCharm;
}
public IButton getLblZep() {
return lblZep;
}
}

View File

@@ -21,13 +21,36 @@ import forge.toolbox.FEvent.FEventHandler;
public class QuestMenu extends FPopupMenu implements IVQuestStats {
private static final QuestMenu questMenu = new QuestMenu();
private static final QuestBazaarScreen bazaarScreen = new QuestBazaarScreen();
private static QuestChallengesScreen challengesScreen = new QuestChallengesScreen();
private static QuestDecksScreen decksScreen = new QuestDecksScreen();
private static QuestDuelsScreen duelsScreen = new QuestDuelsScreen();
private static QuestPrefsScreen prefsScreen = new QuestPrefsScreen();
private static QuestSpellShopScreen spellShopScreen = new QuestSpellShopScreen();
private static QuestStatsScreen statsScreen = new QuestStatsScreen();
private static QuestTournamentsScreen tournamentsScreen = new QuestTournamentsScreen();
private static final QuestChallengesScreen challengesScreen = new QuestChallengesScreen();
private static final QuestDecksScreen decksScreen = new QuestDecksScreen();
private static final QuestDuelsScreen duelsScreen = new QuestDuelsScreen();
private static final QuestPrefsScreen prefsScreen = new QuestPrefsScreen();
private static final QuestSpellShopScreen spellShopScreen = new QuestSpellShopScreen();
private static final QuestStatsScreen statsScreen = new QuestStatsScreen();
private static final QuestTournamentsScreen tournamentsScreen = new QuestTournamentsScreen();
private static final FMenuItem unlockSetsItem = new FMenuItem("Unlock Sets", FSkinImage.QUEST_MAP, new FEventHandler() {
@Override
public void handleEvent(FEvent e) {
}
});
private static final FMenuItem travelItem = new FMenuItem("Travel", FSkinImage.QUEST_MAP, new FEventHandler() {
@Override
public void handleEvent(FEvent e) {
}
});
private static final FMenuItem spellShopItem = new FMenuItem("Spell Shop", FSkinImage.QUEST_BOOK, new FEventHandler() {
@Override
public void handleEvent(FEvent e) {
Forge.openScreen(spellShopScreen);
}
});
private static final FMenuItem bazaarItem = new FMenuItem("Bazaar", FSkinImage.QUEST_BOTTLES, new FEventHandler() {
@Override
public void handleEvent(FEvent e) {
Forge.openScreen(bazaarScreen);
}
});
public static QuestMenu getMenu() {
return questMenu;
@@ -76,23 +99,10 @@ public class QuestMenu extends FPopupMenu implements IVQuestStats {
Forge.openScreen(tournamentsScreen);
}
}));
addItem(new FMenuItem("Travel", FSkinImage.QUEST_MAP, new FEventHandler() {
@Override
public void handleEvent(FEvent e) {
}
}));
addItem(new FMenuItem("Spell Shop", FSkinImage.QUEST_BOOK, new FEventHandler() {
@Override
public void handleEvent(FEvent e) {
Forge.openScreen(spellShopScreen);
}
}));
addItem(new FMenuItem("Bazaar", FSkinImage.QUEST_BOTTLES, new FEventHandler() {
@Override
public void handleEvent(FEvent e) {
Forge.openScreen(bazaarScreen);
}
}));
addItem(unlockSetsItem);
addItem(travelItem);
addItem(spellShopItem);
addItem(bazaarItem);
addItem(new FMenuItem("Statistics", FSkinImage.MULTI, new FEventHandler() {
@Override
public void handleEvent(FEvent e) {
@@ -127,32 +137,27 @@ public class QuestMenu extends FPopupMenu implements IVQuestStats {
@Override
public IButton getBtnRandomOpponent() {
// TODO Auto-generated method stub
return null;
return duelsScreen.getBtnRandomOpponent();
}
@Override
public IButton getBtnBazaar() {
// TODO Auto-generated method stub
return null;
return bazaarItem;
}
@Override
public IButton getBtnSpellShop() {
// TODO Auto-generated method stub
return null;
return spellShopItem;
}
@Override
public IButton getBtnUnlock() {
// TODO Auto-generated method stub
return null;
return unlockSetsItem;
}
@Override
public IButton getBtnTravel() {
// TODO Auto-generated method stub
return null;
return travelItem;
}
@Override
@@ -182,14 +187,12 @@ public class QuestMenu extends FPopupMenu implements IVQuestStats {
@Override
public IButton getLblNextChallengeInWins() {
// TODO Auto-generated method stub
return null;
return duelsScreen.getLblNextChallengeInWins();
}
@Override
public IButton getLblCurrentDeck() {
// TODO Auto-generated method stub
return null;
return duelsScreen.getLblCurrentDeck();
}
@Override
@@ -199,26 +202,22 @@ public class QuestMenu extends FPopupMenu implements IVQuestStats {
@Override
public IComboBox<String> getCbxPet() {
// TODO Auto-generated method stub
return null;
return duelsScreen.getCbxPet();
}
@Override
public ICheckBox getCbPlant() {
// TODO Auto-generated method stub
return null;
return duelsScreen.getCbPlant();
}
@Override
public ICheckBox getCbCharm() {
// TODO Auto-generated method stub
return null;
return duelsScreen.getCbCharm();
}
@Override
public IButton getLblZep() {
// TODO Auto-generated method stub
return null;
return duelsScreen.getLblZep();
}
@Override

View File

@@ -2,6 +2,7 @@ package forge.screens.quest;
import forge.assets.FSkinFont;
import forge.assets.FSkinImage;
import forge.quest.QuestUtil;
import forge.screens.FScreen;
import forge.toolbox.FDisplayObject;
import forge.toolbox.FLabel;
@@ -27,22 +28,22 @@ public class QuestStatsScreen extends FScreen {
});
private final FLabel lblWins = scroller.add(new FLabel.Builder()
.icon(FSkinImage.QUEST_PLUS)
.font(FSkinFont.get(15)).build());
.font(FSkinFont.get(16)).iconScaleFactor(1).build());
private final FLabel lblLosses = scroller.add(new FLabel.Builder()
.icon(FSkinImage.QUEST_MINUS)
.font(FSkinFont.get(15)).build());
.font(FSkinFont.get(16)).iconScaleFactor(1).build());
private final FLabel lblCredits = scroller.add(new FLabel.Builder()
.icon(FSkinImage.QUEST_COINSTACK)
.font(FSkinFont.get(15)).build());
.font(FSkinFont.get(16)).iconScaleFactor(1).build());
private final FLabel lblWinStreak = scroller.add(new FLabel.Builder()
.icon(FSkinImage.QUEST_PLUSPLUS)
.font(FSkinFont.get(15)).build());
.font(FSkinFont.get(16)).iconScaleFactor(1).build());
private final FLabel lblLife = scroller.add(new FLabel.Builder()
.icon(FSkinImage.QUEST_LIFE)
.font(FSkinFont.get(15)).build());
.font(FSkinFont.get(16)).iconScaleFactor(1).build());
private final FLabel lblWorld = scroller.add(new FLabel.Builder()
.icon(FSkinImage.QUEST_MAP)
.font(FSkinFont.get(15)).build());
.font(FSkinFont.get(16)).iconScaleFactor(1).build());
public FLabel getLblWins() {
return lblWins;
@@ -67,6 +68,11 @@ public class QuestStatsScreen extends FScreen {
super("Quest Statistics", QuestMenu.getMenu());
}
@Override
public void onActivate() {
QuestUtil.updateQuestView(QuestMenu.getMenu());
}
@Override
protected void doLayout(float startY, float width, float height) {
scroller.setBounds(0, startY, width, height - startY);

View File

@@ -1,5 +1,6 @@
package forge.screens.quest;
import forge.quest.QuestUtil;
import forge.screens.LaunchScreen;
public class QuestTournamentsScreen extends LaunchScreen {
@@ -7,6 +8,11 @@ public class QuestTournamentsScreen extends LaunchScreen {
super("Quest Duels", QuestMenu.getMenu());
}
@Override
public void onActivate() {
QuestUtil.updateQuestView(QuestMenu.getMenu());
}
@Override
protected void doLayoutAboveBtnStart(float startY, float width, float height) {
// TODO Auto-generated method stub

View File

@@ -400,8 +400,8 @@ public class QuestUtil {
view0.getLblNextChallengeInWins().setText(str);
view0.getLblWinStreak().setText(
"<html>Win streak: " + qA.getWinStreakCurrent()
+ "<br>&nbsp; (Best: " + qA.getWinStreakBest() + ")</html>");
"Win streak: " + qA.getWinStreakCurrent()
+ " (Best: " + qA.getWinStreakBest() + ")");
// Current deck message
final IButton lblCurrentDeck = view0.getLblCurrentDeck();