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

Помогите Как узнать предмет в руке атакующего

Тема в разделе "Разработка плагинов для новичков", создана пользователем KvaytG, 18 сен 2020.

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

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

    Баллы:
    61
    Имя в Minecraft:
    KvaytG
    Вообщем, у меня есть вот такой код

    @EventHandler
    public void pvp(EntityDamageByEntityEvent e){
    Entity p = e.getDamager();
    if (p.getItemInHand().getType() == Material.IRON_SWORD){
    //тута код
    }
    }

    Но таким способом я не могу получить предмет в руке атакующего (атакующего кого-угодно)
    Я пробовал вместо EntityDamageByEntityEvent делать PlayerItemDamageEvent.
    Нифига не получилось. Короче, что делать?
     
  2. Хостинг MineCraft
    <
  3. qbert

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

    Баллы:
    38
    Что не работает? Если ошибка то кинь ее
     
  4. alexandrage

    alexandrage Администратор

    Баллы:
    173
    Skype:
    alexandr0116
    Лучше забить, сейчас с 2мя руками это проблемно определить.
     
  5. Soyer

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

    Баллы:
    78
    Проверять по обоим рукам.
     
  6. Goldfinch

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

    Баллы:
    61
    Имя в Minecraft:
    Goldfinchx
    Не знаю, это ли тебе нужно, но я сделал получение предмета в руках атакующего, через его каст как игрока.
    Соответственно, если тебе нужен не игрок, а какой-то моб, то тебе нужно кастить атакующего типом этого моба.

    Код:
    @EventHandler
        public void pvp (EntityDamageByEntityEvent e) {
            Player damager = (Player) e.getDamager();
            damager.getInventory().getItemInMainHand().getType();
          
        }
     
  7. _MRDen3000YT_

    _MRDen3000YT_ Участник

    Баллы:
    33
    Имя в Minecraft:
    _MRDen3000YT_
    Сначала надо проверит является ли атакующий игроком, инача будут castexeption'ы
     

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