forked from Clones/Controlify
auto jump for controllers
This commit is contained in:
@ -96,6 +96,12 @@ public class YACLHelper {
|
|||||||
.binding(def.toggleSneak, () -> config.toggleSneak, v -> config.toggleSneak = v)
|
.binding(def.toggleSneak, () -> config.toggleSneak, v -> config.toggleSneak = v)
|
||||||
.controller(opt -> new BooleanController(opt, v -> Component.translatable("controlify.gui.format.hold_toggle." + (v ? "toggle" : "hold")), false))
|
.controller(opt -> new BooleanController(opt, v -> Component.translatable("controlify.gui.format.hold_toggle." + (v ? "toggle" : "hold")), false))
|
||||||
.build())
|
.build())
|
||||||
|
.option(Option.createBuilder(boolean.class)
|
||||||
|
.name(Component.translatable("controlify.gui.auto_jump"))
|
||||||
|
.tooltip(Component.translatable("controlify.gui.auto_jump.tooltip"))
|
||||||
|
.binding(def.autoJump, () -> config.autoJump, v -> config.autoJump = v)
|
||||||
|
.controller(BooleanController::new)
|
||||||
|
.build())
|
||||||
.option(Option.createBuilder(boolean.class)
|
.option(Option.createBuilder(boolean.class)
|
||||||
.name(Component.translatable("controlify.gui.show_guide"))
|
.name(Component.translatable("controlify.gui.show_guide"))
|
||||||
.tooltip(Component.translatable("controlify.gui.show_guide.tooltip"))
|
.tooltip(Component.translatable("controlify.gui.show_guide.tooltip"))
|
||||||
|
@ -178,6 +178,7 @@ public final class Controller {
|
|||||||
|
|
||||||
public ControllerTheme theme = type().theme();
|
public ControllerTheme theme = type().theme();
|
||||||
|
|
||||||
|
public boolean autoJump = false;
|
||||||
public boolean toggleSprint = true;
|
public boolean toggleSprint = true;
|
||||||
public boolean toggleSneak = true;
|
public boolean toggleSneak = true;
|
||||||
|
|
||||||
|
@ -0,0 +1,19 @@
|
|||||||
|
package dev.isxander.controlify.mixins.feature.accessibility;
|
||||||
|
|
||||||
|
import com.llamalad7.mixinextras.injector.ModifyExpressionValue;
|
||||||
|
import dev.isxander.controlify.Controlify;
|
||||||
|
import dev.isxander.controlify.InputMode;
|
||||||
|
import net.minecraft.client.player.LocalPlayer;
|
||||||
|
import org.spongepowered.asm.mixin.Mixin;
|
||||||
|
import org.spongepowered.asm.mixin.injection.At;
|
||||||
|
|
||||||
|
@Mixin(LocalPlayer.class)
|
||||||
|
public class LocalPlayerMixin {
|
||||||
|
@ModifyExpressionValue(method = "sendPosition", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/OptionInstance;get()Ljava/lang/Object;"))
|
||||||
|
private Object shouldUseAutoJump(Object keyboardAutoJump) {
|
||||||
|
if (Controlify.instance().currentInputMode() == InputMode.CONTROLLER) {
|
||||||
|
return Controlify.instance().currentController().config().autoJump;
|
||||||
|
}
|
||||||
|
return keyboardAutoJump;
|
||||||
|
}
|
||||||
|
}
|
Reference in New Issue
Block a user