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

WorldGuardAPI - эвент на изменение метадаты по ПКМ

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

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

    mr_lionovsky Активный участник

    Баллы:
    63
    Имя в Minecraft:
    lionovsky
    Господа, помогите с решением задачи.

    Нужно сделать так, чтоб юзер мог менять метадату определённого блока при ПКМ.
    Взял в качестве помощника сей плагин - https://dev.bukkit.org/projects/worldguard-custom-flags

    Пишу по мануалу, вот BlockDamageListener


    Код:
        public void onPlayerUse(PlayerInteractEvent event) {
         
            final WorldGuardPlugin wgp = plugin.getWGP();
            final Player player = event.getPlayer();
            final Block block = event.getClickedBlock();
            final Location loc = block.getLocation();
            final World world = block.getWorld();
            final Material material = block.getType();
            final State state = wgp.getRegionManager(world).getApplicableRegions(loc).getFlag(plugin.FLAG_BLOCKCLICK);
         
            if (event.getAction() == Action.RIGHT_CLICK_BLOCK) {
                if (state != null
                        && (state == State.DENY
                        || (!player.isOp()
                        && !wgp.canBuild(player, block)))) {
                            //Тут будут блоки, что нужно поменять
                            } else {
                        block.setTypeId(Material.AIR.getId());
                    }
                    event.setCancelled(true);
                }
            }
        }
    }
    Однако, проблема в том, что wgp.getRegionManager(world).getApplicableRegions(loc) подчёркивает красным, мол, где-то я ошибся.
    В чём - понять не могу, так как эклипс молчит, а все либы все подключены нормально.
     
  2. Хостинг MineCraft
    <
  3. Exception_Prototype

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

    Баллы:
    46
    Посмотри что этот метод возвращает. Он точно не то что у тебя в коде возвращает.
    [​IMG]
     
  4. Автор темы
    mr_lionovsky

    mr_lionovsky Активный участник

    Баллы:
    63
    Имя в Minecraft:
    lionovsky
    Вот, что вижу по get
    [​IMG]
     
  5. Exception_Prototype

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

    Баллы:
    46
    А, я код не прокрутил дальше. Что ты хочешь получить напиши
     

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