mam kod:
package arkanoid;
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
import java.awt.geom.*;
class Kulka extends Ellipse2D.Float
{
Pole plansza;
int dx,dy;
Belka b;
Kulka(Pole plansza,int x,int y,int dx,int dy)
{
this.x=x;
this.y=y;
this.width=10;
this.height=10;
this.plansza=plansza;
this.dx=dx;
this.dy=dy;
}
@SuppressWarnings("static-access")
void nextKrok()
{
x+=dx;
y+=dy;
if(getMinX()<0 || getMaxX()>plansza.getWidth()) dx=-dx;
if(getMinY()<0 || getMaxY()>plansza.getHeight()) dy=-dy;
if(getY()>165) { dy=-dy;}
plansza.repaint();
}
}
class SilnikKulki extends Thread
{
Kulka a;
SilnikKulki(Kulka a)
{
this.a=a;
start();
}
@Override
public void run()
{
try
{
while(true)
{
a.nextKrok();
sleep(15);
}
}
catch(InterruptedException e){}
}
}
class Belka extends Rectangle2D.Float
{
//static public int x;
//static public int y;
Belka(int x)
{
this.x=x;
this.y=170;
this.width=60;
this.height=10;
}
void setX(int x)
{
this.x=x;
}
}
class Pole extends JPanel implements MouseMotionListener
{
Belka b=new Belka(100);
Kulka a=new Kulka(this,100,100,1,1);
Pole()
{
super();
addMouseMotionListener(this);
new SilnikKulki(a);
}
public void paintComponent(Graphics g)
{
super.paintComponent(g);
Graphics2D g2d=(Graphics2D)g;
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_ON);
g2d.fill(a);
g2d.fill(b);
}
public void mouseMoved(MouseEvent e)
{
b.setX(e.getX()-50);
repaint();
}
public void mouseDragged(MouseEvent e)
{
}
}
public class Arkanoid extends JApplet
{
public void init()
{
setContentPane(new Pole());
}
}
jak dorobić obługe belki - nie mam pojęcia jak to zrobić proszę o pomoc