Ir para conteúdo
  • 0

[Resolvido] Kit Ninja - Duvida


List("HeyKick");

Pergunta

Estou com um problema no meu kitNinja, não ocorre nenhum erro no console, so quando eu tendo me teleportar ao player não vai


o certo seria eu bater no player e caso ele estivesse longe eu apertasse shift para teleportar até ele, so que isso nao acontece, meu codigo abaixo


alguem pode me dizer oque eu fiz de errado



HashMap<Player, Long> tempo = new HashMap<>();
HashMap<String, String> teleport = new HashMap<>();

@EventHandler
public void kitNinja ( PlayerToggleSneakEvent event ) {

Player jogador = event.getPlayer();
if (Kits.kitNinja.contains(jogador.getName())) {
if (jogador.isSneaking()) {
if ((!tempo.containsKey(jogador)) || ((Long)tempo.get(jogador)).longValue() <= System.currentTimeMillis()) {
if (teleport.containsKey(jogador.getName())) {
Player target = Bukkit.getPlayer((String)teleport.get(jogador.getName()));
if (target == null) {
jogador.teleport(target);
tempo.put(jogador, Long.valueOf(System.currentTimeMillis() + TimeUnit.SECONDS.toMillis(10L)));
}
}
} else {
jogador.sendMessage(API.nomeServidor + "Faltam §e" + TimeUnit.SECONDS.toSeconds(((Long)tempo.get(jogador)).longValue() - System.currentTimeMillis()) + " §fsegundos para poder usar novamente");
}
}
return;
}
}

@EventHandler
public void kitNinjaDano ( EntityDamageByEntityEvent event ) {

if (((event.getEntity() instanceof Player)) && (event.getDamager() instanceof Player)) {
Player jogador = (Player)event.getEntity();
Player dano = (Player) event.getDamager();
if (Kits.kitNinja.contains(dano.getName())) {
teleport.put(dano.getName(), jogador.getName());
}
}
}

Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

Tenta assim:

					Player target = Bukkit.getPlayer(teleport.get(jogador)); //não precisa do getName(), você não quer o nome dele, e sim o player.
					if (target != null) { //Se for == null, ele teria que está offline, e não é isso que é para acontecer, ou seja !=.
						jogador.teleport(target);
						tempo.put(jogador, Long.valueOf(System.currentTimeMillis() + TimeUnit.SECONDS.toMillis(10L)));
					}
Link para o comentário
Compartilhar em outros sites

 

Tenta assim:

					Player target = Bukkit.getPlayer(teleport.get(jogador)); //não precisa do getName(), você não quer o nome dele, e sim o player.
					if (target != null) { //Se for == null, ele teria que está offline, e não é isso que é para acontecer, ou seja !=.
						jogador.teleport(target);
						tempo.put(jogador, Long.valueOf(System.currentTimeMillis() + TimeUnit.SECONDS.toMillis(10L)));
					}

 

mesmo fazendo essas alteração nao funcionou

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...