G
Guest
Gast
Hallo,
ich versuche gerade ein Spiel zu schreiben, bei dem man mit Kugeln schießen kann.
Ich habe eine Klasse Kugel definiert.
Ich benutze sie so:
Jetzt kann ich die Kugel fliegen lassen.
Mein Problem:
Wenn ich öfter die Methode neueKugelStarten() aufrufe, dann spielt das ganze verückt(Kugel wird immer schneller).
Was muss ich tun, dass ich mehrere Kugeln habe, die alle gleich schnell fliegen?
ich versuche gerade ein Spiel zu schreiben, bei dem man mit Kugeln schießen kann.
Ich habe eine Klasse Kugel definiert.
Code:
import java.awt.Color;
import java.awt.Graphics;
public class Kugel {
private int x,y;
public Kugel(int x,int y)
{
setPosition(x,y);
}
public void anzeigen(Graphics g)
{
g.setColor(Color.BLUE);
g.fillOval(x, y, 10, 10);
}
public void setPosition(int x,int y)
{
this.x=x;
this.y=y;
}
public int getX()
{
return this.x;
}
public int getY()
{
return this.y;
}
Ich benutze sie so:
Code:
Kugel k;
public void paint(Graphics g)
{
k.anzeigen(g);
}
public void setPosition(int x,int y,Kugel k)
{
k.setPosition(x,y);
repaint();
}
public void plusX(Kugel k)
{
k.setPosition(k.getX()+1,k.getY());
}
public void neueKugelStarten()
{
k=new Kugel(100,100);
new Thread() {
@Override public void run() {
while(true)
{
try
{
Thread.sleep(1);
}
catch(Exception e)
{
}
plusX(k);
repaint();
}
}
}.start();
}
Jetzt kann ich die Kugel fliegen lassen.
Mein Problem:
Wenn ich öfter die Methode neueKugelStarten() aufrufe, dann spielt das ganze verückt(Kugel wird immer schneller).
Was muss ich tun, dass ich mehrere Kugeln habe, die alle gleich schnell fliegen?