1
0
forked from Clones/Controlify

🎮📳 Controller Vibration! (#38)

This commit is contained in:
Xander
2023-04-04 17:17:01 +01:00
committed by GitHub
parent 2bf7cf4792
commit ebbc549e32
32 changed files with 686 additions and 42 deletions

View File

@ -62,16 +62,23 @@ public class InGameInputHandler {
}
protected void handlePlayerLookInput() {
var player = this.minecraft.player;
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() && minecraft.player != null) {
if (minecraft.mouseHandler.isMouseGrabbed() && minecraft.isWindowActive() && player != null) {
lookInputX = impulseX * Math.abs(impulseX) * controller.config().horizontalLookSensitivity;
lookInputY = impulseY * Math.abs(impulseY) * controller.config().verticalLookSensitivity;
if (controller.config().reduceBowSensitivity && minecraft.player.getUseItem().getItem() instanceof ProjectileWeaponItem) {
lookInputX *= Math.abs(impulseX) * 0.6;
lookInputY *= Math.abs(impulseY) * 0.6;
if (controller.config().reduceAimingSensitivity && player.isUsingItem()) {
float aimMultiplier = switch (player.getUseItem().getUseAnimation()) {
case BOW, CROSSBOW, SPEAR -> 0.6f;
case SPYGLASS -> 0.2f;
default -> 1f;
};
lookInputX *= aimMultiplier;
lookInputY *= aimMultiplier;
}
} else {
lookInputX = lookInputY = 0;