Torsten: Probs mit JS

Hallo !
Ich habe nun Stunden an diesem JS rumgeschraubt aber irgendwie gehts noch nicht 100%.
Das Problem ist recht weit unten.... (zZ auskommentiert)

//Breakout
//by TRANSISTOR

document.write('<LAYER ID="BRICK" LEFT=5 TOP=20 WIDTH=300 HEIGHT=200>');
document.write('<CENTER>');
for (x=0;x<=10;x++) document.write('<IMG SRC="brick.gif" HEIGHT=5 WIDTH=10 NAME='+x+'>');
document.write('</CENTER>');
document.write('</LAYER>');
document.write('<LAYER NAME="PADDLE" LEFT=135 TOP=280 WIDTH=50 HEIGHT=3><IMG SRC="paddle.gif" HEIGHT=3 WIDTH=50></LAYER>');
document.write('<LAYER NAME="BALL" LEFT=150 TOP=180 WIDTH=5 HEIGHT=5><IMG SRC="ball.gif" HEIGHT=5 WIDTH=5></LAYER>');

var xp,xb,yb,ud,lr,ex,punkte;
punkte=0;
ex=0;
ud=-5;
lr=5;
xp=142;
xb=150;
yb=180;

calculate();

function calculate()
  {
    document.onKeyPress = chkkey;
    document.captureEvents(Event.KEYPRESS);
    document.layers.PADDLE.left=xp;
    document.layers.BALL.left=xb;
    document.layers.BALL.top=yb;

if (ud<0)
     {
      if (yb>5)
       {
        if ((yb<=28)&&(yb>=22)&&(xb<=205)&&(xb>=195)&&(document[10].src==brick.src))
         {
          ud=5+Math.round(Math.random());
          document[10].src=brickb.src;
          punkte++;
         }
        if ((yb<=28)&&(yb>=22)&&(xb<=195)&&(xb>=185)&&(document[9].src==brick.src))
         {
          ud=5+Math.round(Math.random());
          document[9].src=brickb.src;
          punkte++;
         }

...geht so weiter mit diversen abfragen...

yb=yb+ud;
       }
      else
       {
        ud=5+Math.round(Math.random());
        yb=yb+ud;
       }
     }
    else
     {
      if (yb<276)
       {
        if ((yb<=28)&&(yb>=22)&&(xb<=205)&&(xb>=195)&&(document[10].src==brick.src))
         {
          ud=-5-Math.round(Math.random());
          document[10].src=brickb.src;
          punkte++;
         }
        if ((yb<=28)&&(yb>=22)&&(xb<=195)&&(xb>=185)&&(document[9].src==brick.src))
         {
          ud=-5-Math.round(Math.random());
          document[9].src=brickb.src;
          punkte++;
         }

...geht so weiter mit diversen abfragen...

yb=yb+ud;
       }
      else
       {
        if ((xb>=xp-2)&&(xb<=xp+50))
         {
          ud=-5-Math.round(Math.random());
          yb=yb+ud;
         }
        else ex=1;      
       }
     }

if (lr>0)
     {
      if (xb<285) xb=xb+lr;
      else
       {
        lr=-5-Math.round(Math.random());
        xb=xb+lr;
       }
     }
    else
     {
      if (xb>15) xb=xb+lr;
      else
       {
        lr=5+Math.round(Math.random());
        xb=xb+lr;
       }
     }
    if ((ex==1)||(punkte==19))
     {
      document.releaseEvents(Event.KEYPRESS);
      document.write('<LAYER NAME="END" LEFT=1 TOP=1 WIDTH=298 HEIGHT=298>');
      document.write('<CENTER><BR><FONT SIZE=+2>GAME OVER</FONT>');
//if (punkte<19) document.write('Sie haben '+punkte+' erreicht!');
//      else document.write('Sie haben alles abgeraeumt!');

---------------------------------------------------------------------------------------------------------------------------------------

Hier ist nun das Problem!
Ich bekomme immer die Fehlermeldung, das punkte nicht definiert ist (nicht bekannt, wenn ich den Kommentar freigebe).
Warum um Himmels willen das ?
Ich habe das doch als global Variable eingerichtet!? Liegt es daran das ich hier einen neuen Layer einrichte ?

Gibt es eigentlich eine Moeglichkeit einen Layer wieder loszuwerden ?

Ausserdem faengt Netscape beim schreiben in den Neuen Layer immer an den Statusbalken
unten Links zu bewegen (ohne anzuhalten). Wieso dies ?

Gibt es eine Moeglichkeit das document.write mit einem Zielfenster zu versehen ?
(ich moechte hier aus diesem JS etwas in ein anderes Fenster schreiben..)

Vielen Dank

Torsten (der sich ueber eine Antwort riesig freuen wuerde..)

---------------------------------------------------------------------------------------------------------------------------------------

document.write('<BR><BR><A HREF="break.html" TARGET="_self">Noch einmal</A></CENTER>');
      document.write('</LAYER>');
      return;
     }
    else setTimeout("calculate();",1);
  }

function chkkey(e)
{
  var taste;
  taste=e.which;
  if ((taste==44)&&(xp>=25)) xp=xp-25;
  if ((taste==46)&&(xp<=225)) xp=xp+25;
}