From cab398222bcfbb2755aa4381c9a5d7650e5f1a22 Mon Sep 17 00:00:00 2001 From: Lance Ewing Date: Wed, 20 Mar 2024 22:35:31 +0000 Subject: [PATCH] For landscape mode, adjust size of joystick knob dynamically when required. --- core/src/main/java/com/agifans/agile/GameScreen.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/com/agifans/agile/GameScreen.java b/core/src/main/java/com/agifans/agile/GameScreen.java index 5cb328f..16b5b4f 100644 --- a/core/src/main/java/com/agifans/agile/GameScreen.java +++ b/core/src/main/java/com/agifans/agile/GameScreen.java @@ -334,8 +334,10 @@ private void draw(float delta) { int extraWidth = (int)(viewportManager.getWidth() - (viewportManager.getHeight() * 1.32)); int blackStripWidth = extraWidth / 2; //System.out.println("blackStripWidth: " + blackStripWidth); - int joyWidth = Math.min(blackStripWidth - 32, 200); + int joyWidth = Math.min(Math.max(blackStripWidth - 32, 96), 200); landscapeTouchpad.setSize(joyWidth, joyWidth); + landscapeTouchpad.getStyle().knob.setMinHeight(joyWidth * 0.6f); + landscapeTouchpad.getStyle().knob.setMinWidth(joyWidth * 0.6f); landscapeTouchpad.setY(viewportManager.getHeight() - (viewportManager.getHeight() / 2) - (joyWidth / 2)); switch (gameScreenInputProcessor.getJoystickAlignment()) { case OFF: