mirror of
https://github.com/TeamMidnightDust/MidnightControls.git
synced 2025-12-13 15:25:08 +01:00
- Added #40 (Modded keybind support) - Added #20 (Touchscreen support) - Improved #13 (Sodium screen controller support) - Attempt to fix #31 & #38 (Jittery input on low FPS) - Fixed #35 (Front placing being broken) - Fixed #32 (Option to disable double tap to sprint) - Fixed #27 (Auto-adapt controller icons) - Fixed #19 (HUD-scaling on big scales) - Fixed #36 (Crash on game load) - Fixed reset option - Fixed scrolling in trading screens - Disable features that might be considered as cheats (install MidnightControlsExtra to enable)
43 lines
1.0 KiB
Java
43 lines
1.0 KiB
Java
/*
|
|
* Copyright © 2021 LambdAurora <aurora42lambda@gmail.com>
|
|
*
|
|
* This file is part of midnightcontrols.
|
|
*
|
|
* Licensed under the MIT license. For more information,
|
|
* see the LICENSE file.
|
|
*/
|
|
|
|
package eu.midnightdust.midnightcontrols.client.mixin;
|
|
|
|
import eu.midnightdust.midnightcontrols.client.util.KeyBindingAccessor;
|
|
import net.minecraft.client.option.KeyBinding;
|
|
import org.spongepowered.asm.mixin.Mixin;
|
|
import org.spongepowered.asm.mixin.Shadow;
|
|
|
|
@Mixin(KeyBinding.class)
|
|
public class KeyBindingMixin implements KeyBindingAccessor {
|
|
@Shadow
|
|
private int timesPressed;
|
|
|
|
@Shadow
|
|
private boolean pressed;
|
|
|
|
@Override
|
|
public boolean midnightcontrols$press() {
|
|
boolean oldPressed = this.pressed;
|
|
if (!this.pressed)
|
|
this.pressed = true;
|
|
++this.timesPressed;
|
|
return !oldPressed;
|
|
}
|
|
|
|
@Override
|
|
public boolean midnightcontrols$unpress() {
|
|
if (this.pressed) {
|
|
this.pressed = false;
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
}
|