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

Помогите Узнать ID соседнего блока.

Discussion in 'Разработка плагинов для новичков' started by Iggi, Oct 7, 2013.

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

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

    Trophy Points:
    103
    Имя в Minecraft:
    iggi666
    Здравствуйте.
    Мне надо, чтобы при ставке одно блока проверялись его соседи.
    Как зная координаты блока, который ставят, определить какой блок стоит на координатах, которые я задам.
    Координаты блока, который ставят я определить то могу, а вот дальше уже зная их, узнать ID блоков на координате + 1 у меня не получается(
     
    KoBoT likes this.
  2. Хостинг MineCraft
    <
  3. Ission

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

    Trophy Points:
    173
    Skype:
    lokivava
    Block.getRelative(смещение_по_X,смещение_по_Y,смещение_по_Z).getTypeId();
     
  4. Автор темы
    Iggi

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

    Trophy Points:
    103
    Имя в Minecraft:
    iggi666
    Не подскажете что за ошибка?)
    Вот код:
    [​IMG]
    Вот ошибка: [​IMG]
     
    KoBoT likes this.
  5. Ission

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

    Trophy Points:
    173
    Skype:
    lokivava
    Судя по тому коду, что дан, я могу сказать несколько вещей:
    1. block может быть не определён. Попробуйте ввести Block block = e.getBlockPlaced();
    2. Смещение означает относительные координаты, где координаты 0, 0, 0 являются установленным блоком, а координаты 0, 1, 0 блоком над ним.
     
    Xakep_SDK, Iggi and Den_Abr like this.
  6. Автор темы
    Iggi

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

    Trophy Points:
    103
    Имя в Minecraft:
    iggi666
    Все, разобрался, все работает. Спасибо большое.
    А как получить ID блока из мода? Если я ставлю блок, например глоустон, а рядом с ним ставлю провод, то block.getRelative(1 ,0,0).getTypeId() возвращает 228.
    НО: если я ставлю провод и делаю block.getTypeId(), то возвращается 0.
    если я ставлю провод и делаю block.getRelative(0,0,0).getTypeId(), то тоже возвращается 0.
    Как мне поймать момент, когда поставили провод?[DOUBLEPOST=1381154280,1381145114][/DOUBLEPOST]ЯДРО: MCPC
     
    KoBoT likes this.
  7. misterzym

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

    Trophy Points:
    63
    Имя в Minecraft:
    Misterzym
    Аналогичный вопрос интересует, сам когда-то делал такое, но методом подключения импорта уже не из бакита, а из net.minecraft. - то есть создавал функции которые оперировали с блоками как мод, но я думаю что это выглядело крайне странно и стремно, может быть есть способ средствами бакита получить ID блока из мода?
     
  8. Автор темы
    Iggi

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

    Trophy Points:
    103
    Имя в Minecraft:
    iggi666
    Ну хоть какие-нибудь варианты есть?
     
    KoBoT likes this.
  9. Shevchik

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

    Trophy Points:
    173
    Имя в Minecraft:
    _Shevchik_
    BlockFace, но спрашивается нахрена такой гемор, они ведь блоки потом могут тупо поршнем подвинуть, запрещать ставить что-либо рядом друг с другом - бесполезная затея.
     
  10. Den_Abr

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

    Trophy Points:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Сдвиги же тоже можно проверить
     
  11. Shevchik

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

    Trophy Points:
    173
    Имя в Minecraft:
    _Shevchik_
    Не всегда, есть пара хитрых трюков основанных на быстрых пульсарах, их не всегда можно отследить, даже несмотря на фикс в bukkit.
     
  12. Den_Abr

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

    Trophy Points:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Шедулить проверку координат:D
     
  13. Автор темы
    Iggi

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

    Trophy Points:
    103
    Имя в Minecraft:
    iggi666
    Конкретно провода поршнем не сдвинуть.
     
    KoBoT, Vedroyder and slavik123123123 like this.

Share This Page