Ir para conteúdo
  • 0

[Resolvido] Reset de mapa


DaviDEV

Pergunta

13 respostass a esta questão

Posts Recomendados

Voce pode fazer por schematic ai toda vez que a partida acabar voce coloca para recarregar schematic

 

Primeiro voce cria uma File recuperando o valor da schematic

Depois se carrega ela depois voce cola ela em tal mundo.

 

Vou dar um exemplo mas faço o seu ;)

	@SuppressWarnings({ "deprecation", "unused" })
	private static void carregarArena(World world, File file,com.sk89q.worldedit.Vector origin) throws DataException, IOException, MaxChangedBlocksException
	{
		EditSession edits = new EditSession(new BukkitWorld(world), 999999999);
		CuboidClipboard c = CuboidClipboard.loadSchematic(file);
		c.paste(edits, origin, true);
	}
	
	  public static void pasteBlockOneSchematic(Player p) throws DataException, IOException {
	        try {
	        	carregarArena(p.getWorld(), new File("sla/schematic.schematic"), BukkitUtil.toVector(p.getLocation()));
	        } catch (final MaxChangedBlocksException e) {
	            e.printStackTrace();
	        }
	    }
Editado por Karamujo
Link para o comentário
Compartilhar em outros sites

Guest GamesTdai :D

O certo era vc salvar o local e o id do bloco em uma config, depois carregar essa lista de locais com seus devidos blocos e transformar a String que ta na config em Location, eu acho, e dar setType, Para colocar o bloco.

Cuidado, se for mt grande o mapa pode gerar lag, pode ate crashar o servidor, é bom nao usar for e sim schedulerRepiting, cuidado, nao use BukkitRunnable, pq com ele vc nao pode modificar o mundo(setar o bloco)

Link para o comentário
Compartilhar em outros sites

O certo era vc salvar o local e o id do bloco em uma config, depois carregar essa lista de locais com seus devidos blocos e transformar a String que ta na config em Location, eu acho, e dar setType, Para colocar o bloco.

Cuidado, se for mt grande o mapa pode gerar lag, pode ate crashar o servidor, é bom nao usar for e sim schedulerRepiting, cuidado, nao use BukkitRunnable, pq com ele vc nao pode modificar o mundo(setar o bloco)

Você pode me passar um código de exemplo ou se não o seu skype?

Link para o comentário
Compartilhar em outros sites

Guest GamesTdai :D

Você pode me passar um código de exemplo ou se não o seu skype?

O Codigo que eu usaria é bem complexo e eu nunca fiz ele ainda, nao precisei, mas eu sei fazer, nao tem como te dar um exemplo.

Link para o comentário
Compartilhar em outros sites

 

Voce pode fazer por schematic ai toda vez que a partida acabar voce coloca para recarregar schematic

 

Primeiro voce cria uma File recuperando o valor da schematic

Depois se carrega ela depois voce cola ela em tal mundo.

 

Vou dar um exemplo mas faço o seu ;)

	@SuppressWarnings({ "deprecation", "unused" })
	private static void carregarArena(World world, File file,com.sk89q.worldedit.Vector origin) throws DataException, IOException, MaxChangedBlocksException
	{
		EditSession edits = new EditSession(new BukkitWorld(world), 999999999);
		CuboidClipboard c = CuboidClipboard.loadSchematic(file);
		c.paste(edits, origin, true);
	}
	
	  public static void pasteBlockOneSchematic(Player p) throws DataException, IOException {
	        try {
	        	carregarArena(p.getWorld(), new File("sla/schematic.schematic"), BukkitUtil.toVector(p.getLocation()));
	        } catch (final MaxChangedBlocksException e) {
	            e.printStackTrace();
	        }
	    }

Uma dúvida o segundo método ele faz gerar a schematic no mundo do jogador? 

 

 

 

@EDIT: Resolvido!!

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

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