Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Помогите Как вставить позицию игрока в код WorldGuard API

Здраствуй, желательно копировать код и вставлять текстом.
А так, если у тебя intellij, то можно навести мышку на getApplicableRegions и, если есть вариант ввода координат вручную(x, y, z), то можно просто достать локацию Location loc = player.getlocation и далее просто доставать координаты и выйдет getApplicableRegions(loc.getX, loc.getY, loc.getZ).
Возможно ещё потребует мир или что-то подобное, поэтому лучше всего - читать документацию и смотреть какие переменные требуются для ввода!
 
Здраствуй, желательно копировать код и вставлять текстом.
А так, если у тебя intellij, то можно навести мышку на getApplicableRegions и, если есть вариант ввода координат вручную(x, y, z), то можно просто достать локацию Location loc = player.getlocation и далее просто доставать координаты и выйдет getApplicableRegions(loc.getX, loc.getY, loc.getZ).
Возможно ещё потребует мир или что-то подобное, поэтому лучше всего - читать документацию и смотреть какие переменные требуются для ввода!
public static void IfRegion(Player p) {
World world = Bukkit.getWorld("world");
RegionContainer container = WorldGuard.getInstance().getPlatform().getRegionContainer();
RegionQuery query = container.createQuery();
ApplicableRegionSet ars = query.getApplicableRegions(p.getLocation().getBlockX());
ars.getRegions();
for (ProtectedRegion prg: ars){
if (prg.getId().equalsIgnoreCase("rgEvent")) p.sendMessage("Вы там где надо (в жопе)");
}
}

getApplicableRegions принимает только тип Location из WorldGuardApi
 
Документацию читал, во всяком случаи я ничего не нашёл. Intelij ничего не выводит. Знаю только то что для создания Location WG api нужен Extent. Где его взять - не знаю, что это такое - безпонятия.
 
Уже и забыл про весь этот гемор с ВД...
Там есть способ преобразовать объект игрока в ВД игрока
цитирую с переводом из документации:
По причинам устаревания и будущей кроссплатформенной поддержки WorldGuard использует свой собственный внутренний объект player, называемый LocalPlayer. Проигрыватель Bukkit можно преобразовать в LocalPlayer с помощью wrapPlayer(проигрыватель) в WorldGuardPlugin.
Код:
WorldGuardPlugin.inst().wrapPlayer(player);
Попробуй преобразовать игрока и затем достать оттуда локацию
 

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

Назад
Верх