Ir para conteúdo
  • 0

Location - Retornando os dois para 1


Ducky

Pergunta

Olá, eu fiz sete 2 Location, com nomes diferentes. Porém o saida está retornando no entrada. Como posso resolver isso?

 

if (args[0].equalsIgnoreCase("setspawn")) {
Location arena2 = p.getLocation();
p.getWorld().setSpawnLocation(arena2.getBlockX(), arena2.getBlockY(), arena2.getBlockZ());
p.getWorld().getName();
getConfig().set("Arena.Mundo", p.getLocation().getWorld().getName());
getConfig().set("Arena.X", Double.valueOf(p.getLocation().getX()));
            getConfig().set("Arena.Y", Double.valueOf(p.getLocation().getY()));
            getConfig().set("Arena.Z", Double.valueOf(p.getLocation().getZ()));
            getConfig().set("Arena.Pitch", Float.valueOf(p.getLocation().getPitch()));
            getConfig().set("Arena.Yaw", Float.valueOf(p.getLocation().getYaw()));
saveConfig();
}
}
    if (args[0].equalsIgnoreCase("setsaida")) {
Location saida2 = p.getLocation();
p.getWorld().setSpawnLocation(saida2.getBlockX(), saida2.getBlockY(), saida2.getBlockZ());
p.getWorld().getName();
getConfig().set("Saida2.Mundo", p.getLocation().getWorld().getName());
getConfig().set("Saida2.X", Double.valueOf(p.getLocation().getX()));
            getConfig().set("Saida2.Y", Double.valueOf(p.getLocation().getY()));
            getConfig().set("Saida2.Z", Double.valueOf(p.getLocation().getZ()));
            getConfig().set("Saida2.Pitch", Float.valueOf(p.getLocation().getPitch()));
            getConfig().set("Saida2.Yaw", Float.valueOf(p.getLocation().getYaw()));
            saveConfig();
}
 
Para ir ao local:
 

if (command.getName().equalsIgnoreCase("sair")) {
              Location saida2 = p.getWorld().getSpawnLocation();
              saida2.setX(saida2.getBlockX());
              saida2.setY(saida2.getBlockY());
              saida2.setZ(saida2.getBlockZ());
              p.teleport(saida2);
 
Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

hm.. Qual a forma certa de setar a location?

E o que você quer fazer?

 

Porque, do jeito que eu estou vendo, você está:

 

  1. Pegando a localização atual do player
  2. Alterando a posição do spawn do mundo para a posição atual do player
  3. Pegando o nome do mundo por... não sei, faço a mínima ideia porque você fez isso
  4. Salva a localização na configuração

E isso só nisso aqui

Location arena2 = p.getLocation();
p.getWorld().setSpawnLocation(arena2.getBlockX(), arena2.getBlockY(), arena2.getBlockZ());
p.getWorld().getName();
getConfig().set("Arena.Mundo", p.getLocation().getWorld().getName());
getConfig().set("Arena.X", Double.valueOf(p.getLocation().getX()));
            getConfig().set("Arena.Y", Double.valueOf(p.getLocation().getY()));
            getConfig().set("Arena.Z", Double.valueOf(p.getLocation().getZ()));
            getConfig().set("Arena.Pitch", Float.valueOf(p.getLocation().getPitch()));
            getConfig().set("Arena.Yaw", Float.valueOf(p.getLocation().getYaw()));
saveConfig();

Algo que poderia ser reduzido para

getConfig().set("Arena.Mundo", p.getLocation().getWorld().getName());
getConfig().set("Arena.X", Double.valueOf(p.getLocation().getX()));
getConfig().set("Arena.Y", Double.valueOf(p.getLocation().getY()));
getConfig().set("Arena.Z", Double.valueOf(p.getLocation().getZ()));
getConfig().set("Arena.Pitch", Float.valueOf(p.getLocation().getPitch()));
getConfig().set("Arena.Yaw", Float.valueOf(p.getLocation().getYaw()));
saveConfig();

Já aqui

              Location saida2 = p.getWorld().getSpawnLocation();
              saida2.setX(saida2.getBlockX());
              saida2.setY(saida2.getBlockY());
              saida2.setZ(saida2.getBlockZ());
              p.teleport(saida2);

Você vai ter que pegar cada valor da config (int x = getConfig().getInt("...")) e criar uma localização usando elas (new Location(Bukkit.getWorld(worldName), x...))

Link para o comentário
Compartilhar em outros sites

p.getWorld().setSpawnLocation(saida2.getBlockX(), saida2.getBlockY(), saida2.getBlockZ());

Porque você está setando o spawn do mundo?

 

hm.. Qual a forma certa de setar a location?

Link para o comentário
Compartilhar em outros sites

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