ImageIcon imagem = new ImageIcon("res\\gameover.png");
graficos.drawImage(imagem.getImage(), 0, 0, this);
Quando esse bloco é executado, a imagem aparece com erro, suas dimensões são distorcidas; ela sai da tela um pouco, isso quando não fica encolhida.
Gostaria de saber se o erro está no código acima. Se sim, queria saber se existe um meio de consertar isso.
Sem ver o código completo, fica difícil responder.
Está sobrescrevendo o paintComponent
ou o paint
?
Você não deveria ficar criando ImageIcon dentro do seu método de renderização.
Aliás, nem se usa ImageIcon pra isso, você só precisa de um objeto do tipo Image.
Inicialize ele fora do método de renderização e depois reutilize a mesma instância.
tô usando o painComponet
@Override
public void paintComponent(Graphics g){
Graphics2D graficos = (Graphics2D) g;
if(emJogo == true){
graficos.drawImage(fundo, 0, 0, null);
graficos.drawImage(player.getImagem(), player.getX(), player.getY(), this);
List tiros = player.getTiros();
for(int i = 0; i < tiros.size(); i++){
Tiro m = tiros.get(i);
m.load();
graficos.drawImage(m.getImagem(), m.getX(), m.getY(), this);
}
for(int j = 0; j < enemy1.size(); j++){
Enemy1 in = enemy1.get(j);
in.load();
graficos.drawImage(in.getImagem(), in.getX(), in.getY(), this);
}
} else {
ImageIcon imagem = new ImageIcon(“res\gameover.png”);
graficos.drawImage(imagem.getImage(), 0, 0, this);
}
g.dispose();
}