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

Помогите Как работать с блоками

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

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

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

    Баллы:
    103
    Skype:
    gta-ilya
    Имя в Minecraft:
    SuperDoker
    Как поставить блок, убрать и т.п? Скажите пожалуйста
     
  2. Den_Abr

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

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    block.setType(Material) - поставить блок
    block.breakNaturally() - сломать натурально, как игрок, или можно через setType(Material.AIR)
     
  3. Автор темы
    _DokeR_

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

    Баллы:
    103
    Skype:
    gta-ilya
    Имя в Minecraft:
    SuperDoker
    Можно пример кода?
     
  4. Den_Abr

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

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Я дал основные методы, что ещё не понятно то?
     
  5. Автор темы
    _DokeR_

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

    Баллы:
    103
    Skype:
    gta-ilya
    Имя в Minecraft:
    SuperDoker
    Просто не много не получается, block это переменная которая содержит блок или что ? дай код пожалуйста
     
  6. Den_Abr

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

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    block это переменная типа Block, можно получить из Location
     
  7. JustBlender

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

    Баллы:
    123
    Skype:
    justblender
    Имя в Minecraft:
    JustBlender
    Ну а чего не понятного? Приведу пример.
    1. Узнаем, что нам надо, в нашем случае энтити снежок. (Сначала создай эвент, у меня это будет ProjectileHitEvent)
    Делается это просто, if(event.getEntityType() == EntityType.SNOWBALL){
    2. Получаем "локацию". event.getEntity().getLocation()
    3. Делаем, что хотим теперь с этим, например, проиграем эффект через PlayEffectAPI
    Вот пример
    Код:
        @EventHandler
        public void projectile(ProjectileHitEvent event){
            if(event.getEntityType() == EntityType.SNOWBALL){
                Location currentlyLocation = event.getEntity().getLocation();
                PlayEffect.play(VisualEffect.FIREWORK, currentlyLocation, "");
            }
            }
    PS. Знаю что это тебе не нужно
     
    Последнее редактирование: 23 янв 2014
    ql_Nik_lp и Shockwave нравится это.
  8. ql_Nik_lp

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

    Баллы:
    173
    Skype:
    q-nik-p
    Имя в Minecraft:
    ql_Nik_lp

    Зачем? Ему все равно это не поможет.
     
    Hilgert и ptnk нравится это.
  9. biomer_

    biomer_ Новичок

    Баллы:
    6
    Имя в Minecraft:
    biomer_
    Как инициализировать блок?
    Block block = new ?
    (Например камень)
    Для тех кто не понял это никак нельзя сделать, мы получаем блок по координатам:

    Код:
    World world = Bukkit.getWorld("world"); // Берём нужный мир
            double x = 0; // Координаты X
            double y = 0; // Координаты Y
            double z = 0; // Координаты Z
            Location location = new Location(world, x, y, z); // Создаём объект локация
            Block block = location.getBlock(); // Поучаем блок на этих координатах
            // Делаем что хоти с объектом блок
    Инфа о том что можно делать с блоками: https://jd.bukkit.org/org/bukkit/block/Block.html
     
  10. OJIEKCAHDP

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

    Баллы:
    76
    Имя в Minecraft:
    OJIEKCAHDP
    А World#getBlockAt(x, y, z) - шутка какая-то? Зачем локацию создавать

    а ещё, тема 2014 года
     
  11. 0xLairon1

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

    Баллы:
    76
    Имя в Minecraft:
    0xLairon1
    Мб хватит поднимать древние темы?
     

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