(fix) raw mouse input bug
This commit is contained in:
parent
8f28b8fe45
commit
72b969357c
|
@ -13,6 +13,7 @@ public class RawInputHandler {
|
||||||
public static Mouse mouse;
|
public static Mouse mouse;
|
||||||
public static int dx = 0;
|
public static int dx = 0;
|
||||||
public static int dy = 0;
|
public static int dy = 0;
|
||||||
|
public static Thread inputThread;
|
||||||
|
|
||||||
public static void init() {
|
public static void init() {
|
||||||
controllers = ControllerEnvironment.getDefaultEnvironment().getControllers();
|
controllers = ControllerEnvironment.getDefaultEnvironment().getControllers();
|
||||||
|
@ -44,9 +45,11 @@ public class RawInputHandler {
|
||||||
Minecraft.getMinecraft().mouseHelper = new MouseHelper();
|
Minecraft.getMinecraft().mouseHelper = new MouseHelper();
|
||||||
Minecraft.getMinecraft().mouseHelper.grabMouseCursor();
|
Minecraft.getMinecraft().mouseHelper.grabMouseCursor();
|
||||||
Minecraft.getMinecraft().mouseHelper.ungrabMouseCursor();
|
Minecraft.getMinecraft().mouseHelper.ungrabMouseCursor();
|
||||||
|
inputThread.interrupt();
|
||||||
} else {
|
} else {
|
||||||
Client.logger.info("[SC]: Enabling Raw Mouse Input");
|
Client.logger.info("[SC]: Enabling Raw Mouse Input");
|
||||||
Minecraft.getMinecraft().mouseHelper = new RawMouseHelper();
|
Minecraft.getMinecraft().mouseHelper = new RawMouseHelper();
|
||||||
|
startThread();
|
||||||
Minecraft.getMinecraft().mouseHelper.grabMouseCursor();
|
Minecraft.getMinecraft().mouseHelper.grabMouseCursor();
|
||||||
Minecraft.getMinecraft().mouseHelper.ungrabMouseCursor();
|
Minecraft.getMinecraft().mouseHelper.ungrabMouseCursor();
|
||||||
}
|
}
|
||||||
|
@ -59,8 +62,12 @@ public class RawInputHandler {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void startThread() {
|
public static void startThread() {
|
||||||
Thread inputThread = new Thread(() -> {
|
inputThread = new Thread(() -> {
|
||||||
while(true){
|
while(true){
|
||||||
|
if (Thread.currentThread().isInterrupted()) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
rescan();
|
||||||
if (mouse != null && Minecraft.getMinecraft().currentScreen == null) {
|
if (mouse != null && Minecraft.getMinecraft().currentScreen == null) {
|
||||||
mouse.poll();
|
mouse.poll();
|
||||||
dx += (int)mouse.getX().getPollData();
|
dx += (int)mouse.getX().getPollData();
|
||||||
|
@ -74,7 +81,7 @@ public class RawInputHandler {
|
||||||
try {
|
try {
|
||||||
Thread.sleep(1);
|
Thread.sleep(1);
|
||||||
} catch(InterruptedException e) {
|
} catch(InterruptedException e) {
|
||||||
e.printStackTrace();
|
Client.logger.catching(e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in New Issue