Better Android keyboard support
This commit is contained in:
@@ -280,7 +280,7 @@ public class DesktopInput extends InputHandler{
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateController(){
|
||||
public void updateState(){
|
||||
if(state.is(State.menu)){
|
||||
droppingItem = false;
|
||||
mode = none;
|
||||
|
||||
@@ -132,7 +132,7 @@ public abstract class InputHandler implements InputProcessor{
|
||||
|
||||
}
|
||||
|
||||
public void updateController(){
|
||||
public void updateState(){
|
||||
|
||||
}
|
||||
|
||||
@@ -275,6 +275,10 @@ public abstract class InputHandler implements InputProcessor{
|
||||
frag.remove();
|
||||
}
|
||||
|
||||
public void add(){
|
||||
Core.input.addProcessor(this);
|
||||
}
|
||||
|
||||
public boolean canShoot(){
|
||||
return block == null && !Core.scene.hasMouse() && !onConfigurable() && !isDroppingItem();
|
||||
}
|
||||
|
||||
@@ -36,6 +36,7 @@ public class MobileInput extends InputHandler implements GestureListener{
|
||||
//gesture data
|
||||
private Vector2 vector = new Vector2();
|
||||
private float lastZoom = -1;
|
||||
private GestureDetector detector;
|
||||
|
||||
/** Position where the player started dragging a line. */
|
||||
private int lineStartX, lineStartY;
|
||||
@@ -65,12 +66,6 @@ public class MobileInput extends InputHandler implements GestureListener{
|
||||
|
||||
private int prevX, prevY, prevRotation;
|
||||
|
||||
public MobileInput(){
|
||||
Events.on(ClientLoadEvent.class, e -> {
|
||||
Core.input.getInputProcessors().add(new GestureDetector(20, 0.5f, 0.4f, 0.15f, this));
|
||||
});
|
||||
}
|
||||
|
||||
//region utility methods
|
||||
|
||||
/** Check and assign targets for a specific position. */
|
||||
@@ -445,6 +440,20 @@ public class MobileInput extends InputHandler implements GestureListener{
|
||||
//endregion
|
||||
//region input events
|
||||
|
||||
@Override
|
||||
public void add(){
|
||||
super.add();
|
||||
Core.input.addProcessor(detector = new GestureDetector(20, 0.5f, 0.4f, 0.15f, this));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void remove(){
|
||||
super.remove();
|
||||
if(detector != null){
|
||||
Core.input.removeProcessor(detector);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean touchDown(int screenX, int screenY, int pointer, KeyCode button){
|
||||
if(state.is(State.menu) || player.isDead()) return false;
|
||||
|
||||
Reference in New Issue
Block a user