forked from Clones/Controlify
joystick support
This commit is contained in:
@ -6,12 +6,10 @@ import net.minecraft.client.player.Input;
|
||||
import net.minecraft.client.player.LocalPlayer;
|
||||
|
||||
public class ControllerPlayerMovement extends Input {
|
||||
private final Controller controller;
|
||||
private final Controller<?, ?> controller;
|
||||
private final LocalPlayer player;
|
||||
|
||||
private boolean shiftToggled = false;
|
||||
|
||||
public ControllerPlayerMovement(Controller controller, LocalPlayer player) {
|
||||
public ControllerPlayerMovement(Controller<?, ?> controller, LocalPlayer player) {
|
||||
this.controller = controller;
|
||||
this.player = player;
|
||||
}
|
||||
|
@ -7,12 +7,12 @@ import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.player.KeyboardInput;
|
||||
|
||||
public class InGameInputHandler {
|
||||
private final Controller controller;
|
||||
private final Controller<?, ?> controller;
|
||||
private final Minecraft minecraft;
|
||||
|
||||
private double lookInputX, lookInputY;
|
||||
|
||||
public InGameInputHandler(Controller controller) {
|
||||
public InGameInputHandler(Controller<?, ?> controller) {
|
||||
this.controller = controller;
|
||||
this.minecraft = Minecraft.getInstance();
|
||||
|
||||
@ -51,10 +51,12 @@ public class InGameInputHandler {
|
||||
}
|
||||
|
||||
protected void handlePlayerLookInput() {
|
||||
var axes = controller.state().axes();
|
||||
var impulseY = controller.bindings().LOOK_DOWN.state() - controller.bindings().LOOK_UP.state();
|
||||
var impulseX = controller.bindings().LOOK_RIGHT.state() - controller.bindings().LOOK_LEFT.state();
|
||||
|
||||
if (minecraft.mouseHandler.isMouseGrabbed() && minecraft.isWindowActive()) {
|
||||
lookInputX = axes.rightStickX() * Math.abs(axes.rightStickX()) * controller.config().horizontalLookSensitivity;
|
||||
lookInputY = axes.rightStickY() * Math.abs(axes.rightStickY()) * controller.config().verticalLookSensitivity;
|
||||
lookInputX = impulseX * Math.abs(impulseX) * controller.config().horizontalLookSensitivity;
|
||||
lookInputY = impulseY * Math.abs(impulseY) * controller.config().verticalLookSensitivity;
|
||||
} else {
|
||||
lookInputX = lookInputY = 0;
|
||||
}
|
||||
|
@ -10,5 +10,5 @@ import java.util.Optional;
|
||||
|
||||
@FunctionalInterface
|
||||
public interface ButtonActionSupplier {
|
||||
Optional<GuideAction> supply(Minecraft client, LocalPlayer player, ClientLevel level, HitResult hitResult, Controller controller);
|
||||
Optional<GuideAction> supply(Minecraft client, LocalPlayer player, ClientLevel level, HitResult hitResult, Controller<?, ?> controller);
|
||||
}
|
||||
|
@ -17,7 +17,7 @@ import net.minecraft.world.phys.*;
|
||||
import java.util.*;
|
||||
|
||||
public class InGameButtonGuide implements ButtonGuideRegistry {
|
||||
private final Controller controller;
|
||||
private final Controller<?, ?> controller;
|
||||
private final LocalPlayer player;
|
||||
private final Minecraft minecraft = Minecraft.getInstance();
|
||||
|
||||
@ -26,7 +26,7 @@ public class InGameButtonGuide implements ButtonGuideRegistry {
|
||||
private final List<GuideAction> leftGuides = new ArrayList<>();
|
||||
private final List<GuideAction> rightGuides = new ArrayList<>();
|
||||
|
||||
public InGameButtonGuide(Controller controller, LocalPlayer localPlayer) {
|
||||
public InGameButtonGuide(Controller<?, ?> controller, LocalPlayer localPlayer) {
|
||||
this.controller = controller;
|
||||
this.player = localPlayer;
|
||||
|
||||
|
Reference in New Issue
Block a user