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

Помогите Выполнение команды предметом при клике на игрока

Тема в разделе "Помощь", создана пользователем iRiper, 27 ноя 2016.

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

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

    Баллы:
    88
    Привет всем. Недавно на одном сервере увидел такую вещь:
    Дается игроку ифритовая палочка, которая может кидать дуэль другим игрокам на которых кликаешь.
    Как, я понял, выполняется команда /1vs1 duel name, но как эта ифритовая палочка подставляет туда ник игрока, может-кто-то знает как это реализовать??
     
  2. arrow360

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

    Баллы:
    66
    Имя в Minecraft:
    SilverMoon1
    Возможно реализовано с помощью Plugin'a ChestCommands. Но и у нужен сам плагин на 1vs1(Плагин можно найти на bukkit).
     
  3. Автор темы
    iRiper

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

    Баллы:
    88
    можно подробнее? вообще не шарю в этом, поможешь?
    ну или примерно помоги пожалуйста это осуществить
    up
     
  4. RikkiLook

    RikkiLook Модератор

    Баллы:
    173
  5. Автор темы
    iRiper

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

    Баллы:
    88
  6. Dan_Ender

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

    Баллы:
    76
    Лови, и радуйся жизни))

    Код:
    @EventHandler
        public void onentint(PlayerInteractEntityEvent e) {
            Player p = e.getPlayer();
            if (p.getItemInHand().getType()==Material.BLAZE_ROD) {
                p.performCommand("yourCmdName" + "" + e.getRightClicked().getName());
            }
        }
     
  7. alexandrage

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

    Баллы:
    173
    Проверку на игрока забыл.
    Код:
        @EventHandler
        public void on(PlayerInteractEntityEvent e) {
            if(e.getRightClicked().getType() == EntityType.PLAYER && e.getPlayer().getInventory().getItemInMainHand().getType() == Material.BLAZE_ROD)  {
                e.getPlayer().performCommand("1vs1 duel "+e.getRightClicked().getName());
            }
        }
    Собстно сам шаблон для плагина тут https://github.com/alexandrage/Example
     
    Последнее редактирование: 3 дек 2016
  8. alexandrage

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

    Баллы:
    173
    Погоди, разве ентити может быть нулл? Это же PlayerInteractEntityEvent.
     
  9. alexandrage

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

    Баллы:
    173
    Воздух будет.
     
  10. alexandrage

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

    Баллы:
    173
    Инвентари да, руки нет. Мистика же.
    P.s. То чувство, когда пытаешься положить в руку null и получаешь нпе :D.
     

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