summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--assets/sprites/gui/widgets.atlas19
-rw-r--r--assets/sprites/gui/widgets.pngbin0 -> 712464 bytes
-rw-r--r--assets/sprites/gui/widgets.skin25
-rw-r--r--core/src/main/java/kz/ilotterytea/frogartha/assets/Assets.java1
-rw-r--r--core/src/main/java/kz/ilotterytea/frogartha/screens/MenuScreen.java35
5 files changed, 79 insertions, 1 deletions
diff --git a/assets/sprites/gui/widgets.atlas b/assets/sprites/gui/widgets.atlas
new file mode 100644
index 0000000..7517630
--- /dev/null
+++ b/assets/sprites/gui/widgets.atlas
@@ -0,0 +1,19 @@
+widgets.png
+size:1024,1024
+repeat:none
+exit
+bounds:640,320,320,320
+fullscreen
+bounds:0,0,320,320
+locale_en
+bounds:0,640,320,320
+locale_ru
+bounds:320,640,320,320
+music_off
+bounds:640,640,320,320
+music_on
+bounds:0,320,320,320
+slots
+bounds:320,0,320,320
+windowed
+bounds:320,320,320,320
diff --git a/assets/sprites/gui/widgets.png b/assets/sprites/gui/widgets.png
new file mode 100644
index 0000000..0ab24a0
--- /dev/null
+++ b/assets/sprites/gui/widgets.png
Binary files differ
diff --git a/assets/sprites/gui/widgets.skin b/assets/sprites/gui/widgets.skin
new file mode 100644
index 0000000..b0eea18
--- /dev/null
+++ b/assets/sprites/gui/widgets.skin
@@ -0,0 +1,25 @@
+{
+ com.badlogic.gdx.scenes.scene2d.ui.ImageButton$ImageButtonStyle: {
+ exit: {
+ up: exit
+ },
+ fullscreen: {
+ up: fullscreen
+ },
+ windowed: {
+ up: windowed
+ },
+ music_off: {
+ up: music_off
+ },
+ music_on: {
+ up: music_on
+ },
+ locale_en: {
+ up: locale_en
+ },
+ locale_ru: {
+ up: locale_ru
+ }
+ }
+}
diff --git a/core/src/main/java/kz/ilotterytea/frogartha/assets/Assets.java b/core/src/main/java/kz/ilotterytea/frogartha/assets/Assets.java
index 44f651b..0ad53f2 100644
--- a/core/src/main/java/kz/ilotterytea/frogartha/assets/Assets.java
+++ b/core/src/main/java/kz/ilotterytea/frogartha/assets/Assets.java
@@ -3,6 +3,7 @@ package kz.ilotterytea.frogartha.assets;
public class Assets {
public static class Skins {
public static final String SKIN_UI = "sprites/gui/ui.skin";
+ public static final String SKIN_WIDGET = "sprites/gui/widgets.skin";
}
public static class Sprites {
diff --git a/core/src/main/java/kz/ilotterytea/frogartha/screens/MenuScreen.java b/core/src/main/java/kz/ilotterytea/frogartha/screens/MenuScreen.java
index f5948e2..c492ff6 100644
--- a/core/src/main/java/kz/ilotterytea/frogartha/screens/MenuScreen.java
+++ b/core/src/main/java/kz/ilotterytea/frogartha/screens/MenuScreen.java
@@ -102,6 +102,7 @@ public class MenuScreen implements Screen {
private void createStage() {
stage = new Stage(new ScreenViewport());
Skin skin = game.getAssetManager().get(Assets.Skins.SKIN_UI);
+ Skin widgetSkin = game.getAssetManager().get(Assets.Skins.SKIN_WIDGET);
// Creating main table
Table mainTable = new Table();
@@ -136,7 +137,7 @@ public class MenuScreen implements Screen {
// --- Game control ---
gameTable = new Table();
gameTable.align(Align.center);
- mainTable.add(gameTable).grow();
+ mainTable.add(gameTable).grow().row();
// --- Authorizing label ---
authorizingLabel = new Label("Authorizing", skin);
@@ -227,5 +228,37 @@ public class MenuScreen implements Screen {
}
});
credentialsTable.add(loginButton).grow().row();
+
+ // - - - Menu control (quit, options, etc.) - - -
+ float iconSize = 64f;
+
+ Table controlTable = new Table();
+ controlTable.align(Align.top | Align.center);
+ controlTable.pad(14f);
+ mainTable.add(controlTable).growX();
+
+ // Left part of menu control
+ Table leftGameControlTable = new Table();
+ leftGameControlTable.align(Align.left);
+ controlTable.add(leftGameControlTable).grow();
+
+ ImageButton exitButton = new ImageButton(widgetSkin, "exit");
+ exitButton.setOrigin(iconSize / 2f, iconSize / 2f);
+
+ exitButton.addListener(new ClickListener() {
+ @Override
+ public void clicked(InputEvent event, float x, float y) {
+ super.clicked(event, x, y);
+ Gdx.app.exit();
+ }
+ });
+
+ leftGameControlTable.add(exitButton).size(iconSize).padRight(12f);
+
+ // Right part of menu control
+ Table rightGameControlTable = new Table();
+ rightGameControlTable.align(Align.right);
+
+ controlTable.add(rightGameControlTable).grow();
}
}