Witam, mam problem ponieważ próbuje wyświetlić 2 obrazki terrain.png i char.png i wyświetla sie tylko ten
który jest podawany ostatni w kodzie w tym przypadku terrain.png
Kod Okna:
package Me.Minecraft2D.Windows;
import javax.swing.JFrame;
import javax.swing.JPanel;
import Me.Minecraft2D.Engine.Player;
import My.Minecraft2D.Terrain.Terrain;
public class MainWindow extends JFrame
{
int xOkna = 994;
int yOkna = 1280;
static String nazwaOkna = "Minecraft2D Alpha 0.0.1";
public MainWindow()
{
super(nazwaOkna);
JPanel Player = new Player();
add(Player);
JPanel Terrain = new Terrain();
add(Terrain);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
setSize(yOkna, xOkna);
repaint();
}
}
Kod Terrain:
package My.Minecraft2D.Terrain;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.JPanel;
public class Terrain extends JPanel
{
private BufferedImage imageTerrain;
public Terrain() {
super();
File imageFile = new File("terrain.png");
try {
imageTerrain = ImageIO.read(imageFile);
} catch (IOException e) {
System.err.println("Blad odczytu obrazka");
e.printStackTrace();
}
Dimension dimension = new Dimension(imageTerrain.getWidth(), imageTerrain.getHeight());
}
public void paintComponent(Graphics g) {
Graphics2D g2d = (Graphics2D) g;
g2d.drawImage(imageTerrain, 0, 0, null);
}
}
Kod char:
package Me.Minecraft2D.Engine;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.JPanel;
import java.awt.Dimension;
public class Player extends JPanel
{
int xPosPlayer = 0;
int yPosPlayer = 0;
private BufferedImage imagePlayer;
public Player() {
super();
File imageFile = new File("char.png");
try {
imagePlayer = ImageIO.read(imageFile);
} catch (IOException e) {
System.err.println("Blad odczytu obrazka");
e.printStackTrace();
}
Dimension dimension = new Dimension(imagePlayer.getWidth(), imagePlayer.getHeight());
}
@Override
public void paintComponent(Graphics g) {
Graphics2D g2d = (Graphics2D) g;
g2d.drawImage(imagePlayer, xPosPlayer, yPosPlayer, null);
}
}
PS char.png jest na przezroczystym tle;-)
Prosze o szybka pomoc