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

Помогите Партиклы

Discussion in 'Разработка плагинов для новичков' started by AlexMor, Jan 2, 2017.

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

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

    Trophy Points:
    66
    Всем здравствуйте и с новым годом, надеюсь все покушали салат оливье, а кто еще не успел, что странно, сейчас же идет и ест!
    Вопрос очень краток:
    Как создать партиклы по координатам, но чтоб они были выше на 1 блок чем уровень твердых блоков (чтоб не спавнились в земле).
    Заранее спасибо знающим людям))
     
  2. Хостинг MineCraft
    <
  3. Автор темы
    AlexMor

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

    Trophy Points:
    66
    И на счет гугла, я нашел тему про партиклы но не понятно, а про проверку твердый ли блок по координатам я вообще не нашел
     
  4. Fenix78563

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

    Trophy Points:
    76
    Имя в Minecraft:
    Blc_Dragon
    Code:
    World w; //не забываем его инициализировать например Bukkit.getServer().getWorld("world");
    //где то задал локацию location
    //проверяем локацию
    if (location.getBlock().getType()==Material.AIR){
       w.spawnParticle(Particle.Название, location - локация, int/*у разных партиклов отвечает за разное*/);
    }
    написал от руки, так что проверяй синтаксис
    а еще используй поиск, недавно апалась подобная тема
     
  5. Lilian_solo

    Lilian_solo Новичок Пользователь Заблокирован

    Trophy Points:
    21
    Имя в Minecraft:
    CoreKolas
    Если хочешь проверить блок твёрдый или нет, проверяй его на блок AIR.
     
  6. Sonicxd2

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

    Trophy Points:
    76
    Как то так:
    Code:
        public void action(Player p){
            int x=p.getLocation().getBlockX();
            int z=p.getLocation().getBlockZ();
            int y=p.getLocation().getBlockY();
            for(;y<255;y++){
                if(isAllowedBlock(p.getWorld().getBlockAt(x, y, z))) break;
            }
            p.spawnParticle(Particle.PORTAL, new Location(p.getWorld(), x, y, z), 0);
        }
    
        public boolean isAllowedBlock(Block b){
            return (b.getType()==Material.AIR) || (b.isLiquid());
        }
     
  7. Автор темы
    AlexMor

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

    Trophy Points:
    66
    Круто спасибо!!!
     
  8. alexandrage

    alexandrage Администратор

    Trophy Points:
    173
    Skype:
    alexandr0116
    А ничего, что вода и лава не AIR ?
     
  9. Автор темы
    AlexMor

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

    Trophy Points:
    66
    В коде есть привер с типом Liquid, это вроде вода и лава
     

Share This Page