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

Помогите Кто поджег динамит

Тема в разделе "Разработка плагинов для новичков", создана пользователем Akultist, 31 май 2018.

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

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

    Баллы:
    46
    Можно ли узнать кто поджег динамит? Мне нужно сделать что когда игрок поджег динамит, динамит взорвался и потом узнать какие блоки динамит сломал и узнать кто его поджег. Если кто не понял, мне нужно примерно как на vimeworld на sw (skywars), игрок поджигает динамит, он взрывается, сносит руду например redstone, и игроку начисляется хп. Именно тому кто взорвал динамит.
     
  2. Cool_boy

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

    Баллы:
    96
    Имя в Minecraft:
    prettydude
    Ловить ивент взрыва, если взорвался динамит - получаем TNTPrimed, используем getSource() и получаем то что подожгло его.
     
  3. Автор темы
    Akultist

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

    Баллы:
    46
    как получить tntprimed? Пытался так:
    TNTPrimed tnt = (TNTPrimed) e.getEntity();
    Но выдает ошибку
     
  4. Автор темы
    Akultist

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

    Баллы:
    46
  5. HunterGaming

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

    Баллы:
    96
    Имя в Minecraft:
    sqdFendy
    ну тип, нужно проверить изначально, является этот Entity динамитом, если же является то уже делать
    TNTPrimed tnt = (TNTPrimed) e.getEntity();
     
  6. Slavkaa

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

    Баллы:
    76
    Имя в Minecraft:
    Slavok2001
    PHP:
    if(e.getEntity() instanceof TNTPrimed) {
    //TODO
    }
     
  7. Автор темы
    Akultist

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

    Баллы:
    46
    я и так проверяют.
     
  8. Автор темы
    Akultist

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

    Баллы:
    46
    Я понял в чем была причина ошибки.. Я взрывал tnt с помощью красного блока, а не с помощью зажигалки. Можно как то отловить все тоже самое что было выше, только если игрок взорвет динамит не зажигалкой а красным блоком?
     
  9. Cool_boy

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

    Баллы:
    96
    Имя в Minecraft:
    prettydude
    В skywars обычно нету красных блоков. Здесь уже надо костылить, записывать где-то в плагине игроков которые поставили блок, либо в самом блоке через метадату записывать того кто его поставил.
     
  10. Автор темы
    Akultist

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

    Баллы:
    46
    А как мне теперь передать другому динамиту (который взорвался от первого динамита) владельца ? А то с одним все работает, но когда другие от первого подрывается у них владельца нет..
     
  11. Автор темы
    Akultist

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

    Баллы:
    46

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