[Projekt] SnakeEyes

Hier könnt ihr euch selbst, eure Homepage, euren Entwicklerstammtisch, Termine oder eure Projekte vorstellen.
Forumsregeln
Bitte Präfixe benutzen. Das Präfix "[Projekt]" bewirkt die Aufnahme von Bildern aus den Beiträgen des Themenerstellers in den Showroom. Alle Bilder aus dem Thema Showroom erscheinen ebenfalls im Showroom auf der Frontpage. Es werden nur Bilder berücksichtigt, die entweder mit dem attachement- oder dem img-BBCode im Beitrag angezeigt werden.

Die Bildersammelfunktion muss manuell ausgeführt werden, die URL dazu und weitere Details zum Showroom sind hier zu finden.

This forum is primarily intended for German-language video game developers. Please don't post promotional information targeted at end users.
Antworten
Benutzeravatar
FlashbackOwl
Beiträge: 76
Registriert: 13.10.2011, 17:14

[Projekt] SnakeEyes

Beitrag von FlashbackOwl »

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 ;)

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

Hier der Download:
SnakeEyes.rar
(177.21 KiB) 201-mal heruntergeladen
Linux wird nie das meistinstallierte Betriebssystem sein, wenn man bedenkt, wie oft man Windows neu installieren muss...
Benutzeravatar
Raidenkk
Beiträge: 64
Registriert: 27.11.2011, 02:32
Echter Name: Kevin
Wohnort: Bergkamen
Kontaktdaten:

Re: [Projekt] SnakeEyes

Beitrag von Raidenkk »

Hey hört sich echt cool an verliere nur nicht die Mutivation ich will es später mal Zocken :D
Antworten