Войти или зарегистрироваться

Помогите Не работает event!

  • Автор темы Автор темы Rfg0
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

Rfg0

Активный участник
Пользователь
Баллы
76
Имя в Minecraft
Rfg0
Не работает проверка типа блока!
JavaScript:
    @SuppressWarnings("deprecation")
    @EventHandler
    public void onBlockIgnite(BlockIgniteEvent e){
        Player p = e.getPlayer();
        Block b = e.getBlock();
        p.sendMessage("1");
        if (e.getCause() == IgniteCause.FLINT_AND_STEEL){
            p.sendMessage("2");
            if(b.getType() == Material.NETHERRACK){   
                p.sendMessage(ChatColor.RED + "Босс вызван!");
                Location l = b.getLocation();
                World w = l.getWorld();
                w.strikeLightning(l);
                LivingEntity spawnEntity = (LivingEntity) b.getWorld().spawnEntity(l, EntityType.ZOMBIE);
                spawnEntity.setMaxHealth(2000);
                spawnEntity.setCustomName(ChatColor.RED + "Zombie Boss");
                spawnEntity.setCanPickupItems(true);
                spawnEntity.setCustomNameVisible(true);
                spawnEntity.setHealth(2000);
            }
        }
    }
Когда поджигаю камень пишется в чат "1","2" ну собственно как и надо. А когда поджигаю незеррак. Опять же пишутся две цифры "1", "2" и всё. Если я просто пишу так:
JavaScript:
    @SuppressWarnings("deprecation")
    @EventHandler
    public void onBlockIgnite(BlockIgniteEvent e){
        Player p = e.getPlayer();
        Block b = e.getBlock();   
        p.sendMessage(ChatColor.RED + "Босс вызван!");
        Location l = b.getLocation();
        World w = l.getWorld();
        w.strikeLightning(l);
        LivingEntity spawnEntity = (LivingEntity) b.getWorld().spawnEntity(l, EntityType.ZOMBIE);
        spawnEntity.setMaxHealth(2000);
        spawnEntity.setCustomName(ChatColor.RED + "Zombie Boss");
        spawnEntity.setCanPickupItems(true);
        spawnEntity.setCustomNameVisible(true);
        spawnEntity.setHealth(2000);
            
    }
То все работает.
Подскажите как исправить.
 
На сколько я помню -- BlockIgniteEvent.getBlock() -- возвращает блок, в котором должен появиться огонь. Чтобы посмотреть какой блок под ним горит нужно использовать BlockIgniteEvent.getBlock().getRelative(0,-1,0);
 
Спасибо!
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх