diff --git a/SPD-classes/src/main/java/com/watabou/input/ControllerHandler.java b/SPD-classes/src/main/java/com/watabou/input/ControllerHandler.java index b2856fbae..4625cd081 100644 --- a/SPD-classes/src/main/java/com/watabou/input/ControllerHandler.java +++ b/SPD-classes/src/main/java/com/watabou/input/ControllerHandler.java @@ -179,6 +179,8 @@ public class ControllerHandler implements ControllerListener { if (sendEvent) { controllerActive = true; PointerEvent.addPointerEvent(new PointerEvent((int) controllerPointerPos.x, (int) controllerPointerPos.y, 10_000, PointerEvent.Type.HOVER, PointerEvent.NONE)); + } else { + PointerEvent.setHoverPos(pos); } } diff --git a/SPD-classes/src/main/java/com/watabou/input/InputHandler.java b/SPD-classes/src/main/java/com/watabou/input/InputHandler.java index 4d74b195a..72392a347 100644 --- a/SPD-classes/src/main/java/com/watabou/input/InputHandler.java +++ b/SPD-classes/src/main/java/com/watabou/input/InputHandler.java @@ -21,13 +21,11 @@ package com.watabou.input; -import com.badlogic.gdx.Gdx; import com.badlogic.gdx.Input; import com.badlogic.gdx.InputAdapter; import com.badlogic.gdx.InputMultiplexer; import com.badlogic.gdx.InputProcessor; import com.watabou.noosa.Game; -import com.watabou.noosa.ui.Cursor; import com.watabou.utils.PointF; public class InputHandler extends InputAdapter { diff --git a/SPD-classes/src/main/java/com/watabou/input/PointerEvent.java b/SPD-classes/src/main/java/com/watabou/input/PointerEvent.java index bc438d48f..2a06ae74d 100644 --- a/SPD-classes/src/main/java/com/watabou/input/PointerEvent.java +++ b/SPD-classes/src/main/java/com/watabou/input/PointerEvent.java @@ -121,6 +121,10 @@ public class PointerEvent { } return lastHoverPos.clone(); } + + public static void setHoverPos(PointF pos){ + lastHoverPos.set(pos); + } public static synchronized void addPointerEvent( PointerEvent event ){ pointerEvents.add( event ); diff --git a/SPD-classes/src/main/java/com/watabou/noosa/ui/Cursor.java b/SPD-classes/src/main/java/com/watabou/noosa/ui/Cursor.java index 411844622..ce2234e3a 100644 --- a/SPD-classes/src/main/java/com/watabou/noosa/ui/Cursor.java +++ b/SPD-classes/src/main/java/com/watabou/noosa/ui/Cursor.java @@ -26,6 +26,7 @@ import com.badlogic.gdx.Gdx; import com.badlogic.gdx.graphics.Pixmap; import com.watabou.input.ControllerHandler; import com.watabou.noosa.Game; +import com.watabou.utils.Callback; import com.watabou.utils.FileUtils; import com.watabou.utils.PointF; @@ -99,10 +100,9 @@ public class Cursor { } else { if (ControllerHandler.controllerPointerActive()) { ControllerHandler.setControllerPointer(true); - ControllerHandler.updateControllerPointer(new PointF(Game.width/2, Game.height/2), false); + ControllerHandler.updateControllerPointer(new PointF(Game.width/2f, Game.height/2f), false); } else { Gdx.input.setCursorCatched(false); - Gdx.input.setCursorPosition(Game.width/2, Game.height/2); } } }