# Snake n+1-Thread



## DrDuck (4. Mai 2010)

Hey Community, 

es tut mir leid, dass ich zu diesem Thema nochmal einen Thread aufmache.
Ich hab aber noch ein paar Fragen, die in den anderen Threads nicht beantwortet wurden
oder für mich nicht ganz verständlich.

Also, wie man der Überschrift entnehmen kann, habe ich vor ein kleines Snake spiel zu programmieren
(so simpel wie es geht).
Derzeit habe ich in Java halt nur Anfängererfahrung, daher Grundlagen bis zu Klassen. Keine Ahnung
von SWING oder was hier sonst noch so genannt wurde.

Jetzt hab ich mir schonmal eine Art UML Diagramm gebastelt (kann ich auch noch nicht so).

Größtest Problem was ich zurzeit habe ist, ich weiß nicht, wie ich die einzelnen Spielelemente umsetzen kann.
Der Ball (das Futter) als Kreis zeichnen, denke ich, aber für die Schlange!? (Panel/Line) aber wie geht das dann mit
der Darstellung, wenn die Schlange sich um die Ecke bewegt? 
Und die Spielzone nehm ich als Panel mit Border dachte ich oder halt Rectangle.

Hab keine AHnung wie ich so direkt anfangen soll.

Grüße 
DrDuck


----------



## Steev (4. Mai 2010)

Was soll man jetzt dazu sagen? Irgendwie verstehe ich nicht, wieso sich am Anfang alle ein Spiel aussuchen, wo Spiele doch so ziemlich das komplexeste ist, was man machen kann...

Wie dem auch sei:
Ich würde die Snake aus verschiedenen Segmenten erstellen, wo dann immer eines mehr hinzukommt. Für den Anfang reicht es eigendlich, wenn man ein Raster verwendet, und in der Snake-Klasse nur die einzelnen Segmente, dieses Rasters verwaltet. Dann lässt sich auch recht einfach eine Kollision überprüfen.
Das Raster währe dann imho ein zweidimensionaler Array deiner Zeichenobjekt-Klasse. An jeder "Zelle" kann dann halt nur ein einziges Zeichenobjekt liegen. Die Bewegung der Snake erfolgt über das ändern der Indizierung der Snake-Segmente im Raster.

Das ist jetzt eine ganz einfache Snake-Version. Ich kann dir nur empfehlen das Spiele-Tutorial von Quaxli durchzuarbeiten, da stehen die für dich wichtigen Grundbegriffe drin.

Gruß
Steev


----------



## Tomate_Salat (4. Mai 2010)

Steev hat gesagt.:


> Was soll man jetzt dazu sagen? Irgendwie verstehe ich nicht, wieso sich am Anfang alle ein Spiel aussuchen, wo Spiele doch so ziemlich das komplexeste ist, was man machen kann...


Frag ich mich auch



DrDuck hat gesagt.:


> Derzeit habe ich in Java halt nur Anfängererfahrung, daher Grundlagen bis zu Klassen. Keine Ahnung
> von SWING oder was hier sonst noch so genannt wurde.
> 
> Größtest Problem was ich zurzeit habe ist, ich weiß nicht, wie ich die einzelnen Spielelemente umsetzen kann.
> ...



Sorry, aber das klingt nach: Ich habe das erste Kapitel gelesen, weis wie ich eine Klasse erstelle mit einem String-Attribut, getter und setter. Du hast keine Ahnung von GUI-Programmierung und willst eigene Komponenten schreiben?! 

Erstmal Basics lernen :rtfm: dann kann man sich an komplexere Gebiete ranwagen


----------

