diff --git a/android/assets/uiskin.atlas b/android/assets/uiskin.atlas index 4c94c56..0524663 100755 --- a/android/assets/uiskin.atlas +++ b/android/assets/uiskin.atlas @@ -99,7 +99,7 @@ default-round-down orig: 12, 20 offset: 0, 0 index: -1 -default-round-large +default-scroll rotate: false xy: 57, 29 size: 20, 20 @@ -107,7 +107,7 @@ default-round-large orig: 20, 20 offset: 0, 0 index: -1 -default-scroll +default-round-large rotate: false xy: 78, 29 size: 20, 20 @@ -244,13 +244,6 @@ left-button-down orig: 12, 20 offset: 0, 0 index: -1 -goto - rotate: false - xy: 1, 123 - size: 101, 132 - orig: 101, 132 - offset: 0, 0 - index: -1 arrow rotate: false xy: 91, 50 diff --git a/android/assets/uiskin.png b/android/assets/uiskin.png old mode 100755 new mode 100644 index 168ae31..70cf917 Binary files a/android/assets/uiskin.png and b/android/assets/uiskin.png differ diff --git a/core/src/zero1hd/polyjet/Polyjet.java b/core/src/zero1hd/polyjet/Polyjet.java index 760c6fa..c8b2eb9 100755 --- a/core/src/zero1hd/polyjet/Polyjet.java +++ b/core/src/zero1hd/polyjet/Polyjet.java @@ -20,7 +20,6 @@ import com.badlogic.gdx.graphics.g2d.freetype.FreeTypeFontGenerator.FreeTypeFont import com.badlogic.gdx.math.MathUtils; import com.badlogic.gdx.scenes.scene2d.ui.Button.ButtonStyle; import com.badlogic.gdx.scenes.scene2d.ui.CheckBox.CheckBoxStyle; -import com.badlogic.gdx.scenes.scene2d.ui.ImageButton.ImageButtonStyle; import com.badlogic.gdx.scenes.scene2d.ui.Label.LabelStyle; import com.badlogic.gdx.scenes.scene2d.ui.List.ListStyle; import com.badlogic.gdx.scenes.scene2d.ui.ScrollPane.ScrollPaneStyle; @@ -49,8 +48,7 @@ public class Polyjet extends Game { TextureAtlas skinAtlas; public Preferences prefs; - - @Override + @Override public void create() { Gdx.app.setLogLevel(Application.LOG_DEBUG); prefs = Gdx.app.getPreferences("PolyJet_Preferences"); @@ -147,7 +145,7 @@ public class Polyjet extends Game { defaultSkin.add("special-font", darktech_ldr_fontGenerator.generateFont(new FreeTypeFontParameter() { { - size = fontScale(0.08f); + size = fontScale(0.075f); } })); @@ -183,11 +181,6 @@ public class Polyjet extends Game { infoButton.down = defaultSkin.getDrawable("holo-pane-down"); defaultSkin.add("info-button", infoButton); - ButtonStyle arrowButton = new ButtonStyle(); - arrowButton.down = defaultSkin.getDrawable("goto"); - arrowButton.up = defaultSkin.getDrawable("goto"); - defaultSkin.add("arrow-button", arrowButton); - LabelStyle defaultLabel = new LabelStyle(); defaultLabel.font = defaultSkin.getFont("default-font"); defaultLabel.fontColor = defaultSkin.getColor("default"); @@ -233,7 +226,7 @@ public class Polyjet extends Game { public int fontScale(float fontSize) { - Gdx.app.debug("Font pixel size", MathUtils.round(Gdx.graphics.getDensity()*(fontSize*Gdx.graphics.getHeight())) + "px"); - return MathUtils.round(Gdx.graphics.getDensity()*(fontSize*Gdx.graphics.getHeight())); + Gdx.app.debug("Font pixel size", MathUtils.round(Gdx.graphics.getDensity()*(fontSize*Gdx.graphics.getWidth())) + "px"); + return MathUtils.round(Gdx.graphics.getDensity()*(fontSize*Gdx.graphics.getWidth())); } } diff --git a/core/src/zero1hd/polyjet/screens/PreGameScreen.java b/core/src/zero1hd/polyjet/screens/PreGameScreen.java index b6a9a18..9d25b91 100755 --- a/core/src/zero1hd/polyjet/screens/PreGameScreen.java +++ b/core/src/zero1hd/polyjet/screens/PreGameScreen.java @@ -33,20 +33,16 @@ public class PreGameScreen extends ScreenAdapter implements TransitionAdapter { Label lastStatement; MusicSelectionPage musicSelection; + private MainMenu mainMenu; + public PreGameScreen(final Polyjet core) { this.core = core; analyzer = new AudioAnalyzer(); rhythmMap = new RhythmMap(analyzer); - stage = new Stage(); + mainMenu = (MainMenu) core.getScreen(); - stage.addListener(new ClickListener() { - @Override - public void clicked(InputEvent event, float x, float y) { - core.setScreen(new GameScreen(core)); - super.clicked(event, x, y); - } - }); + stage = new Stage(); cameraTarget = new Vector3(stage.getCamera().position); postTransition(); @@ -56,7 +52,7 @@ public class PreGameScreen extends ScreenAdapter implements TransitionAdapter { public void postTransition() { stage.clear(); //draw music selector - musicSelection = new MusicSelectionPage(core); + musicSelection = new MusicSelectionPage(core, mainMenu); stage.addActor(musicSelection); statusText = new Label(null, core.defaultSkin); diff --git a/core/src/zero1hd/polyjet/ui/builders/GraphicsTable.java b/core/src/zero1hd/polyjet/ui/builders/GraphicsTable.java index 1c38107..ecc9c77 100755 --- a/core/src/zero1hd/polyjet/ui/builders/GraphicsTable.java +++ b/core/src/zero1hd/polyjet/ui/builders/GraphicsTable.java @@ -11,7 +11,7 @@ import com.badlogic.gdx.scenes.scene2d.utils.ChangeListener; import com.badlogic.gdx.utils.Align; public class GraphicsTable extends Table { - private Label explanation; + private Label title; private SetResolutionButton _3840x2160, @@ -25,12 +25,13 @@ public class GraphicsTable extends Table { public GraphicsTable(Skin skin, final Preferences pref) { - align(Align.top); + align(Align.center); defaults().space(10f); - explanation = new Label("This game is freely resizable\n with a minimun size of\n800x480 and maximum of 3840x2160.\nThe following resolutions are the most optimal however.", skin, "small-font", skin.getColor("default")); - add(explanation); - row().space(15f); + title = new Label("Optimized Resolutions", skin); + add(title).left(); + row(); + TextButton fullscreen = new TextButton("Fullscreen", skin); fullscreen.addListener(new ChangeListener() { diff --git a/core/src/zero1hd/polyjet/ui/pages/MoreOptionsPage.java b/core/src/zero1hd/polyjet/ui/pages/MoreOptionsPage.java index 76b9c1f..58a9d98 100755 --- a/core/src/zero1hd/polyjet/ui/pages/MoreOptionsPage.java +++ b/core/src/zero1hd/polyjet/ui/pages/MoreOptionsPage.java @@ -3,8 +3,8 @@ package zero1hd.polyjet.ui.pages; import com.badlogic.gdx.Gdx; import com.badlogic.gdx.math.Vector3; import com.badlogic.gdx.scenes.scene2d.Actor; -import com.badlogic.gdx.scenes.scene2d.ui.Button; import com.badlogic.gdx.scenes.scene2d.ui.ScrollPane; +import com.badlogic.gdx.scenes.scene2d.ui.TextButton; import com.badlogic.gdx.scenes.scene2d.utils.ChangeListener; import zero1hd.polyjet.Polyjet; @@ -14,26 +14,18 @@ import zero1hd.polyjet.ui.builders.SetControls; public class MoreOptionsPage extends Page { private KeyMap keymap; - private ScrollPane keyBinds; - private GraphicsTable graphicsSettings; + private ScrollPane controlsScroller; private SetControls controlSetter; + private ScrollPane graphicsScroller; + private GraphicsTable graphicsSettings; + + public MoreOptionsPage(Polyjet core, final Vector3 targetLocation) { keymap = new KeyMap(core); - controlSetter = new SetControls(core.defaultSkin, keymap); - keyBinds = new ScrollPane(controlSetter, core.defaultSkin); - keyBinds.setSize(getWidth(), getHeight()); - addActor(keyBinds); - keyBinds.setVisible(false); - - graphicsSettings = new GraphicsTable(core.defaultSkin, core.prefs); - graphicsSettings.setSize(getWidth(), getHeight()); - addActor(graphicsSettings); - graphicsSettings.setVisible(false); - - Button backArrow = new Button(core.defaultSkin, "arrow-button"); - backArrow.setPosition(30, getHeight()-backArrow.getHeight()-10); + TextButton backArrow = new TextButton("Back", core.defaultSkin); + backArrow.setPosition(15, getHeight()-backArrow.getHeight()-10); backArrow.addListener(new ChangeListener() { @Override public void changed(ChangeEvent event, Actor actor) { @@ -41,6 +33,22 @@ public class MoreOptionsPage extends Page { } }); addActor(backArrow); + + controlSetter = new SetControls(core.defaultSkin, keymap); + controlsScroller = new ScrollPane(controlSetter, core.defaultSkin); + controlsScroller.setFadeScrollBars(false); + controlsScroller.setSize(getWidth()-backArrow.getWidth()-backArrow.getX()-10, getHeight()); + controlsScroller.setX(backArrow.getWidth()+10+backArrow.getX()); + addActor(controlsScroller); + controlsScroller.setVisible(false); + + graphicsSettings = new GraphicsTable(core.defaultSkin, core.prefs); + graphicsScroller = new ScrollPane(graphicsSettings, core.defaultSkin); + graphicsScroller.setFadeScrollBars(false); + graphicsScroller.setSize(getWidth()-backArrow.getWidth()-backArrow.getX()-10, getHeight()); + graphicsScroller.setX(backArrow.getWidth()+10+backArrow.getX()); + addActor(graphicsScroller); + graphicsScroller.setVisible(false); } public void controlUnselect() { @@ -50,12 +58,12 @@ public class MoreOptionsPage extends Page { public void setControlType(byte type) { switch (type) { case 0: - keyBinds.setVisible(true); - graphicsSettings.setVisible(false); + controlsScroller.setVisible(true); + graphicsScroller.setVisible(false); break; case 1: - keyBinds.setVisible(false); - graphicsSettings.setVisible(true); + controlsScroller.setVisible(false); + graphicsScroller.setVisible(true); break; } } diff --git a/core/src/zero1hd/polyjet/ui/pages/MusicSelectionPage.java b/core/src/zero1hd/polyjet/ui/pages/MusicSelectionPage.java index c30775b..69ab179 100755 --- a/core/src/zero1hd/polyjet/ui/pages/MusicSelectionPage.java +++ b/core/src/zero1hd/polyjet/ui/pages/MusicSelectionPage.java @@ -1,10 +1,9 @@ package zero1hd.polyjet.ui.pages; import com.badlogic.gdx.scenes.scene2d.Actor; -import com.badlogic.gdx.scenes.scene2d.Touchable; import com.badlogic.gdx.scenes.scene2d.actions.Actions; -import com.badlogic.gdx.scenes.scene2d.ui.Button; import com.badlogic.gdx.scenes.scene2d.ui.Image; +import com.badlogic.gdx.scenes.scene2d.ui.TextButton; import com.badlogic.gdx.scenes.scene2d.utils.ChangeListener; import zero1hd.polyjet.Polyjet; @@ -12,19 +11,16 @@ import zero1hd.polyjet.screens.MainMenu; public class MusicSelectionPage extends Page { Image loading; - Button back; - public MusicSelectionPage(final Polyjet core) { + public MusicSelectionPage(final Polyjet core, final MainMenu mainMenu) { super("Select music", core.defaultSkin); - back = new Button(core.defaultSkin, "arrow-button"); - back.setPosition(15f, (getHeight()-back.getHeight())/2 -15); + TextButton back = new TextButton("Back", core.defaultSkin); + back.setPosition(getWidth()-back.getWidth()-15f, getHeight()-back.getHeight()-15f); back.addListener(new ChangeListener() { - @Override public void changed(ChangeEvent event, Actor actor) { - core.setScreen(new MainMenu(core)); - + core.setScreen(mainMenu); } }); addActor(back); diff --git a/core/src/zero1hd/polyjet/ui/pages/OptionsPage.java b/core/src/zero1hd/polyjet/ui/pages/OptionsPage.java index 9c8c002..5ebf132 100755 --- a/core/src/zero1hd/polyjet/ui/pages/OptionsPage.java +++ b/core/src/zero1hd/polyjet/ui/pages/OptionsPage.java @@ -8,11 +8,11 @@ import com.badlogic.gdx.math.Vector3; import com.badlogic.gdx.scenes.scene2d.Actor; import com.badlogic.gdx.scenes.scene2d.InputEvent; import com.badlogic.gdx.scenes.scene2d.InputListener; -import com.badlogic.gdx.scenes.scene2d.ui.Button; import com.badlogic.gdx.scenes.scene2d.ui.Label; import com.badlogic.gdx.scenes.scene2d.ui.ProgressBar; import com.badlogic.gdx.scenes.scene2d.ui.Slider; 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.utils.ChangeListener; @@ -27,7 +27,6 @@ public class OptionsPage extends Page { private Polyjet core; private byte goToScreen; - private Button backSymbol; public OptionsPage(final Polyjet core, final Vector3 targetPosition, final MoreOptionsPage moreOptionsPage) { this.core = core; optionsTable.defaults().padTop(5f).padBottom(5f); @@ -103,22 +102,23 @@ public class OptionsPage extends Page { //Back button - backSymbol = new Button(core.defaultSkin, "arrow-button"); - backSymbol.addListener(new ChangeListener() { + TextButton backButton = new TextButton("Back", core.defaultSkin); + backButton.addListener(new ChangeListener() { @Override public void changed(ChangeEvent event, Actor actor) { targetPosition.x = 0.5f*Gdx.graphics.getWidth(); } }); - backSymbol.setPosition(10, (getHeight()-backSymbol.getHeight())/2); - addActor(backSymbol); + backButton.setPosition(10, getHeight()-backButton.getHeight()-18); + addActor(backButton); - optionsTable.setPosition(backSymbol.getX()+ 20 + backSymbol.getWidth(), 0); - optionsTable.setSize(getWidth()-backSymbol.getWidth()-10-20-10, getHeight()); + optionsTable.setPosition(backButton.getX()+ 20 + backButton.getWidth(), 0); + optionsTable.setSize(getWidth()-backButton.getWidth()-10-20-10, getHeight()); addActor(optionsTable); + optionsTable.row(); - Button keybindSettings = new Button(core.defaultSkin, "arrow-button"); + TextButton keybindSettings = new TextButton("Set Controls", core.defaultSkin); keybindSettings.addListener(new ChangeListener() { @Override public void changed(ChangeEvent event, Actor actor) { @@ -126,13 +126,11 @@ public class OptionsPage extends Page { targetPosition.y = -0.5f*Gdx.graphics.getHeight(); } }); - keybindSettings.setPosition(optionsTable.getWidth()/3, optionsTable.getY()); - addActor(keybindSettings); - Label controlsSection = new Label("Controls", core.defaultSkin); - controlsSection.setPosition(keybindSettings.getX()+(keybindSettings.getWidth()-controlsSection.getWidth())/2, keybindSettings.getHeight()+keybindSettings.getY()); - addActor(controlsSection); + optionsTable.add(keybindSettings).colspan(2).fill(); - Button graphicsSettings = new Button(core.defaultSkin, "arrow-button"); + optionsTable.row(); + + TextButton graphicsSettings = new TextButton("Graphics", core.defaultSkin); graphicsSettings.addListener(new ChangeListener() { @Override public void changed(ChangeEvent event, Actor actor) { @@ -140,11 +138,7 @@ public class OptionsPage extends Page { targetPosition.y = -0.5f*Gdx.graphics.getHeight(); } }); - graphicsSettings.setPosition(optionsTable.getWidth()*2/3, optionsTable.getY()); - addActor(graphicsSettings); - Label graphicsSection = new Label("Graphics", core.defaultSkin); - graphicsSection.setPosition(graphicsSettings.getX()+(graphicsSettings.getWidth()-graphicsSection.getWidth())/2, graphicsSettings.getHeight()+graphicsSettings.getY()); - addActor(graphicsSection); + optionsTable.add(graphicsSettings).colspan(2).fill(); } public void saveOptions(Preferences prefs) { diff --git a/core/src/zero1hd/polyjet/ui/windows/MusicSelector.java b/core/src/zero1hd/polyjet/ui/windows/MusicSelector.java index ef16ebd..f335f77 100755 --- a/core/src/zero1hd/polyjet/ui/windows/MusicSelector.java +++ b/core/src/zero1hd/polyjet/ui/windows/MusicSelector.java @@ -44,7 +44,7 @@ public class MusicSelector extends Window { TextButton confirmButton = new TextButton("confirm", skin); confirmButton.addListener(new ChangeListener() { - + @Override public void changed(ChangeEvent event, Actor actor) { confirmed = true;