Programinha Iniciante

Pessoal, tou iniciando Java, tou querendo fazer uma animaçãozinha SIMPLES, o design gráfico ta feito, só não consigo interagir, o código está abaixo, a caixa já se meche pra direita, esquerda e baixo, mais queria q ela caisse naturalmente sendo ao todo 20 caixas, se cair fora do triangulo o jogo perde, se cair as 20 dentro do triangulo eu ganho, alguêm me dá uma luz ? sei q é com Runable mais tou meio perdido ainda, Vlw !!!

[code]import javax.swing.;
import java.awt.
;
import java.awt.event.*;

public class Piramide extends JFrame implements Runnable {
public int posCol = 10;
public int posBaixo = 10;
private int desce = 15;
public Thread th = new Thread(this);
public int [] c = {80, 80, 80, 80, 80, 80};
public int [] b = {250, 250, 250, 250, 250, 250};

public void run() {
    while (true) {
        c[5] =30;
        b[5] = 200;
        for (int i = 0; i < c.length-1; i++)
            c[i] = c[i+1];
        for (int i = 0; i < b.length-1; i++)
            b[i] = b[i+1];
        try { th.sleep(500); } catch (Exception e) { }
        repaint();
    }
}

public Piramide() { 
    super("Pirâmide");
    this.setSize(500,500); this.setVisible(true);
    this.addKeyListener(new KeyAdapter() {
       public void keyPressed(KeyEvent e) {
           if (e.getKeyCode() == 39) executarDireita();
           else if (e.getKeyCode() == 37) executarEsquerda(); 
           else if (e.getKeyCode() == 40) executarBaixo();
           
       }
    });
    
}
public void executarDireita() { 
    posCol += 2; 
    repaint(); 
}
public void executarEsquerda() { 
    posCol -= 2; 
    repaint(); 
}
public void executarBaixo() { 
    posBaixo +=3;
    repaint();
    th = new Thread(this);
    th.start();
}
public void paint(Graphics g) { 
    super.paint(g);
    g.fillRect(50+posCol,50+posBaixo,30,30);
    g.drawLine(250,300,100,500);
    g.drawLine(250,300,400,500); 
}
public static void main(String [] args) { 
    new Piramide(); 
}

}[/code]

Dê uma lida nos tutoriais do Ponto V:
Ponto V - O loop de animação
A primeira animação
Desenho direto - Active Rendering

tou tentando =/ se pelo menos conseguir descer a porcaria do quadrado automaticamente acho q o resto já fica mais fácil hehehe

Beleza, leia os tutos e se tiver dúvida poste aqui. Eles vão mostrar como fazer uma bolinha andar e quicar nos cantos da tela.