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

Эвент затаптывания растений

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

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

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

    Баллы:
    103
    Добрый день. Никто не знает, какой именно эвент вызывается при затаптывании пшеницы, арбузов и прочих растений? В документации ничего похожего не нашел.
     
  2. Хостинг MineCraft
    <
  3. Jampire

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

    Баллы:
    173
    Skype:
    jampire-h
    Имя в Minecraft:
    Jampire
    Что-то мне подсказывает, что нужно думать в направлении BlockBreakEvent / PlayerMoveEvent
     
  4. BrilZliaN

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

    Баллы:
    88
    Skype:
    brillianikz
    Имя в Minecraft:
    BrilZliaN
    PlayerInteractEvent.
    (гуглится по bukkit trampling event)
     
  5. Автор темы
    akke

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

    Баллы:
    103
    совсем не то. interact вызывается если игрок куда-то кликает, тут другое нужно
     
  6. mayor123

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

    Баллы:
    173
    Может BlockFadeEvent?
     
    MineMan910 нравится это.
  7. BrilZliaN

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

    Баллы:
    88
    Skype:
    brillianikz
    Имя в Minecraft:
    BrilZliaN
    Нет, ты не прав.
    Это то самое.
    Код:
    public void onPlayerInteract(PlayerInteractEvent event)
                {
                    if(event.getAction() == Action.PHYSICAL)
                    {
                        Block block = event.getClickedBlock();
                     
                        if(block == null)
                            return;
                     
                        int blockType = block.getTypeId();
                     
                        if(blockType == Material.SOIL.getId())
                        {
                            event.setUseInteractedBlock(org.bukkit.event.Event.Result.DENY);
                            event.setCancelled(true);
                         
                            block.setTypeId(blockType);
                            block.setData(block.getData());
                        }
                    }
                }
    http://forums.bukkit.org/threads/event-for-crop-trample.53151/
     
    Zeluboba и akke нравится это.
  8. BrilZliaN

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

    Баллы:
    88
    Skype:
    brillianikz
    Имя в Minecraft:
    BrilZliaN
    • Snow melting due to being near a light source.
    • Ice melting due to being near a light source.
     
  9. Автор темы
    akke

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

    Баллы:
    103
    Действительно, это то что нужно. Большое спасибо
     
Статус темы:
Закрыта.

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