import java.awt.*;
import java.applet.*;

//-------------------------------------------------------------------------//
public class animacja extends Applet implements Runnable
  {
  private Thread anim = null;
  Image kula;

  int i =0;
//--------------------------------------------------------------------------
public void init()
{
	add(new Button("Jeszcze raz"));
	kula = getImage(getDocumentBase(),"kula.gif");
}
//--------------------------------------------------------------------------
   public void start()
   {
   if (anim==null)
     {
      anim = new Thread(this);
      anim.start();
     }
   }
//------------------------------------------------------------------------- 
public void run()
{
 while (true)
 {
  repaint();
  try
   {
   double w = i/60+5;
   if (i<800) Thread.sleep((int)(( 1+Math.sin(w) )*10));
   else Thread.sleep(10);
   }
   catch (Exception e)
   {
   }
 }
}
//--------------------------------------------------------------------------
    public void paint(Graphics g)
    { if (i<800) i++;
      pokazObj(g,i,sin(i));
    } 
//-----------------------------------------------------------------------//
public boolean action(Event evt, Object arg) {
i=0;
return true;  // i zakończ metodę
}
//-----------------------------------------------------------------------//
int sin(int x){
	double w =x;
	double zwrot = (-Math.abs(Math.sin(w/100)) + 2) *130;
	return (int)zwrot;
}  
//-------------------------------------------------------------------------
void pokazObj(Graphics g,int x,int y) 
 {
	g.drawImage(kula, x, y,49, 49, this);
 }
}