Ir para conteúdo

World Regeneration


Ducky

Posts Recomendados

Olá, andei pesquisando e testando alguns métodos de regenerar um mundo após o reinicio do servidor, porém nada tão eficiente..

Alguém sabe um método eficiente de realizar isso? Alguma classe pronta, qualquer..

Link para o comentário
Compartilhar em outros sites

cria uma hashmap de blocos

public void onDisable(){
	convertBlocks();
	HandlerList().unRegisterAll();
}

private HashMap<Integer/*ID*/, Location> RGlocs = new HashMap<>();
private HashMap<Integer/*ID*/, EventType> RGevent = new HashMap<>();
private HashMap<Integer/*ID*/, Material> RGmat = new HashMap<>();

public enum EventType{ Placed, Break }

private int lastID = 0;

public void convertBlocks(){
	while(RGlocs.size > 0){
    	lastID--;
        if(RGevent.get(lastID) == EventType.Placed){
          	RGlocs.get(lastID).getBlock().setType(Material.AIR);
        }else if(RGevent.get(lastID) == EventType.Break){
         	RGlocs.get(lastID).getBlock().setType(RGmat.get(lastID));
        }
    }
}

este é só um exemplo, envez de salvar em hashmaps, vc pode criar uma classe para arquivar individualmente os blocos, seus tipos, oque tinham dentro caso fossem baus, etc

e tbm esqueci de incluir os eventos pra qdo o player quebrar, arquivar no hashmap

 

qualquer duvida só perguntar ^^

Link para o comentário
Compartilhar em outros sites

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