DEADSOFTWARE

Implement dependency injection for game classes #13
[cavedroid.git] / core / src / ru / deadsoftware / cavedroid / menu / submenus / Menu.java
index 17367d8f98884ecf513f3a182f6adcd668d5af7a..2a89e04608f3064a170bdb69c363a99deb84d23d 100644 (file)
@@ -7,10 +7,10 @@ import com.badlogic.gdx.graphics.g2d.TextureRegion;
 import com.badlogic.gdx.utils.ArrayMap;
 import com.badlogic.gdx.utils.JsonValue;
 import ru.deadsoftware.cavedroid.CaveGame;
-import ru.deadsoftware.cavedroid.GameScreen;
+import ru.deadsoftware.cavedroid.game.GameScreen;
 import ru.deadsoftware.cavedroid.menu.objects.Button;
-import ru.deadsoftware.cavedroid.menu.objects.ButtonRenderer;
 import ru.deadsoftware.cavedroid.menu.objects.ButtonEventListener;
+import ru.deadsoftware.cavedroid.menu.objects.ButtonRenderer;
 import ru.deadsoftware.cavedroid.misc.Assets;
 
 import java.util.HashMap;
@@ -28,8 +28,8 @@ public abstract class Menu {
     private ArrayMap<String, Button> buttons;
 
     /**
-     * @param width  Viewport width
-     * @param height Viewport height
+     * @param width          Viewport width
+     * @param height         Viewport height
      * @param buttonRenderer {@link ButtonRenderer} that will draw the buttons of this menu
      */
     Menu(float width, float height, ButtonRenderer buttonRenderer) {
@@ -56,7 +56,9 @@ public abstract class Menu {
      * @param jsonFile A {@link FileHandle} to json file
      */
     void loadButtonsFromJson(FileHandle jsonFile) {
-        if (buttons == null) buttons = new ArrayMap<>();
+        if (buttons == null) {
+            buttons = new ArrayMap<>();
+        }
         HashMap<String, ButtonEventListener> eventListeners = getButtonEventListeners();
         JsonValue json = Assets.jsonReader.parse(jsonFile);
         int y = (int) height / 4;
@@ -64,7 +66,8 @@ public abstract class Menu {
             buttons.put(key.name(),
                     new Button(Assets.getStringFromJson(key, "label", ""),
                             (int) width / 2 - Button.WIDTH / 2,
-                            Assets.getIntFromJson(key, "y", y), Assets.getIntFromJson(key, "type", Button.NORMAL),
+                            Assets.getIntFromJson(key, "y", y),
+                            Assets.getIntFromJson(key, "type", Button.NORMAL),
                             eventListeners.containsKey(key.name()) ? eventListeners.get(key.name()) : () -> {
                             }));
         }
@@ -86,11 +89,11 @@ public abstract class Menu {
         }
         spriter.draw(gamelogo, width / 2 - (float) gamelogo.getRegionWidth() / 2, 8);
 
-        float inputX = Gdx.input.getX() * width / GameScreen.getWidth();
-        float inputY = Gdx.input.getY() * height / GameScreen.getHeight();
+        float inputX = Gdx.input.getX() * width / Gdx.graphics.getWidth();
+        float inputY = Gdx.input.getY() * height / Gdx.graphics.getHeight();
         for (Button button : buttons.values()) {
             if (button.getType() > 0) {
-                if (button.getRect().contains(inputX, inputY) && (!CaveGame.TOUCH || Gdx.input.isTouched())) {
+                if (button.getRect().contains(inputX, inputY) && (/*!CaveGame.TOUCH || */Gdx.input.isTouched())) {
                     button.setType(2);
                 } else {
                     button.setType(1);