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

Помогите Отменить гравитацию для песка

Тема в разделе "Разработка плагинов для новичков", создана пользователем DmitriyMX, 16 июн 2012.

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

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

    Баллы:
    153
    Skype:
    dmn550
    Доброго времени суток, разработчики и просто умные люди:)

    Сталкнулся тут с проблемой отмены "физики" для песка/гравия, но вылучается какая-то чушь. Написал вот такой простой код:
    Код:
    @EventHandler
    public void onBlockPhysics(BlockPhysicsEvent event){
      event.setCancelled(true);
    }
    Казалось бы, куда уже проще: любое физическое событие "выключается". А вот фигушки! Песок продолжает падать как и раньше(т.е. ставлю песок, а он падает вниз).

    Есть идеи, почему так происходит и как всё таки "отключить графитацию" для песка и/или гравия?

    для особо умных...
    - не мучайся и возьми {имя_плагина}, там это реализовано!
    Спасибо, но я здесь по вопросу разработки, а не по поиску плагинов.

    - конфликт с другими плагинами
    Какие еще "другие плагины", когда на локальном сервере только один плагин работает?

    - Гугл в помощь
    Если бы Великий Google ответил бы мне на этот вопрос, не стал бы здесь просить помощи

    - моды мешают
    Исключено. Чистый CraftBukkit 1.2.5-R4.0
     
  2. Хостинг MineCraft
    <
  3. mrKrot

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

    Баллы:
    68
    Куда код пихал? Редактировать скорее всего надо сам блок в клиенте...
     
  4. Автор темы
    DmitriyMX

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

    Баллы:
    153
    Skype:
    dmn550
    Нене... в том же WG же есть отмена физики(в конфигах смотрел):confused:
     
  5. mrKrot

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

    Баллы:
    68
    А там эта настройка помогает? Физика отключается?Кстати когда новые уроки?
     
  6. Автор темы
    DmitriyMX

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

    Баллы:
    153
    Skype:
    dmn550
    :confused:..... :eek:.....:oops:....:) а хрен его знает)))) Надо бы проверить))

    Новые уроки скоро будут.
     
  7. jkl1234

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

    Баллы:
    103
    Skype:
    armennarkoman
    Проблемма решена?
     
  8. Автор темы
    DmitriyMX

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

    Баллы:
    153
    Skype:
    dmn550
    В WG тоже не работает(как надо). Сейчас ковыряюсь в кишках сервера(CraftBukkit/BukkitAPI) пытаясь найти причину... Предлагаете закрыть тему?
     
  9. jkl1234

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

    Баллы:
    103
    Skype:
    armennarkoman
    Можно попробовать прописать что-то вроде этого:
    Код:
    @EventHandler()
    public void onEntityEvent(EntityEvent e){
        if(e.getEntity.equals(entity.FallingSand)e.setCancelled(true);
    }
     
  10. Автор темы
    DmitriyMX

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

    Баллы:
    153
    Skype:
    dmn550
    Код:
    entity.FallingSand
    Это из какого импорта?

    Код:
    e.setCancelled(true);
    У EntityEvent нет метода setCancelled

    Плюс ко всему на событие EntityEvent нельзя поставить обработчик. Обычным способом(сейчас пытаюсь через костыль)
     
  11. jkl1234

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

    Баллы:
    103
    Skype:
    armennarkoman
    :oops:Что-то я не то написал
     
  12. Малик

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

    Баллы:
    63
    Имя в Minecraft:
    Malik
    можно перезапустить сервер
     
  13. Автор темы
    DmitriyMX

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

    Баллы:
    153
    Skype:
    dmn550
    :confused: Мальчик, ты тему читал или топиком ошибся?
     
    Mik1313 нравится это.
  14. Малик

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

    Баллы:
    63
    Имя в Minecraft:
    Malik
    physics:
    no-physics-gravel: false
    no-physics-sand: false
    allow-portal-anywhere: false
    disable-water-damage-blocks:
    заменяем на:
    physics:
    no-physics-gravel: true
    no-physics-sand: false
    allow-portal-anywhere: false
    disable-water-damage-blocks:
     
  15. Малик

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

    Баллы:
    63
    Имя в Minecraft:
    Malik
    находится в папке worldguard файл config.yml
     
  16. Ission

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

    Баллы:
    173
    Skype:
    lokivava
    Пролистал забугорные форумы - никак. Только через костыль из камня(например). Отправлять нужно при установке блока, а через пару таков восстанавливать.
     
  17. Автор темы
    DmitriyMX

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

    Баллы:
    153
    Skype:
    dmn550
    Ты сам проверял? Нет? Вот и не умничай. И читай внимательнее: при установки блока, а не когда блок уже поставлен, балбес...:fp:

    Не, это всё таки костыль, при чем не качественный:), но спасибо за попытку помочь
     
    IstominHero нравится это.
  18. Ission

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

    Баллы:
    173
    Skype:
    lokivava
    Можно ещё как-то попытаться. Допустим создать свои события...
    P.S. А по моему это косяк самого craftbukkit'а.
     
    Оригинало_о нравится это.
  19. mrKrot

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

    Баллы:
    68
    Как вариант под каждым поставленным блоком песка ставить невидимый блок...
     
  20. Автор темы
    DmitriyMX

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

    Баллы:
    153
    Skype:
    dmn550
    Это и есть косяк буккита (даже где-то наодил жалобу в багтрекере), который я нашел(нашел багнутый код) и сейчас пытаюсь исправить.

    В связи с этим, тему можно закрывать.
     
    zuma2 нравится это.
  21. mrKrot

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

    Баллы:
    68
    По моему если прочитать тему, то можно понять что такой способ не подходит.
     
    Vedroyder и slavik123123123 нравится это.
Статус темы:
Закрыта.

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