dieRennsemmel (extends Hamster)

(Johannes Tümler, MatNr: 162885, 30.04.2002)

Leider habe ich es nicht geschafft, den Hamster zu vollenden, ich habe mich hauptsächlich auf die Laufroutinen konzentriert, wodurch das Sammeln des Korns absolut primitiv bis jetzt ausgefallen ist.
Jedoch läuft er (bei mir) reibungslos, er verursachte wärend keine kompletten Entwicklungsphase nicht eine einzige Kollision.

Ich hoffe nun auch, daß es zu keinen Extensions mehr kommt.

Der Ansatz:

felder.gif (4175 Byte)

Ich benutze zum Speichern der Felder einen Baum, der jeweils 6 Kindknoten hat.
Jeder dieser Kindknoten ist wiederum ein Feld mit 6 Kindknoten.

Weiterhin benutze ich ein statisches 2-Dimensionales Koordinatensystem mit den Koordinaten x und y.
Es besitzt also jedes Feld eindeutige Koordinaten, sowie Koordinaten des Vorgängerfeldes, zur besseren Orientierung.

Das Koordinatensystem berechnet sich wie folgt:

eins nach oben = y+2
eins nach links oben = x-1,y+1
eins nach links unten = x-1,y-1
eins nach unten = y-2
eins nach rechts unten = x+1,y-1
eins nach rechts oben = x+1,y+1

Der übliche Bewegungsablauf sieht folgendermaßen aus:

Nebenbei existieren noch diverse Methoden

Körner sammelt er zwar schon, jedoch bisher maximal 20. (Ich habe noch keine Sammelroutine geschrieben, jedoch ist die Methode Field.pathFinder dafür hervorragend geeignet, in diesem Fall genutzt zu werden (dafür war sie gedacht))

Nun etwas detaillierter zu den einzelnen Klassen:

wichtig: wenn ich z.b. von der Methode setNextUp spreche, so gelten die Aussagen auch für alle weiteren Methoden dieser Art (also setNextLUp, setNextRUp, setNextLDn, setNextRDn, setNextDn)

Die einzelnen Klassen beschrieben:

Die Klasse "Feld" (Field.java)

Die Klasse Node2.java

Die Hauptklasse dieRennsemmel.java

Weiterhin stehen viele Kommentare im Quelltext selbst.
Ich habe mich bemüht, alles möglichst verständlich zu machen, jedoch können im Streß evtl. Dinge vergessen, oder nicht genügend worden sein, in diesem Fall bitte ich um Rückmeldung, damit ich dies klären kann.

So, nun viel Spaß damit.

Ich weiß, der Hamster ist nicht perfekt, und den Wettbewerb wird er wohl kaum gewinnen, da er nicht vollendet werden konnte, jedoch sollte es zur Demonstration eines lauffähigen Hamsters (hoffentlich) ausreichend sein.

Mit freundlichen Grüßen,

  Johannes Tümler