Lucca. Postado Maio 26, 2015 Denunciar Compartilhar Postado Maio 26, 2015 Boa tarde, estou finalizando meu plugin de SkyWars, e estou fazendo o spectator.. Preciso de um code, que impeça o player de subir ou descer, apenas mover-se para os lados (Tipo mc-games).. alguém de bom coração poderia me ajudar ou mandar só o code? ;-; Link para o comentário Compartilhar em outros sites More sharing options...
Guest zCouDray Postado Maio 26, 2015 Denunciar Compartilhar Postado Maio 26, 2015 (editado) saalve localização y do espectador em uma ArrayList, e depois execute no player move event se o y é diferente do marcado na ArrayList ou uma variavel de int qualquer, se for diferente, sete o y dele no marcado. @Edit: int y = 64; @EventHandler public void aoMover(PlayerMoveEvent e){ if(p.getLocation().getY() != y){ p.getLocation().setY(y); p.sendMessage("§cVoce nao pode se mover para baixo ou para cima!"): Esperto ter ajudado. Editado Maio 26, 2015 por zCouDray Link para o comentário Compartilhar em outros sites More sharing options...
zMathi Postado Maio 26, 2015 Denunciar Compartilhar Postado Maio 26, 2015 (editado) @EventHandler public void nomove(PlayerMoveEvent e){ Player p = e.getPlayer(); if ((p.getLocation().getY() == 200) || (p.getLocation().getY() == 198)){ e.setCancelled(true); p.sendMessage("Nao suba e nem desça!"); } } Acho que funciona '-' Editado Maio 26, 2015 por zMathi Link para o comentário Compartilhar em outros sites More sharing options...
vitorrdgs Postado Maio 26, 2015 Denunciar Compartilhar Postado Maio 26, 2015 (editado) int limite = 70; @EventHandler public void onMove(PlayerMoveEvent e){ if(e.getTo().getY() < limite || e.getTo().getY() > limite + 1){ e.setCancelled(true); e.getPlayer().teleport(e.getFrom()); e.getPlayer().sendMessage("§cNÃO!"); } } Like + Resolvido? Editado Maio 26, 2015 por Dual Link para o comentário Compartilhar em outros sites More sharing options...
leonardosc Postado Maio 26, 2015 Denunciar Compartilhar Postado Maio 26, 2015 saalve localização y do espectador em uma ArrayList, e depois execute no player move event se o y é diferente do marcado na ArrayList ou uma variavel de int qualquer, se for diferente, sete o y dele no marcado. @Edit: Se quiser eu posso fazer o código pra você. ArrayList ? slc, da pra fazer isso só usando metodos do playrmoveevent Vou fazer, já edito. Link para o comentário Compartilhar em outros sites More sharing options...
Guest zCouDray Postado Maio 26, 2015 Denunciar Compartilhar Postado Maio 26, 2015 ArrayList ? slc, da pra fazer isso só usando metodos do playrmoveevent Vou fazer, já edito. Já consegui fazer, olha o edit do meu post. Link para o comentário Compartilhar em outros sites More sharing options...
Lucca. Postado Maio 26, 2015 Autor Denunciar Compartilhar Postado Maio 26, 2015 saalve localização y do espectador em uma ArrayList, e depois execute no player move event se o y é diferente do marcado na ArrayList ou uma variavel de int qualquer, se for diferente, sete o y dele no marcado. @Edit: int y = 64; @EventHandler public void aoMover(PlayerMoveEvent e){ if(p.getLocation().getY() != y){ p.getLocation().setY(y); p.sendMessage("§cVoce nao pode se mover para baixo ou para cima!"): Esperto ter ajudado. è muito role tudo isso, acredito que tenha maneira mais facil de fazer.. Mais vlw a intenção, @EventHandler public void nomove(PlayerMoveEvent e){ Player p = e.getPlayer(); if ((p.getLocation().getY() == 200) || (p.getLocation().getY() == 198)){ e.setCancelled(true); p.sendMessage("Nao suba e nem desça!"); } } Acho que funciona '-' Acredito que sim, mais vou usar o code do duel ou do leonardu, -q vlw pela ajuda mathi ArrayList ? slc, da pra fazer isso só usando metodos do playrmoveevent Vou fazer, já edito. ok int limite = 70; @EventHandler public void onMove(PlayerMoveEvent e){ if(e.getTo().getY() < limite || e.getTo().getY() > limite + 1){ e.setCancelled(true); e.getPlayer().teleport(e.getFrom()); e.getPlayer().sendMessage("§cNÃO!"); } } Like + Resolvido? ownt que mininu coderzinhu Link para o comentário Compartilhar em outros sites More sharing options...
Guest zCouDray Postado Maio 26, 2015 Denunciar Compartilhar Postado Maio 26, 2015 è muito role tudo isso, acredito que tenha maneira mais facil de fazer.. Mais vlw a intenção, Acredito que sim, mais vou usar o code do duel ou do leonardu, -q vlw pela ajuda mathi ok ownt que mininu coderzinhu Acho que a minha é a maneira mais fácil de fazer oque você está tentando, não tem mt complicação isso. Link para o comentário Compartilhar em outros sites More sharing options...
leonardosc Postado Maio 26, 2015 Denunciar Compartilhar Postado Maio 26, 2015 @EventHandler private void onPlayerMoveEvent(PlayerMoveEvent e) { if (e.getFrom().getBlockY() != e.getTo().getBlockY()) { e.getPlayer().teleport(e.getPlayer().getLocation()); } } Isso só permite que ele ande para os lados, como você disse. Link para o comentário Compartilhar em outros sites More sharing options...
Lucca. Postado Maio 26, 2015 Autor Denunciar Compartilhar Postado Maio 26, 2015 Acho que a minha é a maneira mais fácil de fazer oque você está tentando, não tem mt complicação isso. Talvez.. é que já vi um code desse em algum plugin, na época que eu era decompiler.. Era relacionado ao code do dual, ai lembrei quando ele mando aquele.. Vou esperar o do leonardo, e vou dar resolvido pro melhor.. Link para o comentário Compartilhar em outros sites More sharing options...
leonardosc Postado Maio 26, 2015 Denunciar Compartilhar Postado Maio 26, 2015 Talvez.. é que já vi um code desse em algum plugin, na época que eu era decompiler.. Era relacionado ao code do dual, ai lembrei quando ele mando aquele.. Vou esperar o do leonardo, e vou dar resolvido pro melhor.. ja postei Link para o comentário Compartilhar em outros sites More sharing options...
Guest zCouDray Postado Maio 26, 2015 Denunciar Compartilhar Postado Maio 26, 2015 @EventHandler private void onPlayerMoveEvent(PlayerMoveEvent e) { if (e.getFrom().getBlockY() != e.getTo().getBlockY()) { e.getPlayer().teleport(e.getPlayer().getLocation()); } } Isso só permite que ele ande para os lados, como você disse. e.e Link para o comentário Compartilhar em outros sites More sharing options...
leonardosc Postado Maio 26, 2015 Denunciar Compartilhar Postado Maio 26, 2015 e.e ? Link para o comentário Compartilhar em outros sites More sharing options...
Lucca. Postado Maio 26, 2015 Autor Denunciar Compartilhar Postado Maio 26, 2015 @EventHandler private void onPlayerMoveEvent(PlayerMoveEvent e) { if (e.getFrom().getBlockY() != e.getTo().getBlockY()) { e.getPlayer().teleport(e.getPlayer().getLocation()); } } Isso só permite que ele ande para os lados, como você disse. è que vou fazer algo relacionado ao seguinte, terá um ''pré'' death event, que quando esse evento ser chamado, colocará ele invisivel, irá subir cerca de 25 blocos + - e adicionará em uma arraylist, ai no move event, se ele tiver na arrayList, cancela o evento Link para o comentário Compartilhar em outros sites More sharing options...
Lucca. Postado Maio 26, 2015 Autor Denunciar Compartilhar Postado Maio 26, 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
Lucca.
Boa tarde, estou finalizando meu plugin de SkyWars, e estou fazendo o spectator..
Preciso de um code, que impeça o player de subir ou descer, apenas mover-se para os lados (Tipo mc-games)..
alguém de bom coração poderia me ajudar ou mandar só o code? ;-;
Link para o comentário
Compartilhar em outros sites
14 respostass a esta questão
Posts Recomendados