FTHelper Forge 1.16.5

  • Автор темы Автор темы shrooms
  • Дата начала Дата начала
Начинающий
Начинающий
Статус
Оффлайн
Регистрация
23 Фев 2024
Сообщения
11
Реакции
0
Код:
Expand Collapse Copy
    @SubscribeEvent
    public void onKeyInput(InputEvent.KeyInputEvent event) {
        if (mc.screen != null) {
            return;
        }

        if (event.getKey() == GLFW.GLFW_KEY_X && event.getAction() == GLFW.GLFW_PRESS) {
            useItem(Items.ENDER_EYE, "Использовал Дезориентацию", "Дезориентация не найдена");
        }
    }

    @SubscribeEvent
    public void onMouseInput(InputEvent.MouseInputEvent event) {
        if (mc.screen != null) {
            return;
        }

        if (event.getButton() == GLFW.GLFW_MOUSE_BUTTON_5 && event.getAction() == GLFW.GLFW_PRESS) {
            useItem(Items.NETHERITE_SCRAP, "Использовал Трапку", "Трапка не найдена");
        }
    }

    private void useItem(Item item, String successMessage, String failureMessage) {
        if (mc.player == null || mc.level == null) return;

        int hotbarSlot = mc.player.inventory.selected;

        int targetSlot = -1;
        for (int i = 0; i < 36; i++) {
            if (mc.player.inventory.getItem(i).getItem() == item) {
                targetSlot = i;
                break;
            }
        }

        if (targetSlot != -1 && targetSlot != hotbarSlot) {
            mc.player.inventory.selected = targetSlot;
            mc.player.inventory.setChanged();

            mc.gameMode.useItem(mc.player, mc.level, Hand.MAIN_HAND);

            mc.player.inventory.selected = hotbarSlot;
            mc.player.inventory.setChanged();

            mc.player.displayClientMessage(
                    new StringTextComponent("")
                            .append(new StringTextComponent(" [UPI] ").withStyle(TextFormatting.DARK_GRAY))
                            .append(new StringTextComponent(successMessage).withStyle(TextFormatting.GRAY)),
                    false
            );
        } else {
            mc.player.displayClientMessage(
                    new StringTextComponent("")
                            .append(new StringTextComponent(" [UPI] ").withStyle(TextFormatting.DARK_GRAY))
                            .append(new StringTextComponent(failureMessage).withStyle(TextFormatting.GRAY)),
                    false
            );
        }
    }
 
Ставлю класс!
 
так то сделать легко, но +реп за то что продвигаешь forge
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Код:
Expand Collapse Copy
    @SubscribeEvent
    public void onKeyInput(InputEvent.KeyInputEvent event) {
        if (mc.screen != null) {
            return;
        }

        if (event.getKey() == GLFW.GLFW_KEY_X && event.getAction() == GLFW.GLFW_PRESS) {
            useItem(Items.ENDER_EYE, "Использовал Дезориентацию", "Дезориентация не найдена");
        }
    }

    @SubscribeEvent
    public void onMouseInput(InputEvent.MouseInputEvent event) {
        if (mc.screen != null) {
            return;
        }

        if (event.getButton() == GLFW.GLFW_MOUSE_BUTTON_5 && event.getAction() == GLFW.GLFW_PRESS) {
            useItem(Items.NETHERITE_SCRAP, "Использовал Трапку", "Трапка не найдена");
        }
    }

    private void useItem(Item item, String successMessage, String failureMessage) {
        if (mc.player == null || mc.level == null) return;

        int hotbarSlot = mc.player.inventory.selected;

        int targetSlot = -1;
        for (int i = 0; i < 36; i++) {
            if (mc.player.inventory.getItem(i).getItem() == item) {
                targetSlot = i;
                break;
            }
        }

        if (targetSlot != -1 && targetSlot != hotbarSlot) {
            mc.player.inventory.selected = targetSlot;
            mc.player.inventory.setChanged();

            mc.gameMode.useItem(mc.player, mc.level, Hand.MAIN_HAND);

            mc.player.inventory.selected = hotbarSlot;
            mc.player.inventory.setChanged();

            mc.player.displayClientMessage(
                    new StringTextComponent("")
                            .append(new StringTextComponent(" [UPI] ").withStyle(TextFormatting.DARK_GRAY))
                            .append(new StringTextComponent(successMessage).withStyle(TextFormatting.GRAY)),
                    false
            );
        } else {
            mc.player.displayClientMessage(
                    new StringTextComponent("")
                            .append(new StringTextComponent(" [UPI] ").withStyle(TextFormatting.DARK_GRAY))
                            .append(new StringTextComponent(failureMessage).withStyle(TextFormatting.GRAY)),
                    false
            );
        }
    }
класс, вот только если тебе в инвентарь попадет незер лом твой код 50/50 по пизде пойдет
 
класс, вот только если тебе в инвентарь попадет незер лом твой код 50/50 по пизде пойдет
просто добавить проверку на nbt предмета перед использованием и все
 
Назад
Сверху Снизу