Glr eu to usando um enum que guarda a stream de cada imagem respectivamente a um id, porém ele ta dando um certo erro na hora de gerar uma imagem, pois o que o código faz é isso aqui:
for(int i = 0; i <= mapa.getWidth()/tamanhoDosPisos; i++) {
for(int j = 0; j <= mapa.getHeight()/tamanhoDosPisos; j++) {
Random randomiza = new Random();
valor = randomiza.nextInt(materiais.length);
piso = ImageIO.read(materiais[valor].getStream());
System.out.println(valor);
System.out.println("x: " + i*tamanhoDosPisos + ", y: " + j*tamanhoDosPisos);
g.drawImage(piso,(i*tamanhoDosPisos),(j*tamanhoDosPisos), null);
}
}
ele gera um valor aleatório e então pega da classe Enum a stream referente a esse id, só que quando eu faço ImageIO,write(…) a imagem só fica toda preta com a penas uma ou duas das imagens desenhadas, aqui o resultado:

Mas depois q eu fui na pasta e abrir o arquivo, agr fica normal como deveria aparecer, mas quando gera pela primeira vez a img, a imagem não aparece na pasta antes da aplicação encerrar, então o arquivo não encontra a imagem.