====== Snake ====== Minimalversion: Schlange wird immer länger (zieht den Schwanz nicht nach). * Datenstruktur: 2-dimensionales Array $n \times n$ const n = 20; // legt ein n mal n Array an, mit Nullen gefüllt. let feld = (new Array(n)).fill(0).map(()=>(new Array(n)).fill(0)) Damit die Schlange den Schwanz nachziehen kann, speichern man die Koordinaten (als Arrays mit 2 Elementen) in ein Array ''p''. Mit ''p.push([x,y])'' wird einen neue Koordinate angehängt. Mit ''p=p.slice(1)'' wird das erste Element entfernt. Soll die Schlange länger werden, wird die aktuelle Position einfach mehrfach anghängt. ==== UI ==== Tabelle mit $n \times n$ Zellen, die per CSS quadratisch gemacht werden und deren Hintergrundfarbe man setzen kann (''element.style.backgroundcolor="#00f";'') Tastenabfrage, siehe [[.:jumpnrun|Jump'n Run]]