Hi! Versuche grade mithilfe eines Tutorials Pong zu schreiben, aber irgendwie wird das Player Paddel nicht angezeigt.. Der Code ist fast identisch mit dem aus dem Tutorial, kann mir irgendwer sagen was ich falsch mache?
Code:
Pong-Class
Paddle-Class
Als IDE nutze ich Eclipse, Java Version ist 8.
Schonmal danke im Vorraus!
MfG, Menulln
//Edit
Sehe grade dass es auch einen Spiele-Programmierung Bereich gibt, sorry!
Code:
Pong-Class
Java:
package de.menulln.pong;
import java.awt.BorderLayout;
import java.awt.Canvas;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.image.BufferStrategy;
import java.awt.image.BufferedImage;
import javax.swing.JFrame;
public class Pong extends Canvas implements Runnable {
private static final long serialVersionUID = 1L;
public static PlayerPaddle player;
InputHandle ih;
public final int WIDTH = 320;
public final int HEIGHT = WIDTH / 4 * 3;
public final int SCALE = 2;
public final Dimension SIZE = new Dimension(WIDTH * SCALE, HEIGHT * SCALE);
public final String NAME = "Pong";
BufferedImage image = new BufferedImage(WIDTH * SCALE, HEIGHT * SCALE, BufferedImage.TYPE_INT_RGB);
public boolean running = false;
private JFrame frame;
public Pong(){
frame = new JFrame(NAME);
setMinimumSize(SIZE);
setMaximumSize(SIZE);
setPreferredSize(SIZE);
frame.setLayout(new BorderLayout());
frame.add(this, BorderLayout.CENTER);
frame.pack();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setResizable(false);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
ih = new InputHandle();
frame.addKeyListener(ih);
player = new PlayerPaddle(10, 60);
}
public void run(){
while (running){
tick();
render();
}
}
public synchronized void start(){
running = true;
new Thread(this).start();
}
public synchronized void stop(){
running = false;
System.exit(0);
}
public void tick(){
player.tick(this);
}
public void render(){
BufferStrategy bs = getBufferStrategy();
if (bs == null){
createBufferStrategy(3);
return;
}
Graphics g = bs.getDrawGraphics();
player.render(g);
g.drawImage(image, 0, 0, getWidth(), getHeight(), null);
g.dispose();
bs.show();
}
public static void main(String[] args){
new Pong().start();
}
}
Paddle-Class
Java:
package de.menulln.pong;
import java.awt.Color;
import java.awt.Graphics;
public class PlayerPaddle {
int x;
int y;
int width = 15;
int height = 40;
boolean goingUp = false;
boolean goingDown = false;
public PlayerPaddle(int x, int y){
this.x = x;
this.y = y;
}
public void tick(Pong pong){
if(goingUp == true){
y--;
}
if(goingDown == true){
y++;
}
}
public void render(Graphics g){
g.setColor(Color.WHITE);
g.fillRect(x, y, width, height);
}
}
Als IDE nutze ich Eclipse, Java Version ist 8.
Schonmal danke im Vorraus!
MfG, Menulln
//Edit
Sehe grade dass es auch einen Spiele-Programmierung Bereich gibt, sorry!