mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-19 20:28:00 +00:00
Merge branch 'master' into 'master'
Adventure portrait mode See merge request core-developers/forge!6325
This commit is contained in:
@@ -598,11 +598,9 @@ public class Forge implements ApplicationListener {
|
|||||||
} //don't allow exiting multiple times
|
} //don't allow exiting multiple times
|
||||||
|
|
||||||
final Localizer localizer = Localizer.getInstance();
|
final Localizer localizer = Localizer.getInstance();
|
||||||
final String title = Forge.isLandscapeMode() && GuiBase.isAndroid() ? "" : localizer.getMessage("lblExitForge");
|
|
||||||
final List<String> options = new ArrayList<>();
|
final List<String> options = new ArrayList<>();
|
||||||
options.add(localizer.getMessage("lblExit"));
|
options.add(localizer.getMessage("lblExit"));
|
||||||
if (Forge.isLandscapeMode() && GuiBase.isAndroid())
|
options.add(localizer.getMessage("lblAdventure"));
|
||||||
options.add(localizer.getMessageorUseDefault("lblAdventureMode", "Adventure Mode"));
|
|
||||||
options.add(localizer.getMessage("lblCancel"));
|
options.add(localizer.getMessage("lblCancel"));
|
||||||
|
|
||||||
Callback<Integer> callback = new Callback<Integer>() {
|
Callback<Integer> callback = new Callback<Integer>() {
|
||||||
@@ -611,7 +609,7 @@ public class Forge implements ApplicationListener {
|
|||||||
if (result == 0) {
|
if (result == 0) {
|
||||||
exited = true;
|
exited = true;
|
||||||
exitAnimation(false);
|
exitAnimation(false);
|
||||||
} else if (result == 1 && Forge.isLandscapeMode() && GuiBase.isAndroid()) {
|
} else if (result == 1) {
|
||||||
switchToAdventure();
|
switchToAdventure();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -620,7 +618,7 @@ public class Forge implements ApplicationListener {
|
|||||||
if (silent) {
|
if (silent) {
|
||||||
callback.run(0);
|
callback.run(0);
|
||||||
} else {
|
} else {
|
||||||
FOptionPane.showOptionDialog(localizer.getMessage("lblAreYouSureYouWishExitForge"), title,
|
FOptionPane.showOptionDialog(localizer.getMessage("lblAreYouSureYouWishExitForge"), "",
|
||||||
FOptionPane.QUESTION_ICON, options, 0, callback);
|
FOptionPane.QUESTION_ICON, options, 0, callback);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -725,7 +723,7 @@ public class Forge implements ApplicationListener {
|
|||||||
openAdventure();
|
openAdventure();
|
||||||
exited = false;
|
exited = false;
|
||||||
}
|
}
|
||||||
}, ScreenUtils.getFrameBufferTexture(), false, false));
|
}, null, false, true));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void setTransitionScreen(TransitionScreen screen) {
|
public static void setTransitionScreen(TransitionScreen screen) {
|
||||||
|
|||||||
@@ -16,7 +16,6 @@ import forge.Forge;
|
|||||||
import forge.adventure.player.AdventurePlayer;
|
import forge.adventure.player.AdventurePlayer;
|
||||||
import forge.adventure.util.Controls;
|
import forge.adventure.util.Controls;
|
||||||
import forge.adventure.util.Current;
|
import forge.adventure.util.Current;
|
||||||
import forge.gui.GuiBase;
|
|
||||||
|
|
||||||
public class DeckSelectScene extends UIScene {
|
public class DeckSelectScene extends UIScene {
|
||||||
private final IntMap<TextButton> buttons = new IntMap<>();
|
private final IntMap<TextButton> buttons = new IntMap<>();
|
||||||
@@ -25,10 +24,11 @@ public class DeckSelectScene extends UIScene {
|
|||||||
TextField textInput;
|
TextField textInput;
|
||||||
Table layout;
|
Table layout;
|
||||||
Label header;
|
Label header;
|
||||||
|
TextButton back, edit, rename;
|
||||||
int currentSlot = 0;
|
int currentSlot = 0;
|
||||||
|
|
||||||
public DeckSelectScene() {
|
public DeckSelectScene() {
|
||||||
super(GuiBase.isAndroid() ? "ui/deck_selector_mobile.json" : "ui/deck_selector.json");
|
super(Forge.isLandscapeMode() ? "ui/deck_selector_mobile.json" : "ui/deck_selector.json");
|
||||||
}
|
}
|
||||||
|
|
||||||
private TextButton addDeckSlot(String name, int i) {
|
private TextButton addDeckSlot(String name, int i) {
|
||||||
@@ -105,6 +105,25 @@ public class DeckSelectScene extends UIScene {
|
|||||||
|
|
||||||
dialog = Controls.newDialog("Save");
|
dialog = Controls.newDialog("Save");
|
||||||
textInput = Controls.newTextField("");
|
textInput = Controls.newTextField("");
|
||||||
|
if (!Forge.isLandscapeMode()) {
|
||||||
|
dialog.getButtonTable().add(Controls.newLabel("Name your new save file.")).colspan(2).pad(2, 15, 2, 15);
|
||||||
|
dialog.getButtonTable().row();
|
||||||
|
dialog.getButtonTable().add(Controls.newLabel("Name:")).align(Align.left).pad(2, 15, 2, 2);
|
||||||
|
dialog.getButtonTable().add(textInput).fillX().expandX().padRight(15);
|
||||||
|
dialog.getButtonTable().row();
|
||||||
|
dialog.getButtonTable().add(Controls.newTextButton("Rename", new Runnable() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
DeckSelectScene.this.rename();
|
||||||
|
}
|
||||||
|
})).align(Align.left).padLeft(15);
|
||||||
|
dialog.getButtonTable().add(Controls.newTextButton("Abort", new Runnable() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
dialog.hide();
|
||||||
|
}
|
||||||
|
})).align(Align.right).padRight(15);
|
||||||
|
} else {
|
||||||
dialog.getButtonTable().add(Controls.newLabel("Name your new save file.")).colspan(2);
|
dialog.getButtonTable().add(Controls.newLabel("Name your new save file.")).colspan(2);
|
||||||
dialog.getButtonTable().row();
|
dialog.getButtonTable().row();
|
||||||
dialog.getButtonTable().add(Controls.newLabel("Name:")).align(Align.left);
|
dialog.getButtonTable().add(Controls.newLabel("Name:")).align(Align.left);
|
||||||
@@ -122,7 +141,10 @@ public class DeckSelectScene extends UIScene {
|
|||||||
dialog.hide();
|
dialog.hide();
|
||||||
}
|
}
|
||||||
})).align(Align.left);
|
})).align(Align.left);
|
||||||
|
}
|
||||||
|
back = ui.findActor("return");
|
||||||
|
edit = ui.findActor("edit");
|
||||||
|
rename = ui.findActor("rename");
|
||||||
ui.onButtonPress("return", new Runnable() {
|
ui.onButtonPress("return", new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
@@ -147,6 +169,28 @@ public class DeckSelectScene extends UIScene {
|
|||||||
|
|
||||||
ScrollPane scrollPane = ui.findActor("deckSlots");
|
ScrollPane scrollPane = ui.findActor("deckSlots");
|
||||||
scrollPane.setActor(layout);
|
scrollPane.setActor(layout);
|
||||||
|
if (!Forge.isLandscapeMode()) {
|
||||||
|
float w = Scene.GetIntendedWidth();
|
||||||
|
float sW = w - 20;
|
||||||
|
float oX = w/2 - sW/2;
|
||||||
|
float h = Scene.GetIntendedHeight();
|
||||||
|
float sH = (h - 10)/12;
|
||||||
|
scrollPane.setWidth(sW);
|
||||||
|
scrollPane.setHeight(sH*11);
|
||||||
|
scrollPane.setX(oX);
|
||||||
|
float rW = (w - 20)/3;
|
||||||
|
float rX = w/2 - rW/2;
|
||||||
|
rename.setWidth(rW);
|
||||||
|
rename.setHeight(20);
|
||||||
|
rename.setX(rX);
|
||||||
|
back.setWidth(rW);
|
||||||
|
back.setHeight(20);
|
||||||
|
back.setX(rename.getX()-rW);
|
||||||
|
edit.setWidth(rW);
|
||||||
|
edit.setHeight(20);
|
||||||
|
edit.setX(rename.getRight());
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void rename() {
|
private void rename() {
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package forge.adventure.scene;
|
|||||||
|
|
||||||
import com.badlogic.gdx.Gdx;
|
import com.badlogic.gdx.Gdx;
|
||||||
import com.badlogic.gdx.graphics.GL20;
|
import com.badlogic.gdx.graphics.GL20;
|
||||||
|
import com.badlogic.gdx.graphics.OrthographicCamera;
|
||||||
import forge.Forge;
|
import forge.Forge;
|
||||||
import forge.adventure.stage.WorldStage;
|
import forge.adventure.stage.WorldStage;
|
||||||
|
|
||||||
@@ -10,6 +11,7 @@ import forge.adventure.stage.WorldStage;
|
|||||||
* does render the WorldStage and HUD
|
* does render the WorldStage and HUD
|
||||||
*/
|
*/
|
||||||
public class GameScene extends HudScene {
|
public class GameScene extends HudScene {
|
||||||
|
private float cameraWidth = 0f, cameraHeight = 0f;
|
||||||
|
|
||||||
public GameScene() {
|
public GameScene() {
|
||||||
super(WorldStage.getInstance());
|
super(WorldStage.getInstance());
|
||||||
@@ -28,6 +30,7 @@ public class GameScene extends HudScene {
|
|||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void render() {
|
public void render() {
|
||||||
|
|
||||||
@@ -40,14 +43,23 @@ public class GameScene extends HudScene {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void resLoaded() {
|
public void resLoaded() {
|
||||||
|
//set initial camera width and height
|
||||||
|
if (cameraWidth == 0f)
|
||||||
|
cameraWidth = stage.getCamera().viewportWidth;
|
||||||
|
if (cameraHeight == 0f)
|
||||||
|
cameraHeight = stage.getCamera().viewportHeight;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void enter() {
|
public void enter() {
|
||||||
Forge.clearTransitionScreen();
|
Forge.clearTransitionScreen();
|
||||||
Forge.clearCurrentScreen();
|
Forge.clearCurrentScreen();
|
||||||
|
if (!Forge.isLandscapeMode()) {
|
||||||
|
//Trick: switch the camera viewport width and height so it looks normal since we shrink the width for portrait mode for WorldStage
|
||||||
|
stage.getCamera().viewportHeight = cameraWidth;
|
||||||
|
stage.getCamera().viewportWidth = cameraHeight;
|
||||||
|
((OrthographicCamera)stage.getCamera()).zoom = 0.85f;
|
||||||
|
}
|
||||||
super.enter();
|
super.enter();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
package forge.adventure.scene;
|
package forge.adventure.scene;
|
||||||
|
|
||||||
import com.badlogic.gdx.Input;
|
import com.badlogic.gdx.Input;
|
||||||
|
import com.badlogic.gdx.scenes.scene2d.ui.Image;
|
||||||
import com.badlogic.gdx.scenes.scene2d.ui.TextButton;
|
import com.badlogic.gdx.scenes.scene2d.ui.TextButton;
|
||||||
import forge.Forge;
|
import forge.Forge;
|
||||||
import forge.adventure.stage.GameHUD;
|
import forge.adventure.stage.GameHUD;
|
||||||
@@ -10,6 +11,8 @@ import forge.adventure.util.Current;
|
|||||||
* Scene for the Inn in towns
|
* Scene for the Inn in towns
|
||||||
*/
|
*/
|
||||||
public class InnScene extends UIScene {
|
public class InnScene extends UIScene {
|
||||||
|
TextButton heal, sell, leave;
|
||||||
|
Image healIcon, sellIcon, leaveIcon;
|
||||||
|
|
||||||
public InnScene() {
|
public InnScene() {
|
||||||
super("ui/inn.json");
|
super("ui/inn.json");
|
||||||
@@ -50,7 +53,17 @@ public class InnScene extends UIScene {
|
|||||||
InnScene.this.sell();
|
InnScene.this.sell();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
TextButton doneButton = ui.findActor("done");
|
leave = ui.findActor("done");
|
||||||
|
sell = ui.findActor("sell");
|
||||||
|
heal = ui.findActor("heal");
|
||||||
|
leaveIcon = ui.findActor("leaveIcon");
|
||||||
|
healIcon = ui.findActor("healIcon");
|
||||||
|
sellIcon = ui.findActor("sellIcon");
|
||||||
|
if (!Forge.isLandscapeMode()) {
|
||||||
|
sellIcon.setHeight(70);
|
||||||
|
healIcon.setHeight(70);
|
||||||
|
leaveIcon.setHeight(70);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void sell() {
|
private void sell() {
|
||||||
|
|||||||
@@ -5,6 +5,10 @@ import com.badlogic.gdx.Input;
|
|||||||
import com.badlogic.gdx.scenes.scene2d.Event;
|
import com.badlogic.gdx.scenes.scene2d.Event;
|
||||||
import com.badlogic.gdx.scenes.scene2d.EventListener;
|
import com.badlogic.gdx.scenes.scene2d.EventListener;
|
||||||
import com.badlogic.gdx.scenes.scene2d.ui.Image;
|
import com.badlogic.gdx.scenes.scene2d.ui.Image;
|
||||||
|
import com.badlogic.gdx.scenes.scene2d.ui.ImageButton;
|
||||||
|
import com.badlogic.gdx.scenes.scene2d.ui.Label;
|
||||||
|
import com.badlogic.gdx.scenes.scene2d.ui.ScrollPane;
|
||||||
|
import com.badlogic.gdx.scenes.scene2d.ui.TextButton;
|
||||||
import com.badlogic.gdx.scenes.scene2d.ui.TextField;
|
import com.badlogic.gdx.scenes.scene2d.ui.TextField;
|
||||||
import com.badlogic.gdx.scenes.scene2d.utils.TextureRegionDrawable;
|
import com.badlogic.gdx.scenes.scene2d.utils.TextureRegionDrawable;
|
||||||
import com.badlogic.gdx.utils.Array;
|
import com.badlogic.gdx.utils.Array;
|
||||||
@@ -15,7 +19,6 @@ import forge.adventure.util.Config;
|
|||||||
import forge.adventure.util.Selector;
|
import forge.adventure.util.Selector;
|
||||||
import forge.adventure.world.WorldSave;
|
import forge.adventure.world.WorldSave;
|
||||||
import forge.deck.Deck;
|
import forge.deck.Deck;
|
||||||
import forge.gui.GuiBase;
|
|
||||||
import forge.localinstance.properties.ForgePreferences;
|
import forge.localinstance.properties.ForgePreferences;
|
||||||
import forge.model.FModel;
|
import forge.model.FModel;
|
||||||
import forge.player.GamePlayerUtil;
|
import forge.player.GamePlayerUtil;
|
||||||
@@ -36,9 +39,13 @@ public class NewGameScene extends UIScene {
|
|||||||
private Selector deck;
|
private Selector deck;
|
||||||
private Selector gender;
|
private Selector gender;
|
||||||
private Selector difficulty;
|
private Selector difficulty;
|
||||||
|
private ScrollPane scrollPane;
|
||||||
|
private Label titleL, avatarL, nameL, raceL, genderL, difficultyL, deckL;
|
||||||
|
private ImageButton leftArrow, rightArrow;
|
||||||
|
private TextButton backButton, startButton;
|
||||||
|
|
||||||
public NewGameScene() {
|
public NewGameScene() {
|
||||||
super(GuiBase.isAndroid() ? "ui/new_game_mobile.json" : "ui/new_game.json");
|
super(Forge.isLandscapeMode() ? "ui/new_game_mobile.json" : "ui/new_game.json");
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean start() {
|
public boolean start() {
|
||||||
@@ -144,6 +151,76 @@ public class NewGameScene extends UIScene {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
scrollPane = ui.findActor("scroll");
|
||||||
|
titleL = ui.findActor("titleL");
|
||||||
|
avatarL = ui.findActor("avatarL");
|
||||||
|
nameL = ui.findActor("nameL");
|
||||||
|
raceL = ui.findActor("raceL");
|
||||||
|
genderL = ui.findActor("genderL");
|
||||||
|
difficultyL = ui.findActor("difficultyL");
|
||||||
|
deckL = ui.findActor("deckL");
|
||||||
|
leftArrow = ui.findActor("leftAvatar");
|
||||||
|
rightArrow = ui.findActor("rightAvatar");
|
||||||
|
backButton = ui.findActor("back");
|
||||||
|
startButton = ui.findActor("start");
|
||||||
|
if (!Forge.isLandscapeMode()) {
|
||||||
|
float w = Scene.GetIntendedWidth();
|
||||||
|
float sW = w - 20;
|
||||||
|
float oX = w/2 - sW/2;
|
||||||
|
float h = Scene.GetIntendedHeight();
|
||||||
|
float sH = (h - 10)/12;
|
||||||
|
|
||||||
|
selectedName.setWidth(280);
|
||||||
|
selectedName.setX(w/2- selectedName.getWidth()/2);
|
||||||
|
nameL.setFontScaleX(2);
|
||||||
|
|
||||||
|
titleL.setFontScaleX(2);
|
||||||
|
titleL.setX(selectedName.getX()-20);
|
||||||
|
|
||||||
|
avatarImage.setScaleX(2);
|
||||||
|
avatarImage.setX(w/2-avatarImage.getWidth());
|
||||||
|
|
||||||
|
leftArrow.getImage().setScaleX(2);
|
||||||
|
leftArrow.setX(selectedName.getX());
|
||||||
|
rightArrow.getImage().setScaleX(2);
|
||||||
|
rightArrow.setX(selectedName.getRight()-(rightArrow.getWidth()*2));
|
||||||
|
|
||||||
|
avatarL.setFontScaleX(2);
|
||||||
|
|
||||||
|
race.setScaleX(2);
|
||||||
|
race.setWidth(140);
|
||||||
|
race.setX(selectedName.getX());
|
||||||
|
raceL.setFontScaleX(2);
|
||||||
|
|
||||||
|
gender.setScaleX(2);
|
||||||
|
gender.setWidth(140);
|
||||||
|
gender.setX(selectedName.getX());
|
||||||
|
genderL.setFontScaleX(2);
|
||||||
|
|
||||||
|
difficulty.setScaleX(2);
|
||||||
|
difficulty.setWidth(140);
|
||||||
|
difficulty.setX(selectedName.getX());
|
||||||
|
difficultyL.setFontScaleX(2);
|
||||||
|
|
||||||
|
deck.setScaleX(2);
|
||||||
|
deck.setWidth(140);
|
||||||
|
deck.setX(selectedName.getX());
|
||||||
|
deckL.setFontScaleX(2);
|
||||||
|
|
||||||
|
scrollPane.setWidth(sW);
|
||||||
|
scrollPane.setHeight(sH*11);
|
||||||
|
scrollPane.setX(oX);
|
||||||
|
|
||||||
|
float bW = w - 165;
|
||||||
|
float bX = w/2 - bW/2;
|
||||||
|
backButton.setWidth(bW/2);
|
||||||
|
backButton.setHeight(20);
|
||||||
|
backButton.setX(bX);
|
||||||
|
startButton.setWidth(bW/2);
|
||||||
|
startButton.setHeight(20);
|
||||||
|
startButton.setX(backButton.getRight());
|
||||||
|
|
||||||
|
}
|
||||||
updateAvatar();
|
updateAvatar();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import com.badlogic.gdx.scenes.scene2d.ui.Image;
|
|||||||
import com.badlogic.gdx.scenes.scene2d.ui.Label;
|
import com.badlogic.gdx.scenes.scene2d.ui.Label;
|
||||||
import com.badlogic.gdx.scenes.scene2d.ui.ScrollPane;
|
import com.badlogic.gdx.scenes.scene2d.ui.ScrollPane;
|
||||||
import com.badlogic.gdx.scenes.scene2d.ui.Table;
|
import com.badlogic.gdx.scenes.scene2d.ui.Table;
|
||||||
|
import com.badlogic.gdx.scenes.scene2d.ui.TextButton;
|
||||||
import com.badlogic.gdx.scenes.scene2d.utils.TextureRegionDrawable;
|
import com.badlogic.gdx.scenes.scene2d.utils.TextureRegionDrawable;
|
||||||
import com.badlogic.gdx.utils.Align;
|
import com.badlogic.gdx.utils.Align;
|
||||||
import forge.Forge;
|
import forge.Forge;
|
||||||
@@ -24,12 +25,13 @@ import java.util.Map;
|
|||||||
public class PlayerStatisticScene extends UIScene {
|
public class PlayerStatisticScene extends UIScene {
|
||||||
|
|
||||||
|
|
||||||
Image avatar;
|
Image avatar, avatarBorder, lifeIcon, goldIcon;
|
||||||
Label money, life;
|
Label money, life;
|
||||||
Label totalWins;
|
Label wins, totalWins;
|
||||||
Label totalLoss;
|
Label loss, totalLoss;
|
||||||
Label lossWinRatio;
|
Label winloss, lossWinRatio;
|
||||||
Label playerName;
|
Label playerName;
|
||||||
|
TextButton back;
|
||||||
private Table enemiesGroup;
|
private Table enemiesGroup;
|
||||||
|
|
||||||
public PlayerStatisticScene() {
|
public PlayerStatisticScene() {
|
||||||
@@ -106,6 +108,8 @@ public class PlayerStatisticScene extends UIScene {
|
|||||||
Image enemyImage = new Image();
|
Image enemyImage = new Image();
|
||||||
enemyImage.setDrawable(new TextureRegionDrawable(new EnemySprite(data).getAvatar()));
|
enemyImage.setDrawable(new TextureRegionDrawable(new EnemySprite(data).getAvatar()));
|
||||||
enemyImage.setSize(8, 8);
|
enemyImage.setSize(8, 8);
|
||||||
|
if (!Forge.isLandscapeMode())
|
||||||
|
enemyImage.setScaleX(2);
|
||||||
|
|
||||||
enemiesGroup.add(enemyImage).align(Align.center).space(3, 10, 3, 10);
|
enemiesGroup.add(enemyImage).align(Align.center).space(3, 10, 3, 10);
|
||||||
enemiesGroup.add((data.name)).fillX().align(Align.center).fillX().space(3, 10, 3, 10);
|
enemiesGroup.add((data.name)).fillX().align(Align.center).fillX().space(3, 10, 3, 10);
|
||||||
@@ -115,6 +119,54 @@ public class PlayerStatisticScene extends UIScene {
|
|||||||
enemiesGroup.row().space(8);
|
enemiesGroup.row().space(8);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!Forge.isLandscapeMode()) {
|
||||||
|
float w = Scene.GetIntendedWidth();
|
||||||
|
back.setHeight(20);
|
||||||
|
back.setX(w / 2 - back.getWidth() / 2);
|
||||||
|
back.setY(0);
|
||||||
|
ScrollPane enemies = ui.findActor("enemies");
|
||||||
|
enemies.setWidth(w - 20);
|
||||||
|
enemies.setX(w / 2 - enemies.getWidth() / 2);
|
||||||
|
enemies.setHeight(150);
|
||||||
|
enemies.setY(21);
|
||||||
|
ScrollPane stats = ui.findActor("stats");
|
||||||
|
stats.setWidth(w - 20);
|
||||||
|
stats.setX(w / 2 - enemies.getWidth() / 2);
|
||||||
|
stats.setHeight(90);
|
||||||
|
stats.setY(enemies.getY() + 153);
|
||||||
|
avatar.setScaleX(2);
|
||||||
|
avatar.setX(40);
|
||||||
|
avatar.setY(stats.getY() + 15);
|
||||||
|
avatarBorder.setScaleX(2);
|
||||||
|
avatarBorder.setX(40);
|
||||||
|
avatarBorder.setY(stats.getY() + 15);
|
||||||
|
playerName.setX(avatar.getRight() + 105);
|
||||||
|
playerName.getStyle().font.getData().setScale(2, 1);
|
||||||
|
playerName.setY(avatar.getY() + 45);
|
||||||
|
wins.setY(avatar.getY() + 30);
|
||||||
|
wins.setX(avatar.getRight() + 105);
|
||||||
|
totalWins.setY(wins.getY());
|
||||||
|
totalWins.setX(wins.getRight() + 85);
|
||||||
|
loss.setY(avatar.getY() + 15);
|
||||||
|
loss.setX(avatar.getRight() + 105);
|
||||||
|
totalLoss.setX(loss.getRight() + 85);
|
||||||
|
totalLoss.setY(loss.getY());
|
||||||
|
winloss.setY(avatar.getY());
|
||||||
|
winloss.setX(avatar.getRight() + 105);
|
||||||
|
lossWinRatio.setY(winloss.getY());
|
||||||
|
lossWinRatio.setX(winloss.getRight() + 85);
|
||||||
|
lifeIcon.setScaleX(2);
|
||||||
|
lifeIcon.setY(stats.getY() + 5);
|
||||||
|
lifeIcon.setX(wins.getX()-35);
|
||||||
|
life.setX(lifeIcon.getX() + 35);
|
||||||
|
life.setY(lifeIcon.getY());
|
||||||
|
goldIcon.setScaleX(2);
|
||||||
|
goldIcon.setY(stats.getY() + 5);
|
||||||
|
goldIcon.setX(totalWins.getX()-35);
|
||||||
|
money.setY(goldIcon.getY());
|
||||||
|
money.setX(goldIcon.getX() + 35);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -130,13 +182,19 @@ public class PlayerStatisticScene extends UIScene {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
avatar = ui.findActor("avatar");
|
avatar = ui.findActor("avatar");
|
||||||
|
avatarBorder = ui.findActor("avatarBorder");
|
||||||
playerName = ui.findActor("playerName");
|
playerName = ui.findActor("playerName");
|
||||||
life = ui.findActor("lifePoints");
|
life = ui.findActor("lifePoints");
|
||||||
money = ui.findActor("money");
|
money = ui.findActor("money");
|
||||||
|
lifeIcon = ui.findActor("lifeIcon");
|
||||||
|
goldIcon = ui.findActor("goldIcon");
|
||||||
|
wins = ui.findActor("wins");
|
||||||
totalWins = ui.findActor("totalWins");
|
totalWins = ui.findActor("totalWins");
|
||||||
|
loss = ui.findActor("loss");
|
||||||
totalLoss = ui.findActor("totalLoss");
|
totalLoss = ui.findActor("totalLoss");
|
||||||
|
winloss = ui.findActor("winloss");
|
||||||
lossWinRatio = ui.findActor("lossWinRatio");
|
lossWinRatio = ui.findActor("lossWinRatio");
|
||||||
|
back = ui.findActor("return");
|
||||||
ScrollPane scrollPane = ui.findActor("enemies");
|
ScrollPane scrollPane = ui.findActor("enemies");
|
||||||
scrollPane.setActor(enemiesGroup);
|
scrollPane.setActor(enemiesGroup);
|
||||||
enemiesGroup.setFillParent(true);
|
enemiesGroup.setFillParent(true);
|
||||||
|
|||||||
@@ -18,7 +18,6 @@ import forge.adventure.util.Reward;
|
|||||||
import forge.adventure.util.RewardActor;
|
import forge.adventure.util.RewardActor;
|
||||||
import forge.adventure.world.WorldSave;
|
import forge.adventure.world.WorldSave;
|
||||||
import forge.assets.ImageCache;
|
import forge.assets.ImageCache;
|
||||||
import forge.gui.GuiBase;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Displays the rewards of a fight or a treasure
|
* Displays the rewards of a fight or a treasure
|
||||||
@@ -34,12 +33,12 @@ public class RewardScene extends UIScene {
|
|||||||
|
|
||||||
Type type;
|
Type type;
|
||||||
Array<Actor> generated = new Array<>();
|
Array<Actor> generated = new Array<>();
|
||||||
static public final float CARD_WIDTH = 550f;
|
static public final float CARD_WIDTH = Forge.isLandscapeMode() ? 550f : 200f;
|
||||||
static public final float CARD_HEIGHT = 400f;
|
static public final float CARD_HEIGHT = Forge.isLandscapeMode() ? 400f : 300f;
|
||||||
static public final float CARD_WIDTH_TO_HEIGHT = CARD_WIDTH / CARD_HEIGHT;
|
static public final float CARD_WIDTH_TO_HEIGHT = CARD_WIDTH / CARD_HEIGHT;
|
||||||
|
|
||||||
public RewardScene() {
|
public RewardScene() {
|
||||||
super(GuiBase.isAndroid() ? "ui/items_mobile.json" : "ui/items.json");
|
super(Forge.isLandscapeMode() ? "ui/items_mobile.json" : "ui/items.json");
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean doneClicked = false;
|
boolean doneClicked = false;
|
||||||
@@ -145,10 +144,10 @@ public class RewardScene extends UIScene {
|
|||||||
|
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case Shop:
|
case Shop:
|
||||||
doneButton.setText("Return");
|
doneButton.setText("Leave");
|
||||||
break;
|
break;
|
||||||
case Loot:
|
case Loot:
|
||||||
doneButton.setText("Take all");
|
doneButton.setText("Done");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
for (int h = 1; h < targetHeight; h++) {
|
for (int h = 1; h < targetHeight; h++) {
|
||||||
@@ -159,6 +158,7 @@ public class RewardScene extends UIScene {
|
|||||||
//cardHeight=targetHeight/i;
|
//cardHeight=targetHeight/i;
|
||||||
cardWidth = h / CARD_WIDTH_TO_HEIGHT;
|
cardWidth = h / CARD_WIDTH_TO_HEIGHT;
|
||||||
newArea = newRewards.size * cardWidth * cardHeight;
|
newArea = newRewards.size * cardWidth * cardHeight;
|
||||||
|
|
||||||
int rows = (int) (targetHeight / cardHeight);
|
int rows = (int) (targetHeight / cardHeight);
|
||||||
int cols = (int) Math.ceil(newRewards.size / (double) rows);
|
int cols = (int) Math.ceil(newRewards.size / (double) rows);
|
||||||
if (newArea > oldCardArea && newArea <= targetArea && rows * cardHeight < targetHeight && cols * cardWidth < targetWidth) {
|
if (newArea > oldCardArea && newArea <= targetArea && rows * cardHeight < targetHeight && cols * cardWidth < targetWidth) {
|
||||||
@@ -169,11 +169,12 @@ public class RewardScene extends UIScene {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
cardHeight = bestCardHeight;
|
cardHeight = Forge.isLandscapeMode() ? bestCardHeight : bestCardHeight * 0.75f;
|
||||||
cardWidth = bestCardHeight / CARD_WIDTH_TO_HEIGHT;
|
cardWidth = bestCardHeight / CARD_WIDTH_TO_HEIGHT;
|
||||||
|
|
||||||
yOff += (targetHeight - (cardHeight * numberOfRows)) / 2f;
|
yOff += (targetHeight - (cardHeight * numberOfRows)) / 2f;
|
||||||
xOff += (targetWidth - (cardWidth * numberOfColumns)) / 2f;
|
xOff += (targetWidth - (cardWidth * numberOfColumns)) / 2f;
|
||||||
|
|
||||||
float spacing = 2;
|
float spacing = 2;
|
||||||
int i = 0;
|
int i = 0;
|
||||||
for (Reward reward : new Array.ArrayIterator<>(newRewards)) {
|
for (Reward reward : new Array.ArrayIterator<>(newRewards)) {
|
||||||
@@ -245,7 +246,7 @@ public class RewardScene extends UIScene {
|
|||||||
setX(actor.getX());
|
setX(actor.getX());
|
||||||
setY(actor.getY() - getHeight());
|
setY(actor.getY() - getHeight());
|
||||||
price = CardUtil.getCardPrice(actor.getReward().getCard());
|
price = CardUtil.getCardPrice(actor.getReward().getCard());
|
||||||
setText("Buy for " + price);
|
setText("$ " + price);
|
||||||
addListener(new ClickListener() {
|
addListener(new ClickListener() {
|
||||||
@Override
|
@Override
|
||||||
public void clicked(InputEvent event, float x, float y) {
|
public void clicked(InputEvent event, float x, float y) {
|
||||||
|
|||||||
@@ -20,7 +20,6 @@ import forge.Forge;
|
|||||||
import forge.adventure.util.Controls;
|
import forge.adventure.util.Controls;
|
||||||
import forge.adventure.world.WorldSave;
|
import forge.adventure.world.WorldSave;
|
||||||
import forge.adventure.world.WorldSaveHeader;
|
import forge.adventure.world.WorldSaveHeader;
|
||||||
import forge.gui.GuiBase;
|
|
||||||
import forge.screens.TransitionScreen;
|
import forge.screens.TransitionScreen;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
@@ -44,12 +43,12 @@ public class SaveLoadScene extends UIScene {
|
|||||||
int currentSlot = -3;
|
int currentSlot = -3;
|
||||||
Image previewImage;
|
Image previewImage;
|
||||||
Image previewBorder;
|
Image previewBorder;
|
||||||
TextButton saveLoadButton;
|
TextButton saveLoadButton, back;
|
||||||
TextButton quickSave;
|
TextButton quickSave;
|
||||||
TextButton autoSave;
|
TextButton autoSave;
|
||||||
|
|
||||||
public SaveLoadScene() {
|
public SaveLoadScene() {
|
||||||
super(GuiBase.isAndroid() ? "ui/save_load_mobile.json" : "ui/save_load.json");
|
super(Forge.isLandscapeMode() ? "ui/save_load_mobile.json" : "ui/save_load.json");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -207,6 +206,25 @@ public class SaveLoadScene extends UIScene {
|
|||||||
stage.addActor(layout);
|
stage.addActor(layout);
|
||||||
dialog = Controls.newDialog("Save");
|
dialog = Controls.newDialog("Save");
|
||||||
textInput = Controls.newTextField("");
|
textInput = Controls.newTextField("");
|
||||||
|
if (!Forge.isLandscapeMode()) {
|
||||||
|
dialog.getButtonTable().add(Controls.newLabel("Name your new save file.")).colspan(2).pad(2, 15, 2, 15);
|
||||||
|
dialog.getButtonTable().row();
|
||||||
|
dialog.getButtonTable().add(Controls.newLabel("Name:")).align(Align.left).pad(2, 15, 2, 2);
|
||||||
|
dialog.getButtonTable().add(textInput).fillX().expandX().padRight(15);
|
||||||
|
dialog.getButtonTable().row();
|
||||||
|
dialog.getButtonTable().add(Controls.newTextButton("Save", new Runnable() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
SaveLoadScene.this.save();
|
||||||
|
}
|
||||||
|
})).align(Align.left).padLeft(15);
|
||||||
|
dialog.getButtonTable().add(Controls.newTextButton("Abort", new Runnable() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
SaveLoadScene.this.saveAbort();
|
||||||
|
}
|
||||||
|
})).align(Align.right).padRight(15);
|
||||||
|
} else {
|
||||||
dialog.getButtonTable().add(Controls.newLabel("Name your new save file.")).colspan(2);
|
dialog.getButtonTable().add(Controls.newLabel("Name your new save file.")).colspan(2);
|
||||||
dialog.getButtonTable().row();
|
dialog.getButtonTable().row();
|
||||||
dialog.getButtonTable().add(Controls.newLabel("Name:")).align(Align.left);
|
dialog.getButtonTable().add(Controls.newLabel("Name:")).align(Align.left);
|
||||||
@@ -223,8 +241,8 @@ public class SaveLoadScene extends UIScene {
|
|||||||
public void run() {
|
public void run() {
|
||||||
SaveLoadScene.this.saveAbort();
|
SaveLoadScene.this.saveAbort();
|
||||||
}
|
}
|
||||||
})).align(Align.left);
|
})).align(Align.right);
|
||||||
|
}
|
||||||
previewImage = ui.findActor("preview");
|
previewImage = ui.findActor("preview");
|
||||||
previewBorder = ui.findActor("preview_border");
|
previewBorder = ui.findActor("preview_border");
|
||||||
header = Controls.newLabel("Save");
|
header = Controls.newLabel("Save");
|
||||||
@@ -244,6 +262,7 @@ public class SaveLoadScene extends UIScene {
|
|||||||
SaveLoadScene.this.loadSave();
|
SaveLoadScene.this.loadSave();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
back = ui.findActor("return");
|
||||||
ui.onButtonPress("return", new Runnable() {
|
ui.onButtonPress("return", new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
@@ -255,5 +274,25 @@ public class SaveLoadScene extends UIScene {
|
|||||||
|
|
||||||
ScrollPane scrollPane = ui.findActor("saveSlots");
|
ScrollPane scrollPane = ui.findActor("saveSlots");
|
||||||
scrollPane.setActor(layout);
|
scrollPane.setActor(layout);
|
||||||
|
if (!Forge.isLandscapeMode()) {
|
||||||
|
float w = Scene.GetIntendedWidth();
|
||||||
|
float sW = w - 20;
|
||||||
|
float oX = w/2 - sW/2;
|
||||||
|
float h = Scene.GetIntendedHeight();
|
||||||
|
float sH = (h - 10)/12;
|
||||||
|
scrollPane.setWidth(sW);
|
||||||
|
scrollPane.setHeight(sH*11);
|
||||||
|
scrollPane.setX(oX);
|
||||||
|
previewImage.setScaleX(1.5f);
|
||||||
|
previewImage.setScaleY(0.9f);
|
||||||
|
float bW = w - 165;
|
||||||
|
float bX = w/2 - bW/2;
|
||||||
|
back.setWidth(bW/2);
|
||||||
|
back.setHeight(20);
|
||||||
|
back.setX(bX);
|
||||||
|
saveLoadButton.setWidth(bW/2);
|
||||||
|
saveLoadButton.setHeight(20);
|
||||||
|
saveLoadButton.setX(back.getRight());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ import com.badlogic.gdx.scenes.scene2d.ui.ScrollPane;
|
|||||||
import com.badlogic.gdx.scenes.scene2d.ui.SelectBox;
|
import com.badlogic.gdx.scenes.scene2d.ui.SelectBox;
|
||||||
import com.badlogic.gdx.scenes.scene2d.ui.Slider;
|
import com.badlogic.gdx.scenes.scene2d.ui.Slider;
|
||||||
import com.badlogic.gdx.scenes.scene2d.ui.Table;
|
import com.badlogic.gdx.scenes.scene2d.ui.Table;
|
||||||
|
import com.badlogic.gdx.scenes.scene2d.ui.TextButton;
|
||||||
import com.badlogic.gdx.scenes.scene2d.ui.TextField;
|
import com.badlogic.gdx.scenes.scene2d.ui.TextField;
|
||||||
import com.badlogic.gdx.scenes.scene2d.utils.ChangeListener;
|
import com.badlogic.gdx.scenes.scene2d.utils.ChangeListener;
|
||||||
import com.badlogic.gdx.utils.Align;
|
import com.badlogic.gdx.utils.Align;
|
||||||
@@ -36,9 +37,10 @@ public class SettingsScene extends UIScene {
|
|||||||
Stage stage;
|
Stage stage;
|
||||||
Texture Background;
|
Texture Background;
|
||||||
private Table settingGroup;
|
private Table settingGroup;
|
||||||
|
TextButton back;
|
||||||
|
|
||||||
public SettingsScene() {
|
public SettingsScene() {
|
||||||
super(GuiBase.isAndroid() ? "ui/settings_mobile.json" : "ui/settings.json");
|
super(Forge.isLandscapeMode() ? "ui/settings_mobile.json" : "ui/settings.json");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -95,9 +97,10 @@ public class SettingsScene extends UIScene {
|
|||||||
|
|
||||||
private void addCheckBox(String name, ForgePreferences.FPref pref) {
|
private void addCheckBox(String name, ForgePreferences.FPref pref) {
|
||||||
CheckBox box = Controls.newCheckBox("");
|
CheckBox box = Controls.newCheckBox("");
|
||||||
if (GuiBase.isAndroid()) {
|
if (GuiBase.isAndroid()||!Forge.isLandscapeMode()) {
|
||||||
box.getImage().setScaling(Scaling.fill);
|
box.getImage().setScaling(Scaling.stretch);
|
||||||
box.getImageCell().size(12, 12);
|
float width = !Forge.isLandscapeMode() ? 24 : 12;
|
||||||
|
box.getImageCell().size(width, 12);
|
||||||
box.getImageCell().pad(2, 2, 2, 10);
|
box.getImageCell().pad(2, 2, 2, 10);
|
||||||
}
|
}
|
||||||
box.setChecked(Preference.getPrefBoolean(pref));
|
box.setChecked(Preference.getPrefBoolean(pref));
|
||||||
@@ -130,9 +133,10 @@ public class SettingsScene extends UIScene {
|
|||||||
private void addSettingField(String name, boolean value, ChangeListener change) {
|
private void addSettingField(String name, boolean value, ChangeListener change) {
|
||||||
|
|
||||||
CheckBox box = Controls.newCheckBox("");
|
CheckBox box = Controls.newCheckBox("");
|
||||||
if (GuiBase.isAndroid()) {
|
if (GuiBase.isAndroid()||!Forge.isLandscapeMode()) {
|
||||||
box.getImage().setScaling(Scaling.fill);
|
box.getImage().setScaling(Scaling.stretch);
|
||||||
box.getImageCell().size(12, 12);
|
float width = !Forge.isLandscapeMode() ? 24 : 12;
|
||||||
|
box.getImageCell().size(width, 12);
|
||||||
box.getImageCell().pad(2, 2, 2, 10);
|
box.getImageCell().pad(2, 2, 2, 10);
|
||||||
}
|
}
|
||||||
box.setChecked(value);
|
box.setChecked(value);
|
||||||
@@ -156,9 +160,16 @@ public class SettingsScene extends UIScene {
|
|||||||
|
|
||||||
void addLabel(String name) {
|
void addLabel(String name) {
|
||||||
Label label = new Label(name, Controls.GetSkin().get("white", Label.LabelStyle.class));
|
Label label = new Label(name, Controls.GetSkin().get("white", Label.LabelStyle.class));
|
||||||
|
if (!Forge.isLandscapeMode()) {
|
||||||
|
label.setFontScaleX(2);
|
||||||
|
label.setWrap(true);
|
||||||
|
settingGroup.row().space(5);
|
||||||
|
settingGroup.add(label).align(Align.left).pad(2, 2, 2, 5).expandX();
|
||||||
|
} else {
|
||||||
settingGroup.row().space(5);
|
settingGroup.row().space(5);
|
||||||
settingGroup.add(label).align(Align.left).pad(2, 2, 2, 5);
|
settingGroup.add(label).align(Align.left).pad(2, 2, 2, 5);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void resLoaded() {
|
public void resLoaded() {
|
||||||
@@ -178,6 +189,9 @@ public class SettingsScene extends UIScene {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
addLabel("Plane");
|
addLabel("Plane");
|
||||||
|
if (!Forge.isLandscapeMode()) {
|
||||||
|
plane.getStyle().listStyle.font.getData().setScale(2, 1);
|
||||||
|
}
|
||||||
settingGroup.add(plane).align(Align.right).pad(2);
|
settingGroup.add(plane).align(Align.right).pad(2);
|
||||||
|
|
||||||
if (!GuiBase.isAndroid()) {
|
if (!GuiBase.isAndroid()) {
|
||||||
@@ -252,7 +266,7 @@ public class SettingsScene extends UIScene {
|
|||||||
|
|
||||||
|
|
||||||
settingGroup.row();
|
settingGroup.row();
|
||||||
|
back = ui.findActor("return");
|
||||||
ui.onButtonPress("return", new Runnable() {
|
ui.onButtonPress("return", new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
@@ -262,6 +276,18 @@ public class SettingsScene extends UIScene {
|
|||||||
|
|
||||||
ScrollPane scrollPane = ui.findActor("settings");
|
ScrollPane scrollPane = ui.findActor("settings");
|
||||||
scrollPane.setActor(settingGroup);
|
scrollPane.setActor(settingGroup);
|
||||||
|
|
||||||
|
if (!Forge.isLandscapeMode()) {
|
||||||
|
float w = Scene.GetIntendedWidth();
|
||||||
|
float bW = w/2;
|
||||||
|
float oX = w/2 - bW/2;
|
||||||
|
back.getLabel().setFontScaleX(2);
|
||||||
|
back.setWidth(bW);
|
||||||
|
back.setHeight(20);
|
||||||
|
float bH = back.getHeight();
|
||||||
|
back.setX(oX);
|
||||||
|
scrollPane.setX(w/2-scrollPane.getWidth()/2);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -2,23 +2,21 @@ package forge.adventure.scene;
|
|||||||
|
|
||||||
import com.badlogic.gdx.Gdx;
|
import com.badlogic.gdx.Gdx;
|
||||||
import com.badlogic.gdx.Input;
|
import com.badlogic.gdx.Input;
|
||||||
import com.badlogic.gdx.scenes.scene2d.Actor;
|
import com.badlogic.gdx.scenes.scene2d.ui.TextButton;
|
||||||
import forge.Forge;
|
import forge.Forge;
|
||||||
import forge.adventure.stage.GameHUD;
|
import forge.adventure.stage.GameHUD;
|
||||||
import forge.adventure.stage.MapStage;
|
import forge.adventure.stage.MapStage;
|
||||||
import forge.adventure.world.WorldSave;
|
import forge.adventure.world.WorldSave;
|
||||||
import forge.gui.GuiBase;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* First scene after the splash screen
|
* First scene after the splash screen
|
||||||
*/
|
*/
|
||||||
public class StartScene extends UIScene {
|
public class StartScene extends UIScene {
|
||||||
|
|
||||||
Actor saveButton;
|
TextButton saveButton, resumeButton, newGameButton, loadButtton, settingsButton, exitButton, switchButton;
|
||||||
Actor resumeButton;
|
|
||||||
|
|
||||||
public StartScene() {
|
public StartScene() {
|
||||||
super(GuiBase.isAndroid() ? "ui/start_menu_mobile.json" : "ui/start_menu.json");
|
super("ui/start_menu_mobile.json");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -100,12 +98,6 @@ public class StartScene extends UIScene {
|
|||||||
StartScene.this.Load();
|
StartScene.this.Load();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
ui.onButtonPress("Start", new Runnable() {
|
|
||||||
@Override
|
|
||||||
public void run() {
|
|
||||||
StartScene.this.NewGame();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
ui.onButtonPress("Save", new Runnable() {
|
ui.onButtonPress("Save", new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
@@ -118,9 +110,6 @@ public class StartScene extends UIScene {
|
|||||||
StartScene.this.Resume();
|
StartScene.this.Resume();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
saveButton = ui.findActor("Save");
|
|
||||||
resumeButton = ui.findActor("Resume");
|
|
||||||
ui.onButtonPress("Settings", new Runnable() {
|
ui.onButtonPress("Settings", new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
@@ -133,14 +122,45 @@ public class StartScene extends UIScene {
|
|||||||
StartScene.this.Exit();
|
StartScene.this.Exit();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
if (GuiBase.isAndroid()) {
|
newGameButton = ui.findActor("Start");
|
||||||
|
loadButtton = ui.findActor("Load");
|
||||||
|
saveButton = ui.findActor("Save");
|
||||||
|
resumeButton = ui.findActor("Resume");
|
||||||
|
settingsButton = ui.findActor("Settings");
|
||||||
|
exitButton = ui.findActor("Exit");
|
||||||
|
switchButton = ui.findActor("Switch");
|
||||||
|
if (!Forge.isLandscapeMode()) {
|
||||||
|
float w = Scene.GetIntendedWidth();
|
||||||
|
float bW = w - 165;
|
||||||
|
float oX = w/2 - bW/2;
|
||||||
|
newGameButton.setWidth(bW);
|
||||||
|
newGameButton.setX(oX);
|
||||||
|
newGameButton.getLabel().setFontScaleX(2);
|
||||||
|
loadButtton.setWidth(bW);
|
||||||
|
loadButtton.setX(oX);
|
||||||
|
loadButtton.getLabel().setFontScaleX(2);
|
||||||
|
saveButton.setWidth(bW);
|
||||||
|
saveButton.setX(oX);
|
||||||
|
saveButton.getLabel().setFontScaleX(2);
|
||||||
|
resumeButton.setWidth(bW);
|
||||||
|
resumeButton.setX(oX);
|
||||||
|
resumeButton.getLabel().setFontScaleX(2);
|
||||||
|
settingsButton.setWidth(bW);
|
||||||
|
settingsButton.setX(oX);
|
||||||
|
settingsButton.getLabel().setFontScaleX(2);
|
||||||
|
exitButton.setWidth(bW/2);
|
||||||
|
exitButton.setX(w/2-exitButton.getWidth());
|
||||||
|
exitButton.getLabel().setFontScaleX(2);
|
||||||
|
switchButton.setWidth(bW/2);
|
||||||
|
switchButton.setX(w/2);
|
||||||
|
switchButton.getLabel().setFontScaleX(2);
|
||||||
|
}
|
||||||
ui.onButtonPress("Switch", new Runnable() {
|
ui.onButtonPress("Switch", new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
Forge.switchToClassic();
|
Forge.switchToClassic();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
|
||||||
saveButton.setVisible(false);
|
saveButton.setVisible(false);
|
||||||
resumeButton.setVisible(false);
|
resumeButton.setVisible(false);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,7 +2,9 @@ package forge.adventure.scene;
|
|||||||
|
|
||||||
import com.badlogic.gdx.Gdx;
|
import com.badlogic.gdx.Gdx;
|
||||||
import com.badlogic.gdx.graphics.GL20;
|
import com.badlogic.gdx.graphics.GL20;
|
||||||
|
import com.badlogic.gdx.graphics.OrthographicCamera;
|
||||||
import com.badlogic.gdx.maps.tiled.TiledMap;
|
import com.badlogic.gdx.maps.tiled.TiledMap;
|
||||||
|
import forge.Forge;
|
||||||
import forge.adventure.pointofintrest.PointOfInterest;
|
import forge.adventure.pointofintrest.PointOfInterest;
|
||||||
import forge.adventure.stage.MapStage;
|
import forge.adventure.stage.MapStage;
|
||||||
import forge.adventure.stage.PointOfInterestMapRenderer;
|
import forge.adventure.stage.PointOfInterestMapRenderer;
|
||||||
@@ -13,23 +15,20 @@ import forge.adventure.world.WorldSave;
|
|||||||
/**
|
/**
|
||||||
* Scene that will render tiled maps.
|
* Scene that will render tiled maps.
|
||||||
* Used for towns dungeons etc
|
* Used for towns dungeons etc
|
||||||
*
|
|
||||||
*/
|
*/
|
||||||
public class TileMapScene extends HudScene {
|
public class TileMapScene extends HudScene {
|
||||||
|
|
||||||
|
|
||||||
TiledMap map;
|
TiledMap map;
|
||||||
PointOfInterestMapRenderer tiledMapRenderer;
|
PointOfInterestMapRenderer tiledMapRenderer;
|
||||||
private String nextMap;
|
private String nextMap;
|
||||||
|
private float cameraWidth = 0f, cameraHeight = 0f;
|
||||||
|
|
||||||
public TileMapScene() {
|
public TileMapScene() {
|
||||||
super(MapStage.getInstance());
|
super(MapStage.getInstance());
|
||||||
tiledMapRenderer = new PointOfInterestMapRenderer((MapStage)stage);
|
tiledMapRenderer = new PointOfInterestMapRenderer((MapStage) stage);
|
||||||
}
|
}
|
||||||
|
|
||||||
public MapStage currentMap()
|
public MapStage currentMap() {
|
||||||
{
|
return (MapStage) stage;
|
||||||
return (MapStage)stage;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -39,58 +38,77 @@ public class TileMapScene extends HudScene {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void act(float delta)
|
public void act(float delta) {
|
||||||
{
|
if (map == null)
|
||||||
if(map==null)
|
|
||||||
return;
|
return;
|
||||||
if(nextMap!=null)
|
if (nextMap != null) {
|
||||||
{
|
|
||||||
load(nextMap);
|
load(nextMap);
|
||||||
nextMap=null;
|
nextMap = null;
|
||||||
}
|
}
|
||||||
stage.act(Gdx.graphics.getDeltaTime());
|
stage.act(Gdx.graphics.getDeltaTime());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void render()
|
public void render() {
|
||||||
{
|
if (map == null)
|
||||||
if(map==null)
|
|
||||||
return;
|
return;
|
||||||
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
|
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
|
||||||
|
|
||||||
Gdx.gl.glBlendFunc(GL20.GL_SRC_ALPHA, GL20.GL_ONE_MINUS_SRC_ALPHA);
|
Gdx.gl.glBlendFunc(GL20.GL_SRC_ALPHA, GL20.GL_ONE_MINUS_SRC_ALPHA);
|
||||||
tiledMapRenderer.setView(stage.getCamera().combined, stage.getCamera().position.x-Scene.GetIntendedWidth()/2.0f, stage.getCamera().position.y-Scene.GetIntendedHeight()/2.0f, Scene.GetIntendedWidth(), Scene.GetIntendedHeight());
|
tiledMapRenderer.setView(stage.getCamera().combined, stage.getCamera().position.x - Scene.GetIntendedWidth() / 2.0f, stage.getCamera().position.y - Scene.GetIntendedHeight() / 2.0f, Scene.GetIntendedWidth(), Scene.GetIntendedHeight());
|
||||||
|
|
||||||
|
if (!Forge.isLandscapeMode()) {
|
||||||
|
stage.getCamera().position.x = stage.GetPlayer().pos().x;
|
||||||
|
}
|
||||||
tiledMapRenderer.render();
|
tiledMapRenderer.render();
|
||||||
hud.draw();
|
hud.draw();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void resLoaded() {
|
||||||
|
//set initial camera width and height
|
||||||
|
if (cameraWidth == 0f)
|
||||||
|
cameraWidth = stage.getCamera().viewportWidth;
|
||||||
|
if (cameraHeight == 0f)
|
||||||
|
cameraHeight = stage.getCamera().viewportHeight;
|
||||||
|
super.resLoaded();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void enter() {
|
||||||
|
if (!Forge.isLandscapeMode()) {
|
||||||
|
//Trick for Map Stage
|
||||||
|
stage.getCamera().viewportWidth = cameraHeight;
|
||||||
|
stage.getCamera().viewportHeight = cameraWidth;
|
||||||
|
((OrthographicCamera)stage.getCamera()).zoom = 0.55f;
|
||||||
|
}
|
||||||
|
super.enter();
|
||||||
|
}
|
||||||
|
|
||||||
public void load(PointOfInterest point) {
|
public void load(PointOfInterest point) {
|
||||||
rootPoint=point;
|
rootPoint = point;
|
||||||
oldMap=point.getData().map;
|
oldMap = point.getData().map;
|
||||||
map = new TemplateTmxMapLoader().load(Config.instance().getFilePath(point.getData().map));
|
map = new TemplateTmxMapLoader().load(Config.instance().getFilePath(point.getData().map));
|
||||||
((MapStage)stage).setPointOfInterest(WorldSave.getCurrentSave().getPointOfInterestChanges(point.getID()+oldMap));
|
((MapStage) stage).setPointOfInterest(WorldSave.getCurrentSave().getPointOfInterestChanges(point.getID() + oldMap));
|
||||||
stage.GetPlayer().setPosition(0, 0);
|
stage.GetPlayer().setPosition(0, 0);
|
||||||
WorldSave.getCurrentSave().getWorld().setSeed(point.getSeedOffset());
|
WorldSave.getCurrentSave().getWorld().setSeed(point.getSeedOffset());
|
||||||
tiledMapRenderer.loadMap(map,"");
|
tiledMapRenderer.loadMap(map, "");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
PointOfInterest rootPoint;
|
PointOfInterest rootPoint;
|
||||||
String oldMap;
|
String oldMap;
|
||||||
|
|
||||||
private void load(String targetMap) {
|
private void load(String targetMap) {
|
||||||
|
|
||||||
map = new TemplateTmxMapLoader().load(Config.instance().getFilePath(targetMap));
|
map = new TemplateTmxMapLoader().load(Config.instance().getFilePath(targetMap));
|
||||||
((MapStage)stage).setPointOfInterest(WorldSave.getCurrentSave().getPointOfInterestChanges(rootPoint.getID()+targetMap));
|
((MapStage) stage).setPointOfInterest(WorldSave.getCurrentSave().getPointOfInterestChanges(rootPoint.getID() + targetMap));
|
||||||
stage.GetPlayer().setPosition(0, 0);
|
stage.GetPlayer().setPosition(0, 0);
|
||||||
WorldSave.getCurrentSave().getWorld().setSeed(rootPoint.getSeedOffset());
|
WorldSave.getCurrentSave().getWorld().setSeed(rootPoint.getSeedOffset());
|
||||||
tiledMapRenderer.loadMap(map,oldMap);
|
tiledMapRenderer.loadMap(map, oldMap);
|
||||||
oldMap=targetMap;
|
oldMap = targetMap;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void loadNext(String targetMap) {
|
public void loadNext(String targetMap) {
|
||||||
nextMap=targetMap;
|
nextMap = targetMap;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -10,7 +10,6 @@ import com.badlogic.gdx.scenes.scene2d.ui.Image;
|
|||||||
import com.badlogic.gdx.scenes.scene2d.utils.TextureRegionDrawable;
|
import com.badlogic.gdx.scenes.scene2d.utils.TextureRegionDrawable;
|
||||||
import com.badlogic.gdx.utils.Scaling;
|
import com.badlogic.gdx.utils.Scaling;
|
||||||
import com.badlogic.gdx.utils.viewport.ScalingViewport;
|
import com.badlogic.gdx.utils.viewport.ScalingViewport;
|
||||||
import com.badlogic.gdx.utils.viewport.Viewport;
|
|
||||||
import forge.adventure.util.Config;
|
import forge.adventure.util.Config;
|
||||||
import forge.adventure.util.UIActor;
|
import forge.adventure.util.UIActor;
|
||||||
|
|
||||||
@@ -55,8 +54,7 @@ public class UIScene extends Scene{
|
|||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public void resLoaded() {
|
public void resLoaded() {
|
||||||
Viewport viewport = new ScalingViewport(Scaling.stretch, GetIntendedWidth(), GetIntendedHeight());
|
stage = new Stage(new ScalingViewport(Scaling.stretch, GetIntendedWidth(), GetIntendedHeight())) {
|
||||||
stage = new Stage(viewport){
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean keyUp(int keycode) {
|
public boolean keyUp(int keycode) {
|
||||||
|
|||||||
@@ -40,7 +40,7 @@ public class GameHUD extends Stage {
|
|||||||
private final Image miniMapPlayer;
|
private final Image miniMapPlayer;
|
||||||
private final Label lifePoints;
|
private final Label lifePoints;
|
||||||
private final Label money;
|
private final Label money;
|
||||||
private Image miniMap, gamehud, mapborder, avatarborder;
|
private Image miniMap, gamehud, mapborder, avatarborder, blank;
|
||||||
private TextButton deckActor, menuActor, statsActor;
|
private TextButton deckActor, menuActor, statsActor;
|
||||||
private boolean deckPressed = false;
|
private boolean deckPressed = false;
|
||||||
private boolean menuPressed = false;
|
private boolean menuPressed = false;
|
||||||
@@ -59,7 +59,9 @@ public class GameHUD extends Stage {
|
|||||||
instance = this;
|
instance = this;
|
||||||
this.gameStage = gameStage;
|
this.gameStage = gameStage;
|
||||||
|
|
||||||
ui = new UIActor(Config.instance().getFile(GuiBase.isAndroid() ? "ui/hud_mobile.json" : "ui/hud.json"));
|
ui = new UIActor(Config.instance().getFile("ui/hud_mobile.json"));
|
||||||
|
|
||||||
|
blank = ui.findActor("blank");
|
||||||
miniMap = ui.findActor("map");
|
miniMap = ui.findActor("map");
|
||||||
mapborder = ui.findActor("mapborder");
|
mapborder = ui.findActor("mapborder");
|
||||||
avatarborder = ui.findActor("avatarborder");
|
avatarborder = ui.findActor("avatarborder");
|
||||||
@@ -84,6 +86,8 @@ public class GameHUD extends Stage {
|
|||||||
//create touchpad
|
//create touchpad
|
||||||
touchpad = new Touchpad(10, touchpadStyle);
|
touchpad = new Touchpad(10, touchpadStyle);
|
||||||
touchpad.setBounds(15, 15, TOUCHPAD_SCALE, TOUCHPAD_SCALE);
|
touchpad.setBounds(15, 15, TOUCHPAD_SCALE, TOUCHPAD_SCALE);
|
||||||
|
if (!Forge.isLandscapeMode())
|
||||||
|
touchpad.getColor().a = 0.01f; //can't scale image on portrait..
|
||||||
touchpad.addListener(new ChangeListener() {
|
touchpad.addListener(new ChangeListener() {
|
||||||
@Override
|
@Override
|
||||||
public void changed(ChangeEvent changeEvent, Actor actor) {
|
public void changed(ChangeEvent changeEvent, Actor actor) {
|
||||||
@@ -327,6 +331,37 @@ public class GameHUD extends Stage {
|
|||||||
|
|
||||||
miniMap.setDrawable(new TextureRegionDrawable(miniMapTexture));
|
miniMap.setDrawable(new TextureRegionDrawable(miniMapTexture));
|
||||||
avatar.setDrawable(new TextureRegionDrawable(Current.player().avatar()));
|
avatar.setDrawable(new TextureRegionDrawable(Current.player().avatar()));
|
||||||
|
if (!Forge.isLandscapeMode()) {
|
||||||
|
miniMap.setWidth(160);
|
||||||
|
mapborder.setWidth(160);
|
||||||
|
miniMapPlayer.setWidth(10);
|
||||||
|
gamehud.setVisible(false);
|
||||||
|
blank.setScaleX(2);
|
||||||
|
blank.setX(388);
|
||||||
|
blank.setHeight(80);
|
||||||
|
blank.setY(miniMap.getY());
|
||||||
|
avatar.setScaleX(2);
|
||||||
|
avatar.setX(388);
|
||||||
|
avatarborder.setX(388);
|
||||||
|
avatarborder.setY(miniMap.getY());
|
||||||
|
avatarborder.setScaleX(2);
|
||||||
|
avatarborder.setHeight(80);
|
||||||
|
money.setX(418);
|
||||||
|
lifePoints.setX(418);
|
||||||
|
lifePoints.setY(avatar.getY()-15);
|
||||||
|
money.setY(avatar.getY()-25);
|
||||||
|
menuActor.setHeight(20);
|
||||||
|
menuActor.setWidth(60);
|
||||||
|
menuActor.setX(420);
|
||||||
|
statsActor.setHeight(20);
|
||||||
|
statsActor.setWidth(60);
|
||||||
|
statsActor.setX(420);
|
||||||
|
statsActor.setY(menuActor.getY() + 35);
|
||||||
|
deckActor.setHeight(20);
|
||||||
|
deckActor.setWidth(60);
|
||||||
|
deckActor.setX(420);
|
||||||
|
deckActor.setY(statsActor.getY() + 35);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void openDeck() {
|
private void openDeck() {
|
||||||
@@ -340,11 +375,12 @@ public class GameHUD extends Stage {
|
|||||||
miniMap.setVisible(visible);
|
miniMap.setVisible(visible);
|
||||||
mapborder.setVisible(visible);
|
mapborder.setVisible(visible);
|
||||||
miniMapPlayer.setVisible(visible);
|
miniMapPlayer.setVisible(visible);
|
||||||
|
gamehud.setVisible(visible);
|
||||||
avatarborder.setVisible(visible);
|
avatarborder.setVisible(visible);
|
||||||
avatar.setVisible(visible);
|
avatar.setVisible(visible);
|
||||||
lifePoints.setVisible(visible);
|
lifePoints.setVisible(visible);
|
||||||
money.setVisible(visible);
|
money.setVisible(visible);
|
||||||
gamehud.setVisible(visible);
|
blank.setVisible(visible);
|
||||||
if (visible) {
|
if (visible) {
|
||||||
deckActor.getColor().a = 1f;
|
deckActor.getColor().a = 1f;
|
||||||
menuActor.getColor().a = 1f;
|
menuActor.getColor().a = 1f;
|
||||||
@@ -354,5 +390,8 @@ public class GameHUD extends Stage {
|
|||||||
menuActor.getColor().a = 0.5f;
|
menuActor.getColor().a = 0.5f;
|
||||||
statsActor.getColor().a = 0.5f;
|
statsActor.getColor().a = 0.5f;
|
||||||
}
|
}
|
||||||
|
if (!Forge.isLandscapeMode()) {
|
||||||
|
gamehud.setVisible(false);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -232,7 +232,7 @@ public abstract class GameStage extends Stage {
|
|||||||
touchY = screenY;
|
touchY = screenY;
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -291,15 +291,16 @@ public class RewardActor extends Actor implements Disposable, ImageFetcher.Callb
|
|||||||
class HoldTooltip extends ActorGestureListener {
|
class HoldTooltip extends ActorGestureListener {
|
||||||
Image tooltip_image;
|
Image tooltip_image;
|
||||||
Table tooltip_actor;
|
Table tooltip_actor;
|
||||||
|
float height;
|
||||||
//Vector2 tmp = new Vector2();
|
//Vector2 tmp = new Vector2();
|
||||||
|
|
||||||
public HoldTooltip(Image tooltip_image) {
|
public HoldTooltip(Image tooltip_image) {
|
||||||
this.tooltip_image = tooltip_image;
|
this.tooltip_image = tooltip_image;
|
||||||
|
|
||||||
tooltip_actor = new Table();
|
tooltip_actor = new Table();
|
||||||
tooltip_actor.add(this.tooltip_image);
|
tooltip_actor.add(this.tooltip_image);
|
||||||
tooltip_actor.align(Align.center);
|
tooltip_actor.align(Align.center);
|
||||||
tooltip_actor.setSize(this.tooltip_image.getPrefWidth(), this.tooltip_image.getPrefHeight());
|
tooltip_actor.setSize(this.tooltip_image.getPrefWidth(), this.tooltip_image.getPrefHeight());
|
||||||
|
this.height = tooltip_actor.getHeight();
|
||||||
|
|
||||||
getGestureDetector().setLongPressSeconds(0.1f);
|
getGestureDetector().setLongPressSeconds(0.1f);
|
||||||
}
|
}
|
||||||
@@ -311,6 +312,12 @@ public class RewardActor extends Actor implements Disposable, ImageFetcher.Callb
|
|||||||
if (tooltip_actor.getX() + tooltip_actor.getWidth() > 480)
|
if (tooltip_actor.getX() + tooltip_actor.getWidth() > 480)
|
||||||
tooltip_actor.setX(actor.getX() - tooltip_actor.getWidth());
|
tooltip_actor.setX(actor.getX() - tooltip_actor.getWidth());
|
||||||
tooltip_actor.setY(270 / 2 - tooltip_actor.getHeight() / 2);
|
tooltip_actor.setY(270 / 2 - tooltip_actor.getHeight() / 2);
|
||||||
|
if (!Forge.isLandscapeMode()) {
|
||||||
|
float h = height * 0.75f;
|
||||||
|
tooltip_actor.setX(480/2 - tooltip_actor.getWidth() /2);
|
||||||
|
tooltip_actor.setHeight(h);
|
||||||
|
tooltip_actor.setY(270/2 - h/2);
|
||||||
|
}
|
||||||
//tooltip_actor.setX(480/2 - tooltip_actor.getWidth()/2); //480 hud width
|
//tooltip_actor.setX(480/2 - tooltip_actor.getWidth()/2); //480 hud width
|
||||||
//tooltip_actor.setY(270/2-tooltip_actor.getHeight()/2); //270 hud height
|
//tooltip_actor.setY(270/2-tooltip_actor.getHeight()/2); //270 hud height
|
||||||
actor.getStage().addActor(tooltip_actor);
|
actor.getStage().addActor(tooltip_actor);
|
||||||
|
|||||||
@@ -213,10 +213,7 @@ public class SplashScreen extends FContainer {
|
|||||||
|
|
||||||
if (!init) {
|
if (!init) {
|
||||||
init = true;
|
init = true;
|
||||||
String defaultText = Localizer.getInstance().getMessageorUseDefault("lblAdventureMode", "Adventure Mode");
|
btnAdventure = new FButton(Localizer.getInstance().getMessageorUseDefault("lblAdventureMode", "Adventure Mode"));
|
||||||
String advAndroid = Forge.isLandscapeMode() ? defaultText : "Adventure Mode (Landscape Only)";
|
|
||||||
btnAdventure = new FButton(GuiBase.isAndroid() ? advAndroid : defaultText);
|
|
||||||
btnAdventure.setEnabled(Forge.isLandscapeMode());
|
|
||||||
btnHome = new FButton(Localizer.getInstance().getMessageorUseDefault("lblClassicMode", "Classic Mode"));
|
btnHome = new FButton(Localizer.getInstance().getMessageorUseDefault("lblClassicMode", "Classic Mode"));
|
||||||
btnAdventure.setCommand(new FEvent.FEventHandler() {
|
btnAdventure.setCommand(new FEvent.FEventHandler() {
|
||||||
@Override
|
@Override
|
||||||
@@ -252,7 +249,8 @@ public class SplashScreen extends FContainer {
|
|||||||
});
|
});
|
||||||
float btn_w = (w - 2 * padding);
|
float btn_w = (w - 2 * padding);
|
||||||
float btn_x = x + padding;
|
float btn_x = x + padding;
|
||||||
float btn_y = y + padding;
|
float multiplier = Forge.isLandscapeMode() ? 1 : 1.2f;
|
||||||
|
float btn_y = (y + padding) * multiplier;
|
||||||
btnHome.setFont(FSkinFont.get(22));
|
btnHome.setFont(FSkinFont.get(22));
|
||||||
btnAdventure.setFont(FSkinFont.get(22));
|
btnAdventure.setFont(FSkinFont.get(22));
|
||||||
btnHome.setBounds(btn_x, btn_y, btn_w, height);
|
btnHome.setBounds(btn_x, btn_y, btn_w, height);
|
||||||
|
|||||||
@@ -29,6 +29,15 @@
|
|||||||
"x": 0,
|
"x": 0,
|
||||||
"y": 0
|
"y": 0
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "Image",
|
||||||
|
"name": "blank",
|
||||||
|
"image": "ui/blank.png",
|
||||||
|
"width": 46,
|
||||||
|
"height": 46,
|
||||||
|
"x": 425,
|
||||||
|
"y": 10
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "Image",
|
"type": "Image",
|
||||||
"name": "avatar",
|
"name": "avatar",
|
||||||
|
|||||||
@@ -11,6 +11,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Image",
|
"type": "Image",
|
||||||
|
"name": "healIcon",
|
||||||
"image": "ui/heal.png",
|
"image": "ui/heal.png",
|
||||||
"x": 60,
|
"x": 60,
|
||||||
"y": 85,
|
"y": 85,
|
||||||
@@ -28,6 +29,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Image",
|
"type": "Image",
|
||||||
|
"name": "sellIcon",
|
||||||
"image": "ui/sell.png",
|
"image": "ui/sell.png",
|
||||||
"x": 190,
|
"x": 190,
|
||||||
"y": 85,
|
"y": 85,
|
||||||
@@ -45,6 +47,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Image",
|
"type": "Image",
|
||||||
|
"name": "leaveIcon",
|
||||||
"image": "ui/leave.png",
|
"image": "ui/leave.png",
|
||||||
"x": 320,
|
"x": 320,
|
||||||
"y": 85,
|
"y": 85,
|
||||||
|
|||||||
@@ -11,6 +11,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Scroll",
|
"type": "Scroll",
|
||||||
|
"name" : "scroll",
|
||||||
"style": "paper",
|
"style": "paper",
|
||||||
"x": 10,
|
"x": 10,
|
||||||
"y": 10,
|
"y": 10,
|
||||||
@@ -19,6 +20,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Label",
|
"type": "Label",
|
||||||
|
"name" : "titleL",
|
||||||
"text": "Create a Character",
|
"text": "Create a Character",
|
||||||
"width": 128,
|
"width": 128,
|
||||||
"height": 32,
|
"height": 32,
|
||||||
@@ -28,51 +30,63 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Label",
|
"type": "Label",
|
||||||
|
"name" : "avatarL",
|
||||||
"text": "Avatar:",
|
"text": "Avatar:",
|
||||||
"width": 128,
|
"width": 128,
|
||||||
"height": 32,
|
"height": 32,
|
||||||
|
"font" : "black",
|
||||||
"x": 16,
|
"x": 16,
|
||||||
"y": 64
|
"y": 58
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Label",
|
"type": "Label",
|
||||||
|
"name" : "nameL",
|
||||||
"text": "Name:",
|
"text": "Name:",
|
||||||
"width": 128,
|
"width": 128,
|
||||||
"height": 32,
|
"height": 32,
|
||||||
|
"font" : "black",
|
||||||
"x": 16,
|
"x": 16,
|
||||||
"y": 96
|
"y": 90
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Label",
|
"type": "Label",
|
||||||
|
"name" : "raceL",
|
||||||
"text": "Race:",
|
"text": "Race:",
|
||||||
"width": 128,
|
"width": 128,
|
||||||
"height": 32,
|
"height": 32,
|
||||||
|
"font" : "black",
|
||||||
"x": 16,
|
"x": 16,
|
||||||
"y": 128
|
"y": 124
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Label",
|
"type": "Label",
|
||||||
|
"name" : "genderL",
|
||||||
"text": "Gender:",
|
"text": "Gender:",
|
||||||
"width": 128,
|
"width": 128,
|
||||||
"height": 32,
|
"height": 32,
|
||||||
|
"font" : "black",
|
||||||
"x": 16,
|
"x": 16,
|
||||||
"y": 160
|
"y": 154
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Label",
|
"type": "Label",
|
||||||
|
"name" : "difficultyL",
|
||||||
"text": "Difficulty:",
|
"text": "Difficulty:",
|
||||||
"width": 128,
|
"width": 128,
|
||||||
"height": 32,
|
"height": 32,
|
||||||
|
"font" : "black",
|
||||||
"x": 16,
|
"x": 16,
|
||||||
"y": 192
|
"y": 186
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Label",
|
"type": "Label",
|
||||||
|
"name" : "deckL",
|
||||||
"text": "Deck:",
|
"text": "Deck:",
|
||||||
"width": 128,
|
"width": 128,
|
||||||
"height": 32,
|
"height": 32,
|
||||||
|
"font" : "black",
|
||||||
"x": 16,
|
"x": 16,
|
||||||
"y": 224
|
"y": 218
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "ImageButton",
|
"type": "ImageButton",
|
||||||
@@ -147,7 +161,7 @@
|
|||||||
"width": 38,
|
"width": 38,
|
||||||
"height": 16,
|
"height": 16,
|
||||||
"x": 352,
|
"x": 352,
|
||||||
"y": 240
|
"y": 251
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "TextButton",
|
"type": "TextButton",
|
||||||
@@ -156,7 +170,7 @@
|
|||||||
"width": 38,
|
"width": 38,
|
||||||
"height": 16,
|
"height": 16,
|
||||||
"x": 416,
|
"x": 416,
|
||||||
"y": 240
|
"y": 251
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -11,6 +11,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Scroll",
|
"type": "Scroll",
|
||||||
|
"name" : "scroll",
|
||||||
"style": "paper",
|
"style": "paper",
|
||||||
"x": 56,
|
"x": 56,
|
||||||
"y": 10,
|
"y": 10,
|
||||||
@@ -19,6 +20,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Label",
|
"type": "Label",
|
||||||
|
"name" : "titleL",
|
||||||
"text": "Create a Character",
|
"text": "Create a Character",
|
||||||
"width": 128,
|
"width": 128,
|
||||||
"height": 32,
|
"height": 32,
|
||||||
@@ -28,6 +30,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Label",
|
"type": "Label",
|
||||||
|
"name" : "avatarL",
|
||||||
"text": "Avatar:",
|
"text": "Avatar:",
|
||||||
"width": 128,
|
"width": 128,
|
||||||
"height": 32,
|
"height": 32,
|
||||||
@@ -37,6 +40,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Label",
|
"type": "Label",
|
||||||
|
"name" : "nameL",
|
||||||
"text": "Name:",
|
"text": "Name:",
|
||||||
"width": 128,
|
"width": 128,
|
||||||
"height": 32,
|
"height": 32,
|
||||||
@@ -46,6 +50,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Label",
|
"type": "Label",
|
||||||
|
"name" : "raceL",
|
||||||
"text": "Race:",
|
"text": "Race:",
|
||||||
"width": 128,
|
"width": 128,
|
||||||
"height": 32,
|
"height": 32,
|
||||||
@@ -55,6 +60,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Label",
|
"type": "Label",
|
||||||
|
"name" : "genderL",
|
||||||
"text": "Gender:",
|
"text": "Gender:",
|
||||||
"width": 128,
|
"width": 128,
|
||||||
"height": 32,
|
"height": 32,
|
||||||
@@ -64,6 +70,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Label",
|
"type": "Label",
|
||||||
|
"name" : "difficultyL",
|
||||||
"text": "Difficulty:",
|
"text": "Difficulty:",
|
||||||
"width": 128,
|
"width": 128,
|
||||||
"height": 32,
|
"height": 32,
|
||||||
@@ -73,6 +80,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Label",
|
"type": "Label",
|
||||||
|
"name" : "deckL",
|
||||||
"text": "Deck:",
|
"text": "Deck:",
|
||||||
"width": 128,
|
"width": 128,
|
||||||
"height": 32,
|
"height": 32,
|
||||||
|
|||||||
@@ -9,14 +9,6 @@
|
|||||||
"width": 480,
|
"width": 480,
|
||||||
"height": 270
|
"height": 270
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"type": "Image",
|
|
||||||
"name": "preview",
|
|
||||||
"x": 364,
|
|
||||||
"y": 10,
|
|
||||||
"width": 96,
|
|
||||||
"height": 54
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"type": "Scroll",
|
"type": "Scroll",
|
||||||
"name": "saveSlots",
|
"name": "saveSlots",
|
||||||
@@ -25,6 +17,14 @@
|
|||||||
"width": 344,
|
"width": 344,
|
||||||
"height": 235
|
"height": 235
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "Image",
|
||||||
|
"name": "preview",
|
||||||
|
"x": 300,
|
||||||
|
"y": 18,
|
||||||
|
"width": 96,
|
||||||
|
"height": 54
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "TextButton",
|
"type": "TextButton",
|
||||||
"name": "return",
|
"name": "return",
|
||||||
|
|||||||
@@ -66,7 +66,7 @@
|
|||||||
{
|
{
|
||||||
"type": "TextButton",
|
"type": "TextButton",
|
||||||
"name": "Switch",
|
"name": "Switch",
|
||||||
"text": "Classic Mode",
|
"text": "Classic",
|
||||||
"width": 75,
|
"width": 75,
|
||||||
"height": 30,
|
"height": 30,
|
||||||
"x": 245,
|
"x": 245,
|
||||||
|
|||||||
@@ -11,6 +11,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Scroll",
|
"type": "Scroll",
|
||||||
|
"name": "stats",
|
||||||
"style": "paper",
|
"style": "paper",
|
||||||
"x": 300,
|
"x": 300,
|
||||||
"y": 18,
|
"y": 18,
|
||||||
@@ -35,6 +36,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Image",
|
"type": "Image",
|
||||||
|
"name": "avatarBorder",
|
||||||
"image": "ui/avatarhud.png",
|
"image": "ui/avatarhud.png",
|
||||||
"x": 320,
|
"x": 320,
|
||||||
"y": 28,
|
"y": 28,
|
||||||
@@ -61,6 +63,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Label",
|
"type": "Label",
|
||||||
|
"name": "wins",
|
||||||
"text": "Win:",
|
"text": "Win:",
|
||||||
"x": 330,
|
"x": 330,
|
||||||
"y": 114,
|
"y": 114,
|
||||||
@@ -79,6 +82,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Label",
|
"type": "Label",
|
||||||
|
"name": "loss",
|
||||||
"text": "Loss:",
|
"text": "Loss:",
|
||||||
"x": 330,
|
"x": 330,
|
||||||
"y": 134,
|
"y": 134,
|
||||||
@@ -97,6 +101,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Label",
|
"type": "Label",
|
||||||
|
"name": "winloss",
|
||||||
"text": "Win Loss Ratio:",
|
"text": "Win Loss Ratio:",
|
||||||
"x": 330,
|
"x": 330,
|
||||||
"y": 154,
|
"y": 154,
|
||||||
@@ -115,6 +120,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Image",
|
"type": "Image",
|
||||||
|
"name": "lifeIcon",
|
||||||
"image": "ui/life.png",
|
"image": "ui/life.png",
|
||||||
"x": 400,
|
"x": 400,
|
||||||
"y": 40,
|
"y": 40,
|
||||||
@@ -123,6 +129,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "Image",
|
"type": "Image",
|
||||||
|
"name": "goldIcon",
|
||||||
"image": "ui/money.png",
|
"image": "ui/money.png",
|
||||||
"x": 400,
|
"x": 400,
|
||||||
"y": 60,
|
"y": 60,
|
||||||
|
|||||||
Reference in New Issue
Block a user