Ergebnis 16 bis 16 von 16
-
17-04-2011, 14:50 #16
AW: DIV links/rechts/ober/unter anderem DIV erstellen
Naja in der Theorie hast Du eine Liste mit den einzelnen Schlangenelementen. Die Liste ist sortiert, der Schlangenkopf ist ganz vorne, das Schlangenende am Ende der Liste. Jedes Element der Liste repräsentiert ein Schlangenglied auf dem Bildschirm und hat zusätzliche Informationen, wie z.B. die x/y Position innerhalb des Rasters (ersetze Liste durch Array).
Wenn die Schlange sich bei einem Tick bewegen soll, dann bedeutet das normalerweise, dass am Kopf der Schlange ein neues Element in Bewegungsrichtung angehängt wird, und dass der Schwanz der Schlange um ein Element gekürzt wird. Jetzt kann man also hergehen und immer wieder Elemente generieren und löschen, aber im Grunde ist das eher unschön, außerdem kann man eben, wie bereits gesagt, das Schwanzende zur neuen Kopfposition machen. Dazu muss man lediglich das letzte Element aus der Liste nehmen, es vorne wieder einketten und gleichzeitig die Positionen anpassen. Und zwar die Rasterposition, als auch die x/y Koordinaten des entsprechenden HTML-Elements. Das letzte Element springt also quasi von ganz hinten nach ganz vorne. Da Snake nur mit einem vorgegebenen Rhythmus arbeitet, ist die Animation damit normalerweise abgeschlossen. Dadurch werden alle Elemente permanent wiederverwendet.
Soll die Schlange verlängert werden, weil der Kopf z.B. über eine Pille gefahren ist, so werden zusätzliche Elemente benötigt. Diese werden als Kopie des letzten Elements an das Ende der Liste gehängt. Die Kopie bekommt die gleiche Position des Schlangenschwanzes, das HTML-Element liegt deckungsgleich auf dem letzten Element. Wenn die Schlange sich nun bewegt, dann wird wieder das letzte Element an den Kopf bewegt, da aber noch ein oder mehrere Elemente an der gleichen Position liegen, verharrt der Schlangenschwanz einen bis n-Ticks länger auf dieser Position, die Schlange wächst also.
Zur Kollisionserkennung geht man die Liste durch und vergleicht die neuberechnete, nächste Position des Kopfes mit den bestehenden Einträgen der Liste. Gibt es bereits ein Element mit den gleichen Koordinaten, ist das Spiel zu Ende.1. Get people to play Space Taxi
2. Sell real estates on neptun
3. Profit!
IE is not a browser, it is a scream.
Outside of a dog, a book is man's best friend. Inside of a dog, it's too dark to read.
Ähnliche Themen
-
div box von links nach rechts laufend
Von Nici123 im Forum JavaScriptAntworten: 1Letzter Beitrag: 26-07-2009, 23:01 -
Links-Rechts Konflikt
Von dkdenz im Forum FunAntworten: 0Letzter Beitrag: 21-08-2007, 10:56 -
Laufbilder links/rechts scrollen???
Von techno im Forum JavaScriptAntworten: 2Letzter Beitrag: 27-07-2006, 18:27 -
quellcode ändern (links / rechts)
Von fd0311 im Forum JavaScriptAntworten: 1Letzter Beitrag: 23-08-2004, 19:07 -
Links und Rechts Scrolling is unterschiedlich !
Von visual im Forum JavaScriptAntworten: 8Letzter Beitrag: 08-06-2004, 11:45
Lesezeichen