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

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

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

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

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

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

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

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

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

    Баллы:
    76
    Ослеживаются EntityDamageByEntiyEvent (ЛКМ) и EntityInteractEvent (ПКМ)
     
  5. Автор темы
    iRiper

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

    Баллы:
    88
    можно подробнее? вообще не шарю в этом, поможешь?[DOUBLEPOST=1480327548,1480327517][/DOUBLEPOST]
    ну или примерно помоги пожалуйста это осуществить[DOUBLEPOST=1480407033][/DOUBLEPOST]up
     
  6. RikkiLook

    RikkiLook Старожил

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

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

    Баллы:
    88
  8. Dan_Ender

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

    Баллы:
    78
    Имя в Minecraft:
    Dan_Ender
    Лови, и радуйся жизни))

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

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

    Баллы:
    173
    Skype:
    alexandr0116
    Проверку на игрока забыл.
    Код:
        @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
  10. GoodCoder

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

    Баллы:
    76
    Проверку на null забыл.
     
  11. alexandrage

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

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

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

    Баллы:
    76
    Если в руке игрока ничего нет, то что будет?
     
  13. alexandrage

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

    Баллы:
    173
    Skype:
    alexandr0116
    Воздух будет.
     
  14. GoodCoder

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

    Баллы:
    76
    Инвентари полны магии. Может воздух быть, может null.
     
  15. alexandrage

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

    Баллы:
    173
    Skype:
    alexandr0116
    Инвентари да, руки нет. Мистика же.
    P.s. То чувство, когда пытаешься положить в руку null и получаешь нпе :D.
    UP В новых версиях опять в руках может быть null)
     
    Последнее редактирование: 9 ноя 2020
  16. Super4

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

    Баллы:
    16
    Имя в Minecraft:
    Super4
    Ребят! Прошу помогите, как создать скрипт для плагина script, чтобы когда игрок прописывай команду держа при этом предмет в руке любой то этот предмет удалялся.
     
  17. alexandrage

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

    Баллы:
    173
    Skype:
    alexandr0116
    Никогда не юзал такие костыли, извиняй, только bukkit api.
     

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