Колёсико мыши

Версия Minecraft
1.19.2
API
Forge
14
1
3
Прошу помочь, у меня есть предмет, который должен менять режим при при нажатии шрифта и прокрутки колёсика мыши, как проверить зажатие шифта знаю, а вот как отследить прокрутку колеса ваще хз. Forge 1.19.2. заранее спасибо

Upd
На просторах интернета я нашел, что можно использовать org.lwjgl.input.Mouse, только как примерно реализовать?
 
Последнее редактирование:
Я опередил, смотрел до этого, но там это сделано довольно нагружено, хотелось бы какой-то другой пример, ну что есть то есть
Java:
    @SubscribeEvent
    public void onTickClient(ClientTickEvent event) {
        if (event.phase == TickEvent.Phase.START) {
            int scroll = Mouse.getDWheel();
            if (scroll != 0) {
                if (scroll > 0) {
                    System.out.println("Прокрутка вверх");
                } else {
                    System.out.println("Прокрутка вниз");
                }
            }
        }
    }
 
Даже наверное лучше так будет

Java:
    @SubscribeEvent
    public static void onClientTick(ClientTickEvent event) {
        if (event.phase == TickEvent.Phase.END) {
            while (Mouse.next()) {
                int wheelDelta = Mouse.getEventDWheel();
                if (wheelDelta != 0) {
                        System.out.println("Прокрутка вверх");
                    } else {
                        System.out.println("Прокрутка вниз");
                    }
                }
            }
        }
    }
 
Вместо org.lwjgl.input.Mouse используется, насколько я знаю, MouseHandler, получить его можно через Minecraft.getInstance().mouseHandler.

который должен менять режим при при нажатии шрифта и прокрутки колёсика мыши

Проверка на шифт - Screen.hasShiftDown();
Для прокрутки колесика можно посмотреть как меняются слоты hotbar(или выше чет там предлагали).

UPD: Есть MouseScrollingEvent оказывается, а для прокрутки mouseScrollDelta(метод эвента)

И без пакетов тут не обойтись.
 
Последнее редактирование:
Назад
Сверху