Griever: Tabelle als Karte aus md. Array.

Beitrag lesen

  
// Cardsystems.js created by Ggriever  
var posx=0,posy=0;  
var karte = new Array();  
karte[0] = new Array();  
karte[0][0] = new Array("#00DF00",false,"");  
karte[0][1] = new Array("#00DF00",false,"");  
karte[0][2] = new Array("#00DF00",false,"");  
karte[0][3] = new Array("#00DF00",false,"");  
karte[0][4] = new Array("#00DF00",false,"");  
karte[0][5] = new Array("#00DF00",false,"");  
karte[1] = new Array();  
karte[1][0] = new Array("#00DF00",false,"");  
karte[1][1] = new Array("#00DF00",false,"");  
karte[1][2] = new Array("#00DF00",false,"");  
karte[1][3] = new Array("#00DF00",false,"");  
karte[1][4] = new Array("#00DF00",false,"");  
karte[1][5] = new Array("#00DF00",false,"");  
karte[2] = new Array();  
karte[2][0] = new Array("#00DF00",false,"");  
karte[2][1] = new Array("#00DF00",false,"");  
karte[2][2] = new Array("#00DF00",false,"");  
karte[2][3] = new Array("#00DF00",false,"");  
karte[2][4] = new Array("#00DF00",false,"");  
karte[2][5] = new Array("#00DF00",false,"");  
karte[3] = new Array();  
karte[3][0] = new Array("#00DF00",false,"");  
karte[3][1] = new Array("#00DF00",false,"");  
karte[3][2] = new Array("#00DF00",false,"");  
karte[3][3] = new Array("#00DF00",false,"");  
karte[3][4] = new Array("#00DF00",false,"");  
karte[3][5] = new Array("#00DF00",false,"");  
karte[4] = new Array();  
karte[4][0] = new Array("#00DF00",false,"");  
karte[4][1] = new Array("#00DF00",false,"");  
karte[4][2] = new Array("#00DF00",false,"");  
karte[4][3] = new Array("#00DF00",false,"");  
karte[4][4] = new Array("#00DF00",false,"");  
karte[4][5] = new Array("#00DF00",false,"");  
var f = window.open("about:blank","","");  
f.document.write("<table cellspacing=0 cellpadding=0 border=0 style='table-layout:fixed;'>")  
for(var i = 0;i<karte.length;i++)  
{  
  f.document.write("<tr>")  
  if(karte[posx-(i-2)]&&karte[posx-(i-2)][posy-2])  f.document.write("<td style=\"width:12px;height:12px;background-color:"+karte[posx-(i-2)][posy-2][0]+";\">&nbsp;</td>");else f.document.write("<td style=\"width:12px;height:12px;background-color:black;\">&nbsp;</td>")  
  if(karte[posx-(i-2)]&&karte[posx-(i-2)][posy-1])  f.document.write("<td style=\"width:12px;height:12px;background-color:"+karte[posx-(i-2)][posy-1][0]+";\">&nbsp;</td>");else f.document.write("<td style=\"width:12px;height:12px;background-color:black;\">&nbsp;</td>")  
  if(karte[posx-(i-2)]&&karte[posx-(i-2)][posy])    f.document.write("<td style=\"width:12px;height:12px;background-color:"+karte[posx-(i-2)][posy][0]+";\">&nbsp;</td>");else f.document.write("<td style=\"width:12px;height:12px;background-color:black;\">&nbsp;</td>")  
  if(karte[posx-(i-2)]&&karte[posx-(i-2)][(posy+1)])f.document.write("<td style=\"width:12px;height:12px;background-color:"+karte[posx-(i-2)][(posy+1)][0]+";\">&nbsp;</td>");else f.document.write("<td style=\"width:12px;height:12px;background-color:black;\">&nbsp;</td>")  
  if(karte[posx-(i-2)]&&karte[posx-(i-2)][(posy+2)])f.document.write("<td style=\"width:12px;height:12px;background-color:"+karte[posx-(i-2)][(posy+2)][0]+";\">&nbsp;</td>");else f.document.write("<td style=\"width:12px;height:12px;background-color:black;\">&nbsp;</td>")  
  f.document.write("</tr>")  
}  
f.document.write("</table>")  

Natürlich ist dieser Code noch nicht wirklich vollständig. Da kommt dann noch die Bewegungsfunktion hinzu, die aktuelle Position wird angezeigt. Evtl. Gebäude werden via PNG-bildchen draufgelegt usw. Dabei muss ich nun noch bedenken, wie ich die Karte umdrehe ...

Aber derzeit kommt es mir nur auf die Länge bzw. die Größe des Scriptes an. Kann man das, was ich jetzt gepostet hab, noch irgendwo kürzen?

MfG
Griever

PS: Wie kann man einen Zeilenumbruch verhindern?