Dery Postado Março 3, 2015 Denunciar Compartilhar Postado Março 3, 2015 Alguém sabe o evento de quando um player entra em uma região? Link para o comentário Compartilhar em outros sites More sharing options...
Guest LeoCheioDeWarn Postado Março 3, 2015 Denunciar Compartilhar Postado Março 3, 2015 (editado) É o RegionEnterEavent @EventHandler public void onRegionEnter(RegionEnterEvent e) { e.getPlayer().sendMessage("Voce entrou na area " + e.getRegion().getId()); } Editado Março 3, 2015 por LeoCheioDeWarn Link para o comentário Compartilhar em outros sites More sharing options...
Dery Postado Março 3, 2015 Autor Denunciar Compartilhar Postado Março 3, 2015 (editado) É o RegionEnterEavent @EventHandler public void onRegionEnter(RegionEnterEvent e) { e.getPlayer().sendMessage("Voce entrou na area " + e.getRegion().getId()); } Não existe o Evento "RegionEnterEvent", oque existe é o RegionEntry @Edit: Como faço para se o player entrar em tal região ele tipo que envia uma mensagem, enviar a mensagem eu sei, mas como faço para pegar a região? Seria tipo e.getRegion("teste")? Editado Março 3, 2015 por Dery Link para o comentário Compartilhar em outros sites More sharing options...
Nuno Facha Postado Março 3, 2015 Denunciar Compartilhar Postado Março 3, 2015 Não existe o Evento "RegionEnterEvent", oque existe é o RegionEntry @Edit: Como faço para se o player entrar em tal região ele tipo que envia uma mensagem, enviar a mensagem eu sei, mas como faço para pegar a região? Seria tipo e.getRegion("teste")? Tenho esse metodo que verifica se o player esta dentro de uma region: public boolean verificarrg(String nome, Player p) { RegionManager regionManager = getWorldGuard().getRegionManager( p.getWorld()); ApplicableRegionSet set = regionManager.getApplicableRegions(p .getEyeLocation()); LinkedList<String> parentNames = new LinkedList<String>(); LinkedList<String> regions = new LinkedList<String>(); for (ProtectedRegion region : set) { String id = region.getId(); regions.add(id); ProtectedRegion parent = region.getParent(); while (parent != null) { parentNames.add(parent.getId()); parent = parent.getParent(); } } for (String name : parentNames) regions.remove(name); for (String nomerg : regions) { if (nomerg.equalsIgnoreCase(nome)) { return true; } } return false; } Link para o comentário Compartilhar em outros sites More sharing options...
AlanGomes_ (BrineDev) Postado Março 3, 2015 Denunciar Compartilhar Postado Março 3, 2015 (editado) Tenho esse metodo que verifica se o player esta dentro de uma region: public boolean verificarrg(String nome, Player p) { RegionManager regionManager = getWorldGuard().getRegionManager( p.getWorld()); ApplicableRegionSet set = regionManager.getApplicableRegions(p .getEyeLocation()); LinkedList<String> parentNames = new LinkedList<String>(); LinkedList<String> regions = new LinkedList<String>(); for (ProtectedRegion region : set) { String id = region.getId(); regions.add(id); ProtectedRegion parent = region.getParent(); while (parent != null) { parentNames.add(parent.getId()); parent = parent.getParent(); } } for (String name : parentNames) regions.remove(name); for (String nomerg : regions) { if (nomerg.equalsIgnoreCase(nome)) { return true; } } return false; } Método grande demais, com muitos for's que podem gerar lag, é possível fazer isso em poucas linhas: public boolean estaRegion(Player p, String r) { com.sk89q.worldguard.protection.ApplicableRegionSet ar = getWG().getRegionManager(p.getWorld()).getApplicableRegions(p.getLocation().clone()); Iterator<ProtectedRegion> prs = ar.iterator(); while (prs.hasNext()) { ProtectedRegion region=prs.next(); if (region.getId().equalsIgnoreCase(r)) return true; } return false; } Editado Março 3, 2015 por BrineDev 2 Link para o comentário Compartilhar em outros sites More sharing options...
KroyBR Postado Abril 6, 2015 Denunciar Compartilhar Postado Abril 6, 2015 Sua dúvida foi marcada como [Resolvido] e movido à área de dúvidas resolvidas. Atenciosamente, Gamer's Board Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Dery
Alguém sabe o evento de quando um player entra em uma região?
Link para o comentário
Compartilhar em outros sites
5 respostass a esta questão
Posts Recomendados