- Баллы
- 76
Любой код, который позволяет где нибудь отображать текущий регион, на котором стоит игрок!
Следуйте инструкциям в видео ниже, чтобы узнать, как установить наш сайт как веб-приложение на главный экран вашего устройства.
Примечание: Эта функция может быть недоступна в некоторых браузерах.
Любой код, который позволяет где нибудь отображать текущий регион, на котором стоит игрок!
Вот как раз таки наоборот, мне ни разу здесь не помогли, всегда только обсирали вместо помощи, как будто сами они родились супер прогерами! Если сюда обращаются за помощью, это от того, что мало знаний, если кто супер прогер, то нафиг ему этот форум нужен! Серьезные прогеры они как паханы, вежливо, на Вы разговор ведут, Здесь больно не светятся, для них плохое слово сказать, замарать свою репутацию, а вот эти, которые здесь кишат и выпендриваются олухи, шестерки, петухи разные, которые сами ниера не знают ничего, вот и поливают помоями всех кого не лень!ОМГ, ты уже про это создаёшь вторую тему в первой тебе помогли но ты видимо взял код, прожевал и выплюнул...
Тебе уже подсказали первым постом. А вообще - надо было реально загуглить World Guard Wiki, и вуаляВот как раз таки наоборот, мне ни разу здесь не помогли, всегда только обсирали вместо помощи, как будто сами они родились супер прогерами! Если сюда обращаются за помощью, это от того, что мало знаний, если кто супер прогер, то нафиг ему этот форум нужен! Серьезные прогеры они как паханы, вежливо, на Вы разговор ведут, Здесь больно не светятся, для них плохое слово сказать, замарать свою репутацию, а вот эти, которые здесь кишат и выпендриваются олухи, шестерки, петухи разные, которые сами ниера не знают ничего, вот и поливают помоями всех кого не лень!
public static ProtectedRegion getRegion(Location loc){
ApplicableRegionSet set = wgApi.getRegionManager(loc.getWorld()).getApplicableRegions(loc);
for(ProtectedRegion region : set){
if(region.getId().equalsIgnoreCase("__global__")){
continue;
}
return region;
}
return null;
}
public void send(Player p){
ProtectedRegion region = getRegion(p.getLocation());
if(region == null)return;
BossBar bar = Bukkit.createBossBar("Вы находитесь в регионе " + region.getId(), region.getOwners().getUniqueIds().contains(p.getUniqueId())?BarColor.GREEN:BarColor.RED, BarStyle.SOLID, BarFlag.DARKEN_SKY);
bar.addPlayer(p);
}
public static void newBar(Player player) {
ProtectedRegion region = getRegion(p.getLocation());
if(region == null)return;
Location loc = player.getLocation();
WorldServer world = ((CraftWorld) player.getLocation().getWorld()).getHandle();
EntityWither wither = new EntityWither(world);
wither.setLocation(loc.getX(), loc.getY() - 10, loc.getZ(), 0, 0);
wither.setCustomName("Вы находитесь в регионе " + region.getId());
Packet packet = new PacketPlayOutSpawnEntityLiving(wither);
((CraftPlayer) player).getHandle().playerConnection.sendPacket(packet);
}
Через нмс уже смысла нет. Теперь в ведре свой барапи.Через BossBar.
Method:
Код:public static ProtectedRegion getRegion(Location loc){ ApplicableRegionSet set = wgApi.getRegionManager(loc.getWorld()).getApplicableRegions(loc); for(ProtectedRegion region : set){ if(region.getId().equalsIgnoreCase("__global__")){ continue; } return region; } return null; }
1.9+(О нагрузке не знаю, т.к сам такое не использовал):
Код:public void send(Player p){ ProtectedRegion region = getRegion(p.getLocation()); if(region == null)return; BossBar bar = Bukkit.createBossBar("Вы находитесь в регионе " + region.getId(), region.getOwners().getUniqueIds().contains(p.getUniqueId())?BarColor.GREEN:BarColor.RED, BarStyle.SOLID, BarFlag.DARKEN_SKY); bar.addPlayer(p); }
С Bukkit.org(Через пакеты):
P.S. https://github.com/confuser/BarAPI/tree/master/src/me/confuser/barapi - Если хочешь сделать нормально через BossBar.Код:public static void newBar(Player player) { ProtectedRegion region = getRegion(p.getLocation()); if(region == null)return; Location loc = player.getLocation(); WorldServer world = ((CraftWorld) player.getLocation().getWorld()).getHandle(); EntityWither wither = new EntityWither(world); wither.setLocation(loc.getX(), loc.getY() - 10, loc.getZ(), 0, 0); wither.setCustomName("Вы находитесь в регионе " + region.getId()); Packet packet = new PacketPlayOutSpawnEntityLiving(wither); ((CraftPlayer) player).getHandle().playerConnection.sendPacket(packet); }
Это на тот случай, если ему нужна поддержка <1.9Через нмс уже смысла нет. Теперь в ведре свой барапи.
Не интересно же. Вон на видосе выше збс с цветами боссбар. 1.8 сасай.Это на тот случай, если ему нужна поддержка <1.9
Не ну с этим не поспоришь конечно, но фиг его знает, что тс захочет сделать😗Не интересно же. Вон на видосе выше збс с цветами боссбар. 1.8 сасай.
Вот екшенбар до сиз пор так и не прикрутили в ведре, печаль беда (.Не ну с этим не поспоришь конечно, но фиг его знает, что тс захочет сделать😗
А вот это действительно грустно... Его добавили так давно, а в Апи не могут добавить до сих пор. Это немножко печалит☹️Вот екшенбар до сиз пор так и не прикрутили в ведре, печаль беда (.
Вот первый чел, который за все время ответил мне нормально с пониманием! Уважаю БРО!!!Спасибки Братан!!! Респект тебе!!!Rider3217
Ты серьёзно считаешь эти строчки кода сложными?!А вот это действительно грустно... Его добавили так давно, а в Апи не могут добавить до сих пор. Это немножко печалит☹️
public static void sendActionBar(Player p, String message){
IChatBaseComponent cbc = ChatSerializer.a("{\"text\": \"" + message +"\"}");
PacketPlayOutChat ppoc = new PacketPlayOutChat(cbc,(byte) 2);
((CraftPlayer) p).getHandle().playerConnection.sendPacket(ppoc);
}
Да, ну сделай паблик-плагин с таким методом. Он будет только на одну версию.Ты серьёзно считаешь эти строчки кода сложными?!
PHP:public static void sendActionBar(Player p, String message){ IChatBaseComponent cbc = ChatSerializer.a("{\"text\": \"" + message +"\"}"); PacketPlayOutChat ppoc = new PacketPlayOutChat(cbc,(byte) 2); ((CraftPlayer) p).getHandle().playerConnection.sendPacket(ppoc); }
Я где-то говорил о сложности? НЕТТы серьёзно считаешь эти строчки кода сложными?!
PHP:public static void sendActionBar(Player p, String message){ IChatBaseComponent cbc = ChatSerializer.a("{\"text\": \"" + message +"\"}"); PacketPlayOutChat ppoc = new PacketPlayOutChat(cbc,(byte) 2); ((CraftPlayer) p).getHandle().playerConnection.sendPacket(ppoc); }
Забей на него. Он даже не в курсе, что отправка пакета поменялась. Своровал старый код с паба и довелен. Одна из причин, почему хромосомы дрочат старые версии.Я где-то говорил о сложности? НЕТ
Я где-то упоминал твоё имя? НЕТ
Так что иди набивай сообщения в другую тему...
Я даже нашел ссылку на статью, где он украл код😆Забей на него. Он даже не в курсе, что отправка пакета поменялась. Своровал старый код с паба и довелен. Одна из причин, почему хромосомы дрочат старые версии.
No problem! Обращайся)Вот первый чел, который за все время ответил мне нормально с пониманием! Уважаю БРО!!!
Кстати об этом.Ты серьёзно считаешь эти строчки кода сложными?!
PHP:public static void sendActionBar(Player p, String message){ IChatBaseComponent cbc = ChatSerializer.a("{\"text\": \"" + message +"\"}"); PacketPlayOutChat ppoc = new PacketPlayOutChat(cbc,(byte) 2); ((CraftPlayer) p).getHandle().playerConnection.sendPacket(ppoc); }