JürgenB: Spielfeld von Snake transparent darstellen

Beitrag lesen

Hallo,

for (var x=0; x < grid.width; x++) {  
for (var y=0; y < grid.height; y++) {  
switch (grid.get(x, y)) {  
case EMPTY: //Leere Zellen  
ctx.clearRect(); 

wird hier alles gelöscht?

break;  
case SNAKE: //Schlangenteile  
ctx.fillStyle = "#0ff";  
break;  
case FRUIT: //Futter  
ctx.fillStyle = "#f00";  
break;  
}  
ctx.fillRect(x*tw, y*th, tw, th); //Zeichnet ein Rechteck  

welcher fillStyle wird genommen, wenn weder SNAKE noch FRUIT?

}  
}  

Nur eine Idee: erst alles löschen, und dann nur da zeichnen, wo auch was ist, also

ctx.clearRect();  
for (var x=0; x < grid.width; x++) {  
  for (var y=0; y < grid.height; y++) {  
    switch (grid.get(x, y)) {  
      case SNAKE: //Schlangenteile  
        ctx.fillStyle = "#0ff";  
        ctx.fillRect(x*tw, y*th, tw, th); //Zeichnet ein Rechteck  
      break;  
      case FRUIT: //Futter  
        ctx.fillStyle = "#f00";  
        ctx.fillRect(x*tw, y*th, tw, th); //Zeichnet ein Rechteck  
      break;  
    }  
  }  
}  

Gruß Jürgen