mirror of
https://github.com/TeamMidnightDust/MidnightControls.git
synced 2025-12-17 08:55:10 +01:00
✨ Add controller settings GUI and more WIP on controller support.
This commit is contained in:
@@ -11,6 +11,7 @@ package me.lambdaurora.lambdacontrols.mixin;
|
||||
|
||||
import me.lambdaurora.lambdacontrols.ControlsMode;
|
||||
import me.lambdaurora.lambdacontrols.LambdaControls;
|
||||
import me.lambdaurora.lambdacontrols.util.MouseAccessor;
|
||||
import net.minecraft.client.MinecraftClient;
|
||||
import net.minecraft.client.Mouse;
|
||||
import org.spongepowered.asm.mixin.Final;
|
||||
@@ -21,17 +22,13 @@ import org.spongepowered.asm.mixin.injection.Inject;
|
||||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
||||
|
||||
@Mixin(Mouse.class)
|
||||
public class MouseMixin
|
||||
public abstract class MouseMixin implements MouseAccessor
|
||||
{
|
||||
@Shadow
|
||||
@Final
|
||||
private MinecraftClient client;
|
||||
protected abstract void onCursorPos(long window, double x, double y);
|
||||
|
||||
@Shadow
|
||||
private double x;
|
||||
|
||||
@Shadow
|
||||
private double y;
|
||||
protected abstract void onMouseButton(long window, int button, int action, int mods);
|
||||
|
||||
@Inject(method = "lockCursor", at = @At("HEAD"), cancellable = true)
|
||||
private void on_mouse_locked(CallbackInfo ci)
|
||||
@@ -39,4 +36,16 @@ public class MouseMixin
|
||||
if (LambdaControls.get().config.get_controls_mode() == ControlsMode.TOUCHSCREEN)
|
||||
ci.cancel();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void on_mouse_button(long window, int button, int action, int mods)
|
||||
{
|
||||
this.onMouseButton(window, button, action, mods);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void on_cursor_pos(long window, double x, double y)
|
||||
{
|
||||
this.onCursorPos(window, x, y);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user