Помогите Проверка привата

adodvstudios

Активный участник
Пользователь
Баллы
76
Имя в Minecraft
Jenka20091
Как мне в моём плагине сделать проверку на приват, то есть player interact event я сделал с помощью палки, а вот как сделать выполнение команды rg info без bukkit.dispatchCommand незнаю
 
WorldGuard API в помощь. Читай доки
 
PHP:
public static boolean inRegion(Location loc)
{
    WorldGuardPlugin guard = getWorldGuard();
    Vector v = BukkitUtil.toVector(loc);
    RegionManager manager = guard.getRegionManager(loc.getWorld());
    ApplicableRegionSet set = manager.getApplicableRegions(v);
    return set.size() > 0;
}

Норм?
 
Вроде да, все правильно. Лично я раньше получал список регионов по локации так:
PHP:
ApplicableRegionSet container = WorldGuard.getInstance().getPlatform().getRegionContainer().createQuery().getApplicableRegions(BukkitAdapter.adapt(location));
 
А как теперь это в player interact event добавить? Мистер гуру
 
Совсем глупый?
PHP:
    @EventHandler
    public void onInteract(PlayerInteractEvent e) {
        if (inRegion(e.getClickedBlock().getLocation())) {
            //TODO
        }
    }

    public boolean inRegion(Location loc) {
        ApplicableRegionSet container = WorldGuard.getInstance().getPlatform().getRegionContainer().createQuery().getApplicableRegions(BukkitAdapter.adapt(loc));
        return container.size() > 0;
    }
 
Последнее редактирование:
Либо вот твоим вариантом:
PHP:
    @EventHandler
    public void onInteract(PlayerInteractEvent e) {
        if (inRegion(e.getClickedBlock().getLocation())) {
            //TODO
        }
    }

    public boolean inRegion(Location loc) {
        WorldGuard worldGuard = WorldGuard.getInstance();
        BlockVector3 v = BukkitAdapter.asBlockVector(loc);
        RegionManager manager = worldGuard.getPlatform().getRegionContainer().get(BukkitAdapter.adapt(loc.getWorld()));
        ApplicableRegionSet set = manager.getApplicableRegions(v);
        return set.size() > 0;
    }
Код на WG && WE 7.0.0 если что. Надеюсь перенести его на свою версию сможешь...
 
Назад
Верх