[Projekt] SnakeEyes
Verfasst: 18.12.2011, 18:20
Ich hab vorgestern angefangen ein kleines "Snake" zu programmieren [in VB.NET] und wollte meine bisherigen Fortschritte präsentieren :)
Dran gearbeitet hab ich bis jetzt ca. 3 Stunden und dank Zudo konnte es auch schnell weiter gehen (hatte ein kleines Problem mit einer Variablen-Deklaration).
Ich will jetzt nicht irgendwas Großes zeigen und erwarte auch kein großes Lob, nur find' ich es motivierend einfach mal seine Fortschritte jemandem zu präsentieren.
In diesem Fall missbrauche ich halt einfach euch ;)
Ich hab gleichzeitig mit diesem Projekt in VB.NET angefangen und versuch ohne irgendwelche Lernressourcen auszukommen, sondern einfach durch ausprobieren zu Lernen.. Aus Fehler lernt man heisst es ja.
Ich werde hier immer, wenn ich nennenswert weitergekommen bin,die Version hochladen und freue mich dann über Kritik.
SnakeEyes
Es geht um...nunja einen Snake Clone halt nur mit einem Auge ;)
Es gibt noch keine Kollisionserkennung der Wände, keine Punktzahl, keine "Äpfel" (In meinem Falle 'isst' das Auge Linsen :D) und auch sonst bewegt sich nur das Auge in dem Form mit konstanter Geschwindigkeit hin und her.
Mir ging es halt erstmal um die Abfrage von der Richtung vom Auge und um die Schleifen, zum Lernen eben.
Hier mein Code ;)
Hier der Download:
Dran gearbeitet hab ich bis jetzt ca. 3 Stunden und dank Zudo konnte es auch schnell weiter gehen (hatte ein kleines Problem mit einer Variablen-Deklaration).
Ich will jetzt nicht irgendwas Großes zeigen und erwarte auch kein großes Lob, nur find' ich es motivierend einfach mal seine Fortschritte jemandem zu präsentieren.
In diesem Fall missbrauche ich halt einfach euch ;)
Ich hab gleichzeitig mit diesem Projekt in VB.NET angefangen und versuch ohne irgendwelche Lernressourcen auszukommen, sondern einfach durch ausprobieren zu Lernen.. Aus Fehler lernt man heisst es ja.
Ich werde hier immer, wenn ich nennenswert weitergekommen bin,die Version hochladen und freue mich dann über Kritik.
SnakeEyes
Es geht um...nunja einen Snake Clone halt nur mit einem Auge ;)
Es gibt noch keine Kollisionserkennung der Wände, keine Punktzahl, keine "Äpfel" (In meinem Falle 'isst' das Auge Linsen :D) und auch sonst bewegt sich nur das Auge in dem Form mit konstanter Geschwindigkeit hin und her.
Mir ging es halt erstmal um die Abfrage von der Richtung vom Auge und um die Schleifen, zum Lernen eben.
Hier mein Code ;)
Code: Alles auswählen
Public Class snakeeyes
Dim game As Boolean
Dim dir_left As Boolean
Dim dir_up As Boolean
Dim dir_down As Boolean
Dim dir_right As Boolean
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
End Sub
Private Sub Form1_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown
'Pfeiltaste nach oben
If e.KeyCode = Keys.Up Then
'Charakter.Top -= 50
If dir_right = True Then
Charakter.Image.RotateFlip(RotateFlipType.Rotate90FlipXY)
Charakter.Refresh()
dir_up = True
dir_right = False
End If
If dir_left = True Then
Charakter.Image.RotateFlip(RotateFlipType.Rotate90FlipNone)
Charakter.Refresh()
dir_left = False
dir_up = True
End If
If dir_down = True Then
Charakter.Image.RotateFlip(RotateFlipType.Rotate180FlipNone)
Charakter.Refresh()
dir_down = False
dir_up = True
End If
End If
'Pfeiltaste nach unten
If e.KeyCode = Keys.Down Then
'Charakter.Top += 50
If dir_up = True Then
Charakter.Image.RotateFlip(RotateFlipType.Rotate180FlipNone)
Charakter.Refresh()
dir_up = False
dir_down = True
End If
If dir_left = True Then
Charakter.Image.RotateFlip(RotateFlipType.Rotate90FlipXY)
Charakter.Refresh()
dir_left = False
dir_down = True
End If
If dir_right = True Then
Charakter.Image.RotateFlip(RotateFlipType.Rotate90FlipNone)
Charakter.Refresh()
dir_right = False
dir_down = True
End If
End If
'Pfeiltaste nach links
If e.KeyCode = Keys.Left Then
'Charakter.Left -= 50
If dir_right = True Then
Charakter.Image.RotateFlip(RotateFlipType.Rotate180FlipNone)
Charakter.Refresh()
dir_right = False
dir_left = True
End If
If dir_down = True Then
Charakter.Image.RotateFlip(RotateFlipType.Rotate90FlipNone)
Charakter.Refresh()
dir_down = False
dir_left = True
End If
If dir_up = True Then
Charakter.Image.RotateFlip(RotateFlipType.Rotate90FlipX)
Charakter.Refresh()
dir_up = False
dir_left = True
End If
End If
'Pfeiltaste nach rechts
If e.KeyCode = Keys.Right Then
'Charakter.Left += 50
If dir_up = True Then
Charakter.Image.RotateFlip(RotateFlipType.Rotate90FlipNone)
Charakter.Refresh()
dir_up = False
dir_right = True
End If
If dir_down = True Then
Charakter.Image.RotateFlip(RotateFlipType.Rotate90FlipX)
Charakter.Refresh()
dir_down = False
dir_right = True
End If
If dir_left = True Then
Charakter.Image.RotateFlip(RotateFlipType.Rotate180FlipNone)
Charakter.Refresh()
dir_right = True
dir_left = False
End If
End If
End Sub
Private Sub Charakter_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Charakter.Click
End Sub
Public Sub New()
' Dieser Aufruf ist für den Designer erforderlich.
InitializeComponent()
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
dir_left = False
dir_up = True
dir_down = False
dir_right = False
game = True
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
If dir_left = True Then
Charakter.Left -= 2
End If
If dir_right = True Then
Charakter.Left += 2
End If
If dir_up = True Then
Charakter.Top -= 2
End If
If dir_down = True Then
Charakter.Top += 2
End If
End Sub
End Class