DeepesT 10 Opublikowano 31 marca 2021 Udostępnij Opublikowano 31 marca 2021 Witam nie wiem jak napisać plugin który by blokował stawianie end_stone o danej nazwie np "&2Test" w regionie spawn po prostu po postawieniu by anulował się event Dziękuję za Pomoc Wiem że potrzebuje API wordlGuarda do tego. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 paweU 64 Opublikowano 31 marca 2021 Udostępnij Opublikowano 31 marca 2021 Sprawdzanie czy dana lokalizacja znajduje się w danym regionie: public static boolean inRegion(Location location, String RegionName) { boolean cuboid = false; ApplicableRegionSet regions = WorldGuardPlugin.inst().getRegionManager(location.getWorld()) .getApplicableRegions(location); for (ProtectedRegion region : regions) { if (region.getId().equalsIgnoreCase(RegionName)) { cuboid = true; } } return cuboid; } BlockPlaceListener (nie testowałem, ale powinno śmigać): @EventHandler public void onPlace(BlockPlaceEvent event) { Player player = event.getPlayer(); Block block = event.getBlockPlaced(); Material type = block.getType(); if(type != Material.ENDER_STONE){ return; } ItemStack itemStack = player.getItemInHand(); if(!itemStack.hasItemMeta()){ return; } ItemMeta itemMeta = itemStack.getItemMeta(); if(!itemMeta.hasDisplayName()){ return; } String name = itemMeta.getDisplayName(); Location location = block.getLocation(); if(!LocationUtil.inRegion(location, "nazwaregionu")){ return; } if(name.equals(ChatUtil.fixColor("&2Test"))){ event.setCancelled(true); player.sendMessage("Nie mozesz tego postawic na tym regionie!"); } } ChatUtil: public static String fixColor(String text){ return ChatColor.translateAlternateColorCodes('&', text); } kerpson 1 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 DeepesT 10 Opublikowano 31 marca 2021 Autor Udostępnij Opublikowano 31 marca 2021 25 minut temu, paweU napisał: Sprawdzanie czy dana lokalizacja znajduje się w danym regionie: public static boolean inRegion(Location location, String RegionName) { boolean cuboid = false; ApplicableRegionSet regions = WorldGuardPlugin.inst().getRegionManager(location.getWorld()) .getApplicableRegions(location); for (ProtectedRegion region : regions) { if (region.getId().equalsIgnoreCase(RegionName)) { cuboid = true; } } return cuboid; } BlockPlaceListener (nie testowałem, ale powinno śmigać): @EventHandler public void onPlace(BlockPlaceEvent event) { Player player = event.getPlayer(); Block block = event.getBlockPlaced(); Material type = block.getType(); if(type != Material.ENDER_STONE){ return; } ItemStack itemStack = player.getItemInHand(); if(!itemStack.hasItemMeta()){ return; } ItemMeta itemMeta = itemStack.getItemMeta(); if(!itemMeta.hasDisplayName()){ return; } String name = itemMeta.getDisplayName(); Location location = block.getLocation(); if(!LocationUtil.inRegion(location, "nazwaregionu")){ return; } if(name.equals(ChatUtil.fixColor("&2Test"))){ event.setCancelled(true); player.sendMessage("Nie mozesz tego postawic na tym regionie!"); } } ChatUtil: public static String fixColor(String text){ return ChatColor.translateAlternateColorCodes('&', text); } wychodzi na to że dawno nie pisałem pluginów bo coś zjeb*** i jak wklejam to do kodu to takie błędy że to szok achach ta przerwa Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 paweU 64 Opublikowano 31 marca 2021 Udostępnij Opublikowano 31 marca 2021 Teraz, DeepesT napisał: wychodzi na to że dawno nie pisałem pluginów bo coś zjeb*** i jak wklejam to do kodu to takie błędy że to szok achach ta przerwa Musisz dodać do libek WorldEdita i WorldGuarda Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 DeepesT 10 Opublikowano 31 marca 2021 Autor Udostępnij Opublikowano 31 marca 2021 1 minutę temu, paweU napisał: Musisz dodać do libek WorldEdita i WorldGuarda a oprócz silnika dodać jeszcze worldedit.jar i wordlguard.jar ? do biblioteki Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 paweU 64 Opublikowano 31 marca 2021 Udostępnij Opublikowano 31 marca 2021 Godzinę temu, DeepesT napisał: a oprócz silnika dodać jeszcze worldedit.jar i wordlguard.jar ? do biblioteki Tak Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 paweU 64 Opublikowano 1 kwietnia 2021 Udostępnij Opublikowano 1 kwietnia 2021 Problem został rozwiązany. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Pytanie
DeepesT 10
Witam nie wiem jak napisać plugin który by blokował stawianie end_stone o danej nazwie np "&2Test" w regionie spawn po prostu po postawieniu by anulował się event Dziękuję za Pomoc
Wiem że potrzebuje API wordlGuarda do tego.
Odnośnik do komentarza
Udostępnij na innych stronach
6 odpowiedzi na to pytanie
Rekomendowane odpowiedzi