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

Взаимодействие с лошадью

Тема в разделе "[Архив] Помощь", создана пользователем Tyzun, 25 июл 2013.

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

    Tyzun Старожил

    Баллы:
    153
    Skype:
    tyzun1997
    Имя в Minecraft:
    _Tyzun_
    Как запретить ложить вещи в инвертарь осла, пробовал разные методы - невыходит, искал на зарубежных ресурсах JavaDevelopment не нашел(думаю так как лошадь ввели в 1,6, а те ресурсы специализируются по 1,5).

    Собственно нада запретить жать Е если ты на лошаде.
     
  2. Хостинг MineCraft
    <
  3. Богдан Малышев

    Богдан Малышев Старожил Пользователь

    Баллы:
    103
    Взаимодействие с лошадью карается законом.
     
    DavidShabaev и Den_Abr нравится это.
  4. Автор темы
    Tyzun

    Tyzun Старожил

    Баллы:
    153
    Skype:
    tyzun1997
    Имя в Minecraft:
    _Tyzun_
    Не, я действительно нуждаюсь в ответе на вопрос выше.
    :D
    Нет, я нуждаюсь в ответе на вопрос выше.
     
  5. Den_Abr

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

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Запрещать InventoryClickEvent в инвентаре осла
     
    Official_dizziel и Tyzun нравится это.
  6. Автор темы
    Tyzun

    Tyzun Старожил

    Баллы:
    153
    Skype:
    tyzun1997
    Имя в Minecraft:
    _Tyzun_
    Уже ненада, зделал
    @EventHandler
    public void inventoryProtection(InventoryOpenEvent event) {
    if(event.getInventory() instanceof HorseInventory){
    event.setCancelled(true);
    }
    и все
     
  7. Den_Abr

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

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Я то всё думал, почему я считал InventoryOpenEvent нерабочим.. Он только с открытием инвентаря игрока не работает..
     
    Official_dizziel и Tyzun нравится это.
  8. Автор темы
    Tyzun

    Tyzun Старожил

    Баллы:
    153
    Skype:
    tyzun1997
    Имя в Minecraft:
    _Tyzun_
    Нет, все же тот метод что я придумал неподоходит, нада чтоб можно было надевать броню и седло
     
  9. Den_Abr

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

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Тут то тебе и поможет InventoryClickEvent, проверяй слоты при клике
     
  10. Автор темы
    Tyzun

    Tyzun Старожил

    Баллы:
    153
    Skype:
    tyzun1997
    Имя в Minecraft:
    _Tyzun_
    а как же перемещение шифтом?
     
  11. Den_Abr

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

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Ну тут я лучше ничего не знаю, кроме как отмены его
     
    Оригинало_о, Official_dizziel и Tyzun нравится это.
  12. Автор темы
    Tyzun

    Tyzun Старожил

    Баллы:
    153
    Skype:
    tyzun1997
    Имя в Minecraft:
    _Tyzun_
    Делаю вот так
    @EventHandler
    public void horse(InventoryClickEvent event) {
    HumanEntity pl1 = event.getWhoClicked();
    if (event.getInventory() instanceof HorseInventory && (hasPerm2(pl1, "nc.horse"))){
    if(!(event.getCursor().getType() == Material.SADDLE || !(event.getCursor().getType() == Material.IRON_BARDING) || !(event.getCursor().getType() == Material.GOLD_BARDING)|| !(event.getCursor().getType() == Material.DIAMOND_BARDING && event.getRawSlot() > 1))){
    event.setCancelled(true);
    }
    }
    }
    никакого результата

    Делаю вот так:
    @EventHandler
    public void horse(InventoryClickEvent event) {
    HumanEntity pl1 = event.getWhoClicked();
    if (event.getInventory() instanceof HorseInventory && event.getRawSlot() > 1 && (hasPerm2(pl1, "nc.horse"))){

    event.setCancelled(true);
    }
    }
    блочи при попытке перетаскать чтонить в инвертарь коня(даже блочит при попытке взять чтонибудь в курсор), хотя по идее слоты с айди 0 и 1(седло и бронь) должно не блочить
     
  13. Den_Abr

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

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Сделай отладку, проверь, какие номера у слотов, может ты не те слоты проверяешь
     
    Official_dizziel и Tyzun нравится это.
  14. Автор темы
    Tyzun

    Tyzun Старожил

    Баллы:
    153
    Skype:
    tyzun1997
    Имя в Minecraft:
    _Tyzun_
    на зарубежных ресурсах пишут что те, что 0 и 1 это седло и бронь. Да и смысл в этом если оно блочит не положить в инвертарь коня вещь, а блочит взять вещь из своего инвертаря если открит инвертарь коня.
     
  15. Den_Abr

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

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Я бы проверил, будь при мне эклипс и клиент 1.6, а так не могу больше наугад говорить
     
    Official_dizziel и Tyzun нравится это.
  16. Code

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

    Баллы:
    123
    Имя в Minecraft:
    _Gizmo

    замени или на и. если это не седло и не броня, то отменять. а то у тебя если это седло, то это не броня и все-равно отменяется.
     
    Оригинало_о и Tyzun нравится это.
  17. Автор темы
    Tyzun

    Tyzun Старожил

    Баллы:
    153
    Skype:
    tyzun1997
    Имя в Minecraft:
    _Tyzun_
    Код:
      @EventHandler
          public void horse(InventoryClickEvent event) {
              Inventory inv = event.getInventory();
                if (inv instanceof HorseInventory) {
                        if (event.getCursor().getType() != Material.SADDLE | event.getCursor().getType() != Material.IRON_BARDING | event.getCursor().getType() != Material.GOLD_BARDING | event.getCursor().getType() != Material.DIAMOND_BARDING) {
                            event.setCancelled(true);
                        }
               
              
    Зделал вот так, всеравно при попытке переместить что нибудь в инвертарь лошади, как только мышкой кляцаеш на вещь она возвращается обратно, тогда как надо чтоб этого не происходило с седлом и броней.
     
  18. Code

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

    Баллы:
    123
    Имя в Minecraft:
    _Gizmo
    ты по сути ничего не поменял. (разве что убрал сумасшедшее расположение скобочек, на которое я не обратил внимания). замени символ или на символ и (&&). тогда логически будет верно.
     
    Tyzun нравится это.
  19. Автор темы
    Tyzun

    Tyzun Старожил

    Баллы:
    153
    Skype:
    tyzun1997
    Имя в Minecraft:
    _Tyzun_
    заменил | на &&, никакого результата
     
  20. azat4610

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

    Баллы:
    173
  21. Автор темы
    Tyzun

    Tyzun Старожил

    Баллы:
    153
    Skype:
    tyzun1997
    Имя в Minecraft:
    _Tyzun_
    зачем мне он, мне нада чтоб можно было запрещать ложить определенной группе игроков вещи в инвертарь лошади
     
    ВремяПриключений нравится это.

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