Hey,
ich weiß es gibt schon viele Snake-Code Beispiele, allerdings bin ich dort nicht fündig gewurden (oder habe nicht gut genug gesucht).
Mein Problem ist es, dass ich nicht weiß, wie ich den Körper der Snake erstelle, bzw. diesen dem Kopf folgen lassen kann. Bin noch blutiger Anfänger.
Jemand Vorschläge wie man das am besten umsetzen kann? Evtl. mit einer Liste?
#edit: Meine Idee war es, das letzte Glied des Bodys bei jedem Tick hinter den Kopf zu setzen, sodass sich nicht der ganze Body verschieben muss, sondern nur das letzte Glied die Postistion einnimmt an der voher der Kopf war. Also bspw.:
K = Kopf
B = Body
B4-B3-B2-B1-K -> B3-B2-B1-B4-K -> B2-B1-B4-B3-K -> B1-B4-B3-B2-K -> B4-B3-B2-B1-K
#edit2: Problem hat sich gelöst, danke!
Hi,
das Beispiel ist zwar für die Konsole - aber da siehst du schnell wie man's angehen kann:
https://codereview.stackexchange.com/questions/127515/first-c-program-snake-game
Überdies würde ich dir dringend empfehlen deinen Code komplett aufzuarbeiten.
Was dort steht verstehst du selbst in wenigen Wochen nicht mehr...
LG
Hi Jan_kie,
du mußt dir merken, welchen Weg der "Kopf" genommen hat, d.h. an welcher Stelle er links oder rechts abgeboten ist Dann müssen alle Elemente des "Körpers" der Reihe nach diesem Weg folgen.
Das ist allerdings nicht einfach zu implementieren, wenn du Code schreibst, der so aussieht. Du solltest dich zuerst einmal mit den Konzepten der Objektorientierten Programmierung auseinandersetzen. Ich empfehle auch einen Blick in:
[FAQ] Wie finde ich den Einstieg in C#?
[Tutorial] Zeichnen in Windows-Forms-Programmen (Paint/OnPaint, PictureBox)
[Artikel] Drei-Schichten-Architektur
Das OpenBook vom Rheinwerk-Verlag: 🛈
Weeks of programming can save you hours of planning
Hallo Jan_kie
Du kannst dir mal ein altes Beispiel von mir anschauen:
(DoublebufferedPanel einfach durch das WindowsForms "Panel" ersetzten).
Gruss Peter
--
Microsoft MVP - Visual Developer ASP / ASP.NET, Switzerland 2007 - 2011