Ir para conteúdo
  • 0

[Resolvido] Problema ao criar um arquivo em outra package


Guest Demarchi

Pergunta

25 respostass a esta questão

Posts Recomendados

public class SetSpawn implements CommandExecutor {
	
	File spawn = new File("plugins/dEssentials/spawn.yml");
	FileConfiguration fc = YamlConfiguration.loadConfiguration(spawn);
	

	@Override
	public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
		if (!(sender instanceof Player)) {
			sender.sendMessage(API.c.getConfig().getString("Comando_Console").replaceAll("&", "§"));
			return true;
			
		}
		
		Player p = (Player)sender;
		if (cmd.getName().equalsIgnoreCase("SetSpawn")) {
			if (sender.hasPermission(API.c.getConfig().getString("SetSpawn_Permissao"))) {
				fc.set("spawn.world", p.getWorld().getName());
				fc.set("spawn.x", p.getLocation().getX());
				fc.set("spawn.y", p.getLocation().getY());
				fc.set("spawn.z", p.getLocation().getZ());
				fc.set("spawn.yaw", p.getLocation().getYaw());
				fc.set("spawn.pitch", p.getLocation().getPitch());
				p.sendMessage(API.c.getConfig().getString("Spawn_Definido").replaceAll("&", "§"));
				try {
					fc.save(spawn);
				} catch (IOException e) {
					e.printStackTrace();
				}
				
			}else {
				p.sendMessage(API.c.getConfig().getString("Sem_Permissao").replaceAll("&", "§"));
			}
		}
		
		return false;
	}
	
}
public class Spawn implements CommandExecutor {
	
	File spawn = new File("plugins/dEssentials/spawn.yml");
	FileConfiguration fc = YamlConfiguration.loadConfiguration(spawn);

	@Override
	public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
		if (!(sender instanceof Player)) {
			sender.sendMessage(API.c.getConfig().getString("Comando_Console").replaceAll("&", "§"));
			return true;
		}
		
		Player p = (Player)sender;
		if (cmd.getName().equalsIgnoreCase("Spawn")) {
			if (p.hasPermission(API.c.getConfig().getString("Spawn_Permissao"))) {
				
				World world = Bukkit.getServer().getWorld(fc.getString("spawn.world"));
				double x = fc.getDouble("spawn.x");
				double y = fc.getDouble("spawn.y");
				double z = fc.getDouble("spawn.z");
				long yaw = fc.getLong("spawn.yaw");
				long pitch = fc.getLong("spawn.pitch");
				p.sendMessage(API.c.getConfig().getString("Spawn").replaceAll("&", "§"));
				
				p.teleport(new Location(world, x, y, z, yaw, pitch));
				
			}else {
				p.sendMessage(API.c.getConfig().getString("Sem_Permissao").replaceAll("&", "§"));
			}
		}
		return false;
	}

}

Tenta isso:

http://pastebin.com/rUCYTXDP

 

Link para o comentário
Compartilhar em outros sites

Tente fazer isto:
 

File spawn = new File(getDataFolder, "spawn.yml"); //Aqui cria o arquivo.
FileConfiguration fc = YamlConfiguration.loadConfiguration(spawn); //Aqui voce edita ele! Como se usa-se a config.
Exemplo:
fc.set("Alguma coisa", "Alguma coisa 2"); //Seria com a config assim: getConfig().set("etc", "etc");

fc.getString("Linha"); //Seria com a config assim: getConfig().getString("Linha");

Resolvido?

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

Tente fazer isto:

 

File spawn = new File(getDataFolder, "spawn.yml"); //Aqui cria o arquivo.
FileConfiguration fc = YamlConfiguration.loadConfiguration(spawn); //Aqui voce edita ele! Como se usa-se a config.
Exemplo:
fc.set("Alguma coisa", "Alguma coisa 2"); //Seria com a config assim: getConfig().set("etc", "etc");

fc.getString("Linha"); //Seria com a config assim: getConfig().getString("Linha");

Resolvido?

Ele funciona tudo, mas ele da erro no getDataFolder, se for na classe principal ele não da erro mas em outra classe ele da  ;-;

Link para o comentário
Compartilhar em outros sites

Ele funciona tudo, mas ele da erro no getDataFolder, se for na classe principal ele não da erro mas em outra classe ele da  ;-;

Ah, tu ta fazendo em outra classe neh?!

Bom, então faça isso:

 

//No inicio da sua classe (Sem ser da classe principal), em baixo disto:

public class <Nome_Da_Classe> {

//Faca isso:
private <Nome_Da_Classe_Principal> pl;

public <Nome_Da_Classe>(<Nome_Da_Classe_Principal> m){
this.pl = m;
}

//Ai, no getDataFolder faca isso:
pl.getDataFolder, deve resolver! 

Link para o comentário
Compartilhar em outros sites

Ah, tu ta fazendo em outra classe neh?!

Bom, então faça isso:

 

//No inicio da sua classe (Sem ser da classe principal), em baixo disto:

public class <Nome_Da_Classe> {

//Faca isso:
private <Nome_Da_Classe_Principal> pl;

public <Nome_Da_Classe>(<Nome_Da_Classe_Principal> m){
this.pl = m;
}

//Ai, no getDataFolder faca isso:
pl.getDataFolder, deve resolver! 

Vish testei não funciono

Link para o comentário
Compartilhar em outros sites

Erros??

Se puder postar print's

Já resolvi eu fui testando e consegui, usei só isso

File spawn = new File("plugins/dEssentials/spawn.yml");
	FileConfiguration fc = YamlConfiguration.loadConfiguration(spawn);

Poderia me falar como eu recarrego a configuração spawn.yml? tipo reloadConfig(); mas para o método a cima

Link para o comentário
Compartilhar em outros sites

Já resolvi eu fui testando e consegui, usei só isso

File spawn = new File("plugins/dEssentials/spawn.yml");
	FileConfiguration fc = YamlConfiguration.loadConfiguration(spawn);

Poderia me falar como eu recarrego a configuração spawn.yml? tipo reloadConfig(); mas para o método a cima

Tipo salvar essas coisas?!

Se for, só fazer isto:

Após editar tudo que quizer, e querer salvar faz isto

 

try{
    fc.save(spawn);
}catch (IOException e){
    e.printStackTrace();
}

Isso seria igual ao saveConfig();

Link para o comentário
Compartilhar em outros sites

Tipo salvar essas coisas?!

Se for, só fazer isto:

Após editar tudo que quizer, e querer salvar faz isto

try{
    fc.save(spawn);
}catch (IOException e){
    e.printStackTrace();
}

Isso seria igual ao saveConfig();

Não, quero tipo dar um reload nessa configuração

Link para o comentário
Compartilhar em outros sites

Sim, este método ai, eu acho que serve para isto também.

pq se ele vai salvar, vai salvar as edições já feitas, então seria um reload no arquivo!

Tipo eu digito /setspawn ele cria o arquivo spawn.yml e salva, Quando eu digito /spawn ele não vai para nenhum lugar, Depois se eu der /reload no servidor ele recarrega o spawn.yml ae sim o /spawn funciona ;-;

Link para o comentário
Compartilhar em outros sites

Manda teu código!

if (cmd.getName().equalsIgnoreCase("SetSpawn")) {
			if (sender.hasPermission(API.c.getConfig().getString("SetSpawn_Permissao"))) {
				fc.set("spawn.world", p.getWorld().getName());
				fc.set("spawn.x", p.getLocation().getX());
				fc.set("spawn.y", p.getLocation().getY());
				fc.set("spawn.z", p.getLocation().getZ());
				fc.set("spawn.yaw", p.getLocation().getYaw());
				fc.set("spawn.pitch", p.getLocation().getPitch());
				p.sendMessage(API.c.getConfig().getString("Spawn_Definido").replaceAll("&", "§"));
				try {
					fc.save(spawn);
				} catch (IOException e) {
					e.printStackTrace();
Link para o comentário
Compartilhar em outros sites

if (cmd.getName().equalsIgnoreCase("SetSpawn")) {
			if (sender.hasPermission(API.c.getConfig().getString("SetSpawn_Permissao"))) {
				fc.set("spawn.world", p.getWorld().getName());
				fc.set("spawn.x", p.getLocation().getX());
				fc.set("spawn.y", p.getLocation().getY());
				fc.set("spawn.z", p.getLocation().getZ());
				fc.set("spawn.yaw", p.getLocation().getYaw());
				fc.set("spawn.pitch", p.getLocation().getPitch());
				p.sendMessage(API.c.getConfig().getString("Spawn_Definido").replaceAll("&", "§"));
				try {
					fc.save(spawn);
				} catch (IOException e) {
					e.printStackTrace();

Manda a parte que ele teleporta também!

Se possível mande o código todo.

Link para o comentário
Compartilhar em outros sites

Manda a parte que ele teleporta também!

Se possível mande o código todo.

public class SetSpawn implements CommandExecutor {
	
	File spawn = new File("plugins/dEssentials/spawn.yml");
	FileConfiguration fc = YamlConfiguration.loadConfiguration(spawn);
	

	@Override
	public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
		if (!(sender instanceof Player)) {
			sender.sendMessage(API.c.getConfig().getString("Comando_Console").replaceAll("&", "§"));
			return true;
			
		}
		
		Player p = (Player)sender;
		if (cmd.getName().equalsIgnoreCase("SetSpawn")) {
			if (sender.hasPermission(API.c.getConfig().getString("SetSpawn_Permissao"))) {
				fc.set("spawn.world", p.getWorld().getName());
				fc.set("spawn.x", p.getLocation().getX());
				fc.set("spawn.y", p.getLocation().getY());
				fc.set("spawn.z", p.getLocation().getZ());
				fc.set("spawn.yaw", p.getLocation().getYaw());
				fc.set("spawn.pitch", p.getLocation().getPitch());
				p.sendMessage(API.c.getConfig().getString("Spawn_Definido").replaceAll("&", "§"));
				try {
					fc.save(spawn);
				} catch (IOException e) {
					e.printStackTrace();
				}
				
			}else {
				p.sendMessage(API.c.getConfig().getString("Sem_Permissao").replaceAll("&", "§"));
			}
		}
		
		return false;
	}
	
}
public class Spawn implements CommandExecutor {
	
	File spawn = new File("plugins/dEssentials/spawn.yml");
	FileConfiguration fc = YamlConfiguration.loadConfiguration(spawn);

	@Override
	public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
		if (!(sender instanceof Player)) {
			sender.sendMessage(API.c.getConfig().getString("Comando_Console").replaceAll("&", "§"));
			return true;
		}
		
		Player p = (Player)sender;
		if (cmd.getName().equalsIgnoreCase("Spawn")) {
			if (p.hasPermission(API.c.getConfig().getString("Spawn_Permissao"))) {
				
				World world = Bukkit.getServer().getWorld(fc.getString("spawn.world"));
				double x = fc.getDouble("spawn.x");
				double y = fc.getDouble("spawn.y");
				double z = fc.getDouble("spawn.z");
				long yaw = fc.getLong("spawn.yaw");
				long pitch = fc.getLong("spawn.pitch");
				p.sendMessage(API.c.getConfig().getString("Spawn").replaceAll("&", "§"));
				
				p.teleport(new Location(world, x, y, z, yaw, pitch));
				
			}else {
				p.sendMessage(API.c.getConfig().getString("Sem_Permissao").replaceAll("&", "§"));
			}
		}
		return false;
	}

}
Link para o comentário
Compartilhar em outros sites

u.u

legal kkk

Seu plugin vai ser postado aqui no fórum??

Estou refazendo o meu essentials antigo mais organizado, Talvez eu poste, Plugin de spawn tem que fazer 3 classes kk uma para definir o spawn outra para ir ao spawn e a ultima para quando você morrer ir no spawn kk

Link para o comentário
Compartilhar em outros sites

Estou refazendo o meu essentials antigo mais organizado, Talvez eu poste, Plugin de spawn tem que fazer 3 classes kk uma para definir o spawn outra para ir ao spawn e a ultima para quando você morrer ir no spawn kk

Ué, faz apenas 2 classes, e só copia o comando de set, e o comando de ir, e dps faz a classe onde o player morre, e volta pro spawn.

Simples!

Link para o comentário
Compartilhar em outros sites

Ué, faz apenas 2 classes, e só copia o comando de set, e o comando de ir, e dps faz a classe onde o player morre, e volta pro spawn.

Simples!

Fiz assim copiei a do /spawn mas quando ele morre não vai para o spawn kk

@EventHandler
	public void SpawnE(PlayerDeathEvent e) {
		Player p = e.getEntity().getPlayer();
		
		 File spawn = new File("plugins/dEssentials/spawn.yml");
         FileConfiguration fc = YamlConfiguration.loadConfiguration(spawn);
         
         World world = Bukkit.getServer().getWorld(fc.getString("spawn.world"));
         double x = fc.getDouble("spawn.x");
         double y = fc.getDouble("spawn.y");
         double z = fc.getDouble("spawn.z");
         float yaw = (float)fc.getDouble("spawn.yaw");
         float pitch = (float)fc.getDouble("spawn.pitch");
             
         p.sendMessage(API.c.getConfig().getString("Spawn").replaceAll("&", "§"));
             
         Location l = new Location(world, x, y, z);
         l.setYaw(yaw);
         l.setPitch(pitch);
         p.teleport(l);
Link para o comentário
Compartilhar em outros sites

Tente isto:

 

@EventHandler
	public void SpawnE(PlayerDeathEvent e) {
	 Player p = e.getEntity();
	 File spawn = new File("plugins/dEssentials/spawn.yml");
         FileConfiguration fc = YamlConfiguration.loadConfiguration(spawn);
         
         if(p instanceOf Player){
         World world = Bukkit.getServer().getWorld(fc.getString("spawn.world"));
         double x = fc.getDouble("spawn.x");
         double y = fc.getDouble("spawn.y");
         double z = fc.getDouble("spawn.z");
         float yaw = (float)fc.getDouble("spawn.yaw");
         float pitch = (float)fc.getDouble("spawn.pitch");
             
         p.sendMessage(API.c.getConfig().getString("Spawn").replace("&", "§"));
             
         Location l = new Location(world, x, y, z);
         l.setYaw(yaw);
         l.setPitch(pitch);
         p.teleport(l);
	} 

Link para o comentário
Compartilhar em outros sites

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