Ir para conteúdo
  • 0

[Resolvido] [Ajuda] HashMap + /tpa


LuizB

Pergunta

Quando eu envio o Comando /TpaCuthmf, e outro player digita /tpaceitar Cuthmf

aparece que ninguem enviou pedido

 

Player p = (Player)sender;
		if (command.getName().equalsIgnoreCase("tpa")) {
			
		}
			if (args.length==1) {
				if(p.getServer().getPlayer(args[0])!=null){
					Player alvo = p.getServer().getPlayer(args[0]);
					Main.pedido.put(p.getName(), alvo.getName());
					p.sendMessage("§bPedido De §aTeleporte§b Enviado Para §c"+alvo.getName());
					alvo.sendMessage("§b O Jogador"+p.getName()+" Esta Pedindo Pra Ir Até Você");
					return true;
				}else {
					p.sendMessage("§cEste Jogador Não Esta Online");
					return true;
				}

		Player p = (Player)sender;
		if (cmd.getName().equalsIgnoreCase("tpaceitar")) {
			if (args.length==1) {
				if(p.getServer().getPlayer(args[0])!=null){
					Player alvo = p.getServer().getPlayer(args[0]);
					if (Main.pedido.containsValue(alvo.getName())&& Main.pedido.containsKey(p.getName())) {
						alvo.teleport(p.getLocation());
					}else {
						
						p.sendMessage("Ninguem Pediu Pra Ir Até Você");
						return true;
					}
				}else {
					p.sendMessage("§cEste Jogador Não Esta Online");
					return true;
				}
	}

Agora se eu enviar tpa pra eu mesmo da certo

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

Você precisa fazer assim:

Main.pedido.put(p.getName(), alvo.getName());
Main.pedido.put(alvo.getName(), p.getName());

Ou seja, colocar um na hash do outro quando o pedido for enviado.

Editado por Arkasher
Link para o comentário
Compartilhar em outros sites

  • 0
Player p = (Player)sender;
		if (cmd.getName().equalsIgnoreCase("tpaceitar")) {
			if (args.length==1) {
				if(p.getServer().getPlayer(args[0])!=null){
					Player alvo = p.getServer().getPlayer(args[0]);
					if (Main.pedido.containsValue(p.getName())&& Main.pedido.containsKey(alvo.getName())) {
						alvo.teleport(p.getLocation());
					}else {
						
						p.sendMessage("Ninguem Pediu Pra Ir Até Você");
						return true;
					}
				}else {
					p.sendMessage("§cEste Jogador Não Esta Online");
					return true;
				}
	}

Voce trocou a hashmap o valor no caso seria o seu nick voce coloco o do que envia o pedido

Link para o comentário
Compartilhar em outros sites

Player p = (Player)sender;
		if (cmd.getName().equalsIgnoreCase("tpaceitar")) {
			if (args.length==1) {
				if(p.getServer().getPlayer(args[0])!=null){
					Player alvo = p.getServer().getPlayer(args[0]);
					if (Main.pedido.containsValue(p.getName())&& Main.pedido.containsKey(alvo.getName())) {
						alvo.teleport(p.getLocation());
					}else {
						
						p.sendMessage("Ninguem Pediu Pra Ir Até Você");
						return true;
					}
				}else {
					p.sendMessage("§cEste Jogador Não Esta Online");
					return true;
				}
	}

Voce trocou a hashmap o valor no caso seria o seu nick voce coloco o do que envia o pedido

 

Lol não seria ao contratio ?

 

HashMap vem Primeiro Key ( p.getname) e Value (alvo.getname)

 

 

 

Link para o comentário
Compartilhar em outros sites

Lol não seria ao contratio ?

 

HashMap vem Primeiro Key ( p.getname) e Value (alvo.getname)

 

 

 

Player p1 = Bukkit.getPlayer(args[0]);

if (Main.pedidos.containsKeys(p1.getName()) && Main.pedidos.containsValue(p.getName())) {
	p1.teleport(p.getLocation());
}
Link para o comentário
Compartilhar em outros sites

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