blob: 2bfb7fb254226e109508da2e44017119d200764f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
package de.hysky.skyblocker.skyblock.garden;
import de.hysky.skyblocker.config.SkyblockerConfigManager;
import de.hysky.skyblocker.utils.ItemUtils;
import de.hysky.skyblocker.utils.Location;
import de.hysky.skyblocker.utils.Utils;
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents;
import net.minecraft.client.MinecraftClient;
import net.minecraft.item.ItemStack;
public class LowerSensitivity {
private static boolean sensitivityLowered = false;
public static void init() {
ClientTickEvents.END_WORLD_TICK.register(world -> {
if (Utils.getLocation() != Location.GARDEN || MinecraftClient.getInstance().player == null || !SkyblockerConfigManager.get().farming.garden.lockMouseTool) {
if (sensitivityLowered) lowerSensitivity(false);
return;
}
ItemStack mainHandStack = MinecraftClient.getInstance().player.getMainHandStack();
String itemId = ItemUtils.getItemId(mainHandStack);
boolean shouldLockMouse = FarmingHudWidget.FARMING_TOOLS.containsKey(itemId) && (!SkyblockerConfigManager.get().farming.garden.lockMouseGroundOnly || MinecraftClient.getInstance().player.isOnGround());
if (shouldLockMouse && !sensitivityLowered) lowerSensitivity(true);
else if (!shouldLockMouse && sensitivityLowered) lowerSensitivity(false);
});
}
public static void lowerSensitivity(boolean lowerSensitivity) {
sensitivityLowered = lowerSensitivity;
}
public static boolean isSensitivityLowered() {
return sensitivityLowered;
}
}
|