1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Помогите Как проверить нажатие пкм с определённым предметом в руках?

Тема в разделе "Разработка плагинов для новичков", создана пользователем AguRChek_TV, 5 июн 2019.

  1. Автор темы
    AguRChek_TV

    AguRChek_TV Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    AguRChek_TV
    Как проверить нажатие пкм с определённым предметом в руках?
     
  2. Exception_Prototype

    Exception_Prototype Активный участник Пользователь

    Баллы:
    96
    PHP:
    @EventHandler
    void onPlayerInteract
    (PlayerInteractEvent event) {
     
        if (!
    event.hasItem()) return; //проверка на то, что в событие точно участвует предмет
        
    if ((event.getAction() != Action.RIGHT_CLICK_AIR) && (event.getAction() != Action.RIGHT_CLICK_BLOCK)) return; //действие в событие ПКМ по блоку или воздуху

        
    ItemStack itemStack event.getItem();
     
        if (
    itemStack.getType() == Material.DIAMOND) {
            
    //todo
        
    }

    }
     
  3. Автор темы
    AguRChek_TV

    AguRChek_TV Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    AguRChek_TV

    Я пробовал примерно так же но у меня не работает:


    @EventHandler
    public void playerInteract(PlayerInteractEvent e){
    Action a = e.getAction();
    if(a != Action.RIGHT_CLICK_BLOCK && a != Action.RIGHT_CLICK_AIR) return;
    Player p = e.getPlayer();
    ItemStack item = p.getItemInHand();
    if(item.getType() == Material.COMPASS); {
    p.sendMessage("Що кликаеЩъ");
    }
    }

    -RIGHT_CLICK_BLOCK cannot be resolved or is not field
    -RIGHT_CLICK_AIR cannot be resolved or is not field
     
  4. MurlikMurlik

    MurlikMurlik Активный участник Пользователь

    Баллы:
    96
    Сделай скрин лучше
     
  5. Автор темы
    AguRChek_TV

    AguRChek_TV Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    AguRChek_TV
     

    Вложения:

  6. Meltionix

    Meltionix Участник Пользователь

    Баллы:
    31
    Ну тк чекай, ты не тот импорт для класса Action сделал.
     
  7. Автор темы
    AguRChek_TV

    AguRChek_TV Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    AguRChek_TV
    ?
     
  8. Meltionix

    Meltionix Участник Пользователь

    Баллы:
    31
    Ты импортировал класс Action из awt, а должен был из баккита("org.bukkit.event.block").
     
  9. Автор темы
    AguRChek_TV

    AguRChek_TV Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    AguRChek_TV
    Я вообще не понял что я не правильно сделал. Можно более развёрнуто объяснить. Я в этом вообще ничего не понимаю только начал разбираться, с помощью гугла и пытаюсь научиться.
     
  10. Meltionix

    Meltionix Участник Пользователь

    Баллы:
    31
    Ну тк, если ты не понимаешь, что такое импорты, то ты явно рано начал писать плагины. Тут только один вариант, зубрить джаву, иначе никак.
     
  11. LOVEC3327

    LOVEC3327 Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    LOVEC3327
    Вот это импортируй, а от awt удали.
    Код:
    import org.bukkit.event.block.Action;
     
  12. TheSkiffSailor

    TheSkiffSailor Новичок Пользователь

    Баллы:
    21
    Имя в Minecraft:
    TheSkiffSailor
    Развернутее некуда
    Прочитай что такое import
     
  13. DeLanau

    DeLanau Активный участник

    Баллы:
    61
    Имя в Minecraft:
    DeLanau
    А еще как вариант установи идеа с автоимпортами.
     

Поделиться этой страницей