Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

[РЕШЕНО] Активация Event только при нужных значениях

Тема в разделе "Разработка плагинов для новичков", создана пользователем TheBlacK.Z, 24 янв 2015.

Статус темы:
Закрыта.
  1. Автор темы
    TheBlacK.Z

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

    Баллы:
    78
    Идея проста, мне интересно как можно сделать активацию Event'а при ПКМ на бумаге или другом предмете, но вся особенность в том что Ивент будет работать только если бумага или другой предмет имеет имя или подпись к примеру 'test' а если таковой нет ивент не будет активироваться.
     
  2. Хостинг MineCraft
    <
  3. serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
    А кто запрещает вам сделать проверку в обработчике?
     
  4. Автор темы
    TheBlacK.Z

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

    Баллы:
    78
    не особо допираю как это сделать -_-
     
  5. AxmeD

    AxmeD Старожил Пользователь

    Баллы:
    103
    Skype:
    ahmed136323
    Проверка в лоре


    Код:
    for(int i=0;  i<itemlore.getSize(); i++)
    {
        if(itemlore.get(i).contains("test")
        return true;
    }
     
  6. serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
    О боже, зачем это? И почему вы не используете foreach?
     
  7. Автор темы
    TheBlacK.Z

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

    Баллы:
    78
    Через getItemMeta пройдет такой трюк?[DOUBLEPOST=1422121545,1422121328][/DOUBLEPOST]Все! Написал рабочий способ.
    Код:
                ItemStack item = player.getItemInHand();
                if (item != null) {
                ItemMeta meta = item.getItemMeta();
                if (meta != null) {
                List<String> lore = meta.getLore();
                if (lore != null) {
                if (lore.toString().contains("test")) {
                sender.sendMessage("YES");
                } else {
                    sender.sendMessage("NO!");
                }
                }
                }
                }
    
     
Статус темы:
Закрыта.

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