diff --git a/src/main/java/net/wurstclient/hacks/AimAssistHack.java b/src/main/java/net/wurstclient/hacks/AimAssistHack.java index 4b883b4c..35b21e01 100644 --- a/src/main/java/net/wurstclient/hacks/AimAssistHack.java +++ b/src/main/java/net/wurstclient/hacks/AimAssistHack.java @@ -45,6 +45,11 @@ public final class AimAssistHack extends Hack private final AimAtSetting aimAt = new AimAtSetting( "What point in the target's hitbox AimAssist should aim at."); + private final SliderSetting ignoreMouseInput = + new SliderSetting("Ignore mouse input", + "description.wurst.setting.aimassist.ignore_mouse_input", 0, 0, 1, + 0.01, ValueDisplay.PERCENTAGE); + private final CheckboxSetting checkLOS = new CheckboxSetting("Check line of sight", "description.wurst.setting.aimassist.check_line_of_sight", true); @@ -95,6 +100,7 @@ public final class AimAssistHack extends Hack addSetting(rotationSpeed); addSetting(fov); addSetting(aimAt); + addSetting(ignoreMouseInput); addSetting(checkLOS); addSetting(aimWhileBlocking); @@ -201,7 +207,11 @@ public final class AimAssistHack extends Hack diffPitch = nextPitch < curPitch ? -1 : 1; } - event.setDeltaX(event.getDefaultDeltaX() + diffYaw); - event.setDeltaY(event.getDefaultDeltaY() + diffPitch); + double inputFactor = 1 - ignoreMouseInput.getValue(); + int mouseInputX = (int)(event.getDefaultDeltaX() * inputFactor); + int mouseInputY = (int)(event.getDefaultDeltaY() * inputFactor); + + event.setDeltaX(mouseInputX + diffYaw); + event.setDeltaY(mouseInputY + diffPitch); } } diff --git a/src/main/resources/assets/wurst/translations/en_us.json b/src/main/resources/assets/wurst/translations/en_us.json index 04f6f3f8..1d8202ae 100644 --- a/src/main/resources/assets/wurst/translations/en_us.json +++ b/src/main/resources/assets/wurst/translations/en_us.json @@ -1,6 +1,7 @@ { "description.wurst.hack.aimassist": "Helps you aim at nearby entities.", "description.wurst.setting.aimassist.fov": "Field Of View - how far away from your crosshair an entity can be before it's ignored.\n360° = aims at entities all around you.", + "description.wurst.setting.aimassist.ignore_mouse_input": "Ignores some of your mouse input while AimAssist is aiming. This makes it harder for you to accidentally aim away from the target.", "description.wurst.setting.aimassist.check_line_of_sight": "Won't aim at entities behind blocks.", "description.wurst.setting.aimassist.aim_while_blocking": "Keeps aiming at entities while you're blocking with a shield or using items.", "description.wurst.hack.airplace": "Allows you to place blocks in mid-air.",