begin process at 2012 02 10 02:07:27
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Jeux

 > SNAKE

SNAKE


 Information sur la source

Note :
Aucune note
Catégorie :Jeux Classé sous :snake, never, classic Niveau :Débutant Date de création :11/06/2007 Date de mise à jour :11/06/2007 14:54:54 Vu / téléchargé :4 556 / 2 362

Auteur : gloomy64

Ecrire un message privé
Site perso
Commentaire sur cette source (8)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
J'ai vu qu'il en existait deja sur se site, mais je propose mon alternative au snake. Très simple. Avec sauvegarde de score.

Source

  • '________________________________________________________________'
  • 'Nom: David Chardonnens '
  • 'But: Snake pour NeverHappy (projet MAS6) '
  • '________________________________________________________________'
  • Option Explicit
  • Dim PathOfTrue, Begin As Boolean
  • Dim strTemp, Direction As String
  • Dim max, speed, randomL, randomT, i, quit As Integer
  • Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
  • Select Case KeyCode
  • Case 49
  • 'Dès que l'on appui sur la touche 1 le temps vaut 30
  • speed = 30
  • Call FixedSpeed
  • Case 50
  • 'Dès que l'on appui sur la touche 2 le temps vaut 70
  • speed = 70
  • Call FixedSpeed
  • Case 51
  • 'Dès que l'on appui sur la touche 3 le temps vaut 140
  • speed = 140
  • Call FixedSpeed
  • Case 32
  • 'La touche espace met en pause tout les timers en sauvegardant le timer activé
  • timDirection.Enabled = False
  • Call MsgBox("Pause", vbInformation, "Never|Snake")
  • timDirection.Enabled = True
  • Case 27
  • 'La touche excape mets en pause et sauvegarde le dernier timer activé
  • timDirection.Enabled = False
  • If MsgBox("Voulez-vous vraiment quitter?", vbOKCancel, "Never|Snake") = vbOK Then
  • End
  • Else
  • timDirection.Enabled = True
  • End If
  • 'Dès que l'on appui sur une touche fléchées, on sauvegarde l'ancienne valeur est l'on active le timer correspondant
  • Case 37
  • If Direction <> "Right" Then
  • Direction = "Left"
  • End If
  • Case 38
  • If Direction <> "Down" Then
  • Direction = "Up"
  • End If
  • Case 39
  • If Direction <> "Left" Then
  • Direction = "Right"
  • End If
  • Case 40
  • If Direction <> "Up" Then
  • Direction = "Down"
  • End If
  • 'Dès que l'on appuis sur une touche numérique on retaille la fenetre
  • Case 52 To 57
  • timDirection.Enabled = False
  • frmGame.Width = CInt(KeyCode - 52) * 360 + 2400
  • Call Form_Resize
  • Call MsgBox("Vous avez changer de taille!", vbInformation, "NeverHappy | Snake")
  • timDirection.Enabled = True
  • End Select
  • End Sub
  • Private Sub Form_Load()
  • 'On prends la taille du Form si c'est la premiere ouverture, est on dit que begin est true
  • If frmGame.Height <> frmGame.Width Then
  • Call Form_Resize
  • Begin = True
  • End If
  • 'On commence a droite
  • Direction = "Right"
  • 'On place le score a la limite du terrain
  • lblScore.Left = frmGame.Width - lblScore.Width
  • 'On déclare la valeur de base
  • speed = 70
  • Call FixedSpeed
  • 'On ouvre le fichier que le premier demarrage
  • If Begin Then
  • 'Avant tout on crée le fichier de score si il n'existe pas
  • strTemp = "Le " + CStr(Date) + " " + CStr(Time)
  • Open "ScoreSnake.nev" For Append As #1
  • Write #1, strTemp
  • Close #1
  • Begin = False
  • End If
  • 'On place la pomme aléatoirement
  • Randomize
  • randomL = CInt((((Rnd * 100) + 1) * max))
  • randomT = CInt((((Rnd * 100) + 1) * max))
  • shpApple(0).Left = randomL - (randomL Mod 120)
  • shpApple(0).Top = randomT
  • shpApple(0).Top = shpApple(shpApple.Count - 1).Left - (shpApple(shpApple.Count - 1).Left Mod 120)
  • End Sub
  • Private Sub FixedSpeed()
  • 'Tout les timers ont la valeur de speed comme interval
  • timDirection.Interval = speed
  • End Sub
  • Private Sub Form_Resize()
  • 'On prends la taille du Form
  • frmSnake.Height = frmGame.Width
  • frmSnake.Width = frmGame.Width
  • frmGame.Height = frmGame.Width
  • max = frmSnake.Height / 120
  • 'On place le score a la limite du terrain
  • lblScore.Left = frmGame.Width - lblScore.Width
  • End Sub
  • Private Sub timDirection_Timer()
  • 'Si il n'y a pas qu'un seul cube de seprent on cherche ceux qui doivent suivre
  • If shpSnake.Count <> 1 Then
  • Call SnakeBehind
  • End If
  • 'On deplace le premier des cubes de serpent et si on arrive au bout du form
  • If Direction = "Up" Then
  • shpSnake(0).Top = shpSnake(0).Top - 120
  • If shpSnake(0).Top < 0 Then
  • Call Dead
  • End If
  • ElseIf Direction = "Down" Then
  • shpSnake(0).Top = shpSnake(0).Top + 120
  • If shpSnake(0).Top > frmGame.Height - shpSnake(0).Height Then
  • Call Dead
  • End If
  • ElseIf Direction = "Left" Then
  • shpSnake(0).Left = shpSnake(0).Left - 120
  • If shpSnake(0).Left < 0 Then
  • Call Dead
  • End If
  • ElseIf Direction = "Right" Then
  • shpSnake(0).Left = shpSnake(0).Left + 120
  • If shpSnake(0).Left > frmGame.Width - shpSnake(0).Width Then
  • Call Dead
  • End If
  • End If
  • 'On appel la detection de collision
  • Call detection
  • 'PathOfTrue est la voix qui permet d'activer une autre direction
  • PathOfTrue = True
  • End Sub
  • Private Sub detection()
  • 'Si onn touche une pomme, on appel la nouvelle pomme
  • If (shpSnake(0).Left = shpApple(shpApple.Count - 1).Left) And (shpSnake(0).Top = shpApple(shpApple.Count - 1).Top) Then
  • Call EatApple
  • End If
  • 'Si on se touche on appel la fin du jeu
  • For i = 1 To shpSnake.Count - 1
  • If (shpSnake(0).Left = shpSnake(i).Left) And (shpSnake(0).Top = shpSnake(i).Top) Then
  • Call Dead
  • Exit For
  • End If
  • Next i
  • End Sub
  • Private Sub SnakeBehind()
  • 'Le dernier cube du serpent suis son prédécéceur
  • For i = shpSnake.Count - 1 To 1 Step -1
  • shpSnake(i).Left = shpSnake(i - 1).Left
  • shpSnake(i).Top = shpSnake(i - 1).Top
  • Next i
  • End Sub
  • Private Sub EatApple()
  • 'On mets en un valeur en random, jusqu'au bout du Form
  • Randomize
  • randomL = CInt((((Rnd * 100) + 1) * max))
  • Randomize
  • randomT = CInt((((Rnd * 100) + 1) * max))
  • 'On appel une nouvelle pomme
  • Load shpApple(shpApple.Count)
  • shpApple(shpApple.Count - 1).Visible = True
  • shpApple(shpApple.Count - 2).Visible = False
  • shpApple(shpApple.Count - 1).Left = randomL - (randomL Mod 120)
  • 'Si la pomme est déplace la pomme si elle est sur un de nos cubes
  • For i = 0 To shpSnake(shpSnake.Count - 1)
  • If (shpApple(shpApple.Count - 1).Left = shpSnake(i).Left) And (shpApple(shpApple.Count - 1).Top = shpSnake(i).Top) Then
  • shpApple(shpApple.Count - 1).Left = shpApple(shpApple.Count - 1) + 120
  • End If
  • Next i
  • 'On déplace la pomme si elle est au bout du terrain
  • If shpApple(shpApple.Count - 1).Left Mod 120 <> 0 Then
  • shpApple(shpApple.Count - 1).Left = shpApple(shpApple.Count - 1).Left - (shpApple(shpApple.Count - 1).Left Mod 120)
  • End If
  • 'On place la pomme sur le terrain
  • shpApple(shpApple.Count - 1).Top = randomT
  • shpApple(shpApple.Count - 1).Top = shpApple(shpApple.Count - 1).Left - (shpApple(shpApple.Count - 1).Left Mod 120)
  • 'Si la pomme est sur un de nos cubes on la déplace
  • For i = 0 To shpSnake(shpSnake.Count - 1)
  • If (shpApple(shpApple.Count - 1).Left = shpSnake(i).Left) And (shpApple(shpApple.Count - 1).Top = shpSnake(i).Top) Then
  • shpApple(shpApple.Count - 1).Top = shpApple(shpApple.Count - 1) + 120
  • End If
  • Next i
  • 'On déplace la pomme si elle est au bout du terrain
  • If shpApple(shpApple.Count - 1).Top Mod 120 <> 0 Then
  • shpApple(shpApple.Count - 1).Top = shpApple(shpApple.Count - 1).Top - (shpApple(shpApple.Count - 1).Top Mod 120)
  • End If
  • 'On mets a jour le score
  • lblScore.Caption = CInt(lblScore.Caption) + 1
  • 'On Charge un nouveau cube
  • Load shpSnake(shpSnake.Count)
  • shpSnake(shpSnake.Count - 1).Visible = True
  • 'On déplace le cube juste derriere son prédécéceur pour eviter une collision au prochain mouvement
  • If Direction = "Down" Or Direction = "Up" Then
  • If Direction = "Up" Then
  • shpSnake(shpSnake.Count - 1).Top = shpSnake(shpSnake.Count - 1).Top + 120
  • Else
  • shpSnake(shpSnake.Count - 1).Top = shpSnake(shpSnake.Count - 1).Top - 120
  • End If
  • Else
  • If Direction = "Left" Then
  • shpSnake(shpSnake.Count - 1).Left = shpSnake(shpSnake.Count - 1).Left + 120
  • Else
  • shpSnake(shpSnake.Count - 1).Left = shpSnake(shpSnake.Count - 1).Left - 120
  • End If
  • End If
  • End Sub
  • Private Sub Dead()
  • 'On rends tout les timer en faux pour eviter que l'utilisateur meurt plusieurs fois
  • timDirection.Enabled = False
  • 'On enregistre le score
  • Open "ScoreSnake.nev" For Append As #1
  • Write #1, lblScore.Caption
  • Close #1
  • 'On signial a l'utilisateur qu'il a perdu, son score, et on quitte le jeu via l'interface Never
  • If MsgBox("Vous avez perdu!" + vbCrLf + "Vous avez mangé " + Str(shpApple.Count - 1) + " pommes" + vbCrLf + "Voulez-vous quitter?", vbYesNo, "Never|Snake") = vbYes Then
  • End
  • End If
  • 'On décharge tout se qui aurait pu etre charger durant la partie
  • If shpApple.Count > 1 Then
  • For i = 1 To shpApple.Count - 1
  • Unload shpApple(i)
  • Next i
  • For i = 1 To shpSnake.Count - 1
  • Unload shpSnake(i)
  • Next i
  • End If
  • 'On remet en le serpent
  • shpSnake(0).Left = 0
  • shpSnake(0).Top = 0
  • Direction = "Right"
  • timDirection = True
  • 'On rend visible la première pomme
  • shpApple(0).Visible = True
  • 'On affiche le score
  • lblHide.Caption = ""
  • Open "ScoreSnake.nev" For Input As #1
  • While Not EOF(1)
  • Input #1, strTemp
  • If lblHide.Caption <> "" Or lblHide.Caption <> " " Then
  • lblHide.Caption = lblHide.Caption + vbCrLf + strTemp
  • Else
  • lblHide.Caption = strTemp
  • End If
  • Wend
  • Close #1
  • Call MsgBox("Score sauvé jusqu'à aujourd'hui: " + vbCrLf + lblHide.Caption, vbInformation, "NeverHappy | Snake")
  • 'On remet le score a 0
  • lblScore.Caption = "0"
  • End Sub
'________________________________________________________________'
'Nom: David Chardonnens                                          '
'But: Snake pour NeverHappy (projet MAS6)                        '
'________________________________________________________________'

Option Explicit
Dim PathOfTrue, Begin As Boolean
Dim strTemp, Direction As String
Dim max, speed, randomL, randomT, i, quit As Integer

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
    Select Case KeyCode
        Case 49
'Dès que l'on appui sur la touche 1 le temps vaut 30
            speed = 30
            Call FixedSpeed
        Case 50
'Dès que l'on appui sur la touche 2 le temps vaut 70
            speed = 70
            Call FixedSpeed
        Case 51
'Dès que l'on appui sur la touche 3 le temps vaut 140
            speed = 140
            Call FixedSpeed
        Case 32
'La touche espace met en pause tout les timers en sauvegardant le timer activé
            timDirection.Enabled = False
            Call MsgBox("Pause", vbInformation, "Never|Snake")
            timDirection.Enabled = True
        Case 27
'La touche excape mets en pause et sauvegarde le dernier timer activé
            timDirection.Enabled = False
            If MsgBox("Voulez-vous vraiment quitter?", vbOKCancel, "Never|Snake") = vbOK Then
                End
            Else
                timDirection.Enabled = True
            End If
    
'Dès que l'on appui sur une touche fléchées, on sauvegarde l'ancienne valeur est l'on active le timer correspondant
        Case 37
            If Direction <> "Right" Then
                Direction = "Left"
            End If
        Case 38
            If Direction <> "Down" Then
                Direction = "Up"
            End If
        Case 39
            If Direction <> "Left" Then
                Direction = "Right"
            End If
        Case 40
            If Direction <> "Up" Then
                Direction = "Down"
            End If
'Dès que l'on appuis sur une touche numérique on retaille la fenetre
        Case 52 To 57
            timDirection.Enabled = False
            frmGame.Width = CInt(KeyCode - 52) * 360 + 2400
            Call Form_Resize
            Call MsgBox("Vous avez changer de taille!", vbInformation, "NeverHappy | Snake")
            timDirection.Enabled = True
    End Select
End Sub

Private Sub Form_Load()
'On prends la taille du Form si c'est la premiere ouverture, est on dit que begin est true
    If frmGame.Height <> frmGame.Width Then
        Call Form_Resize
        Begin = True
    End If
    
'On commence a droite
    Direction = "Right"
    
'On place le score a la limite du terrain
    lblScore.Left = frmGame.Width - lblScore.Width
    
'On déclare la valeur de base
    speed = 70
    Call FixedSpeed
    
'On ouvre le fichier que le premier demarrage
    If Begin Then
'Avant tout on crée le fichier de score si il n'existe pas
        strTemp = "Le " + CStr(Date) + "   " + CStr(Time)
        Open "ScoreSnake.nev" For Append As #1
            Write #1, strTemp
        Close #1
        Begin = False
    End If
    
'On place la pomme aléatoirement
    Randomize
    randomL = CInt((((Rnd * 100) + 1) * max))
    randomT = CInt((((Rnd * 100) + 1) * max))
    shpApple(0).Left = randomL - (randomL Mod 120)
    shpApple(0).Top = randomT
    shpApple(0).Top = shpApple(shpApple.Count - 1).Left - (shpApple(shpApple.Count - 1).Left Mod 120)
End Sub

Private Sub FixedSpeed()
'Tout les timers ont la valeur de speed comme interval
    timDirection.Interval = speed
End Sub

Private Sub Form_Resize()
'On prends la taille du Form
    frmSnake.Height = frmGame.Width
    frmSnake.Width = frmGame.Width
    frmGame.Height = frmGame.Width
    max = frmSnake.Height / 120
    
'On place le score a la limite du terrain
    lblScore.Left = frmGame.Width - lblScore.Width
End Sub

Private Sub timDirection_Timer()
'Si il n'y a pas qu'un seul cube de seprent on cherche ceux qui doivent suivre
    If shpSnake.Count <> 1 Then
        Call SnakeBehind
    End If
    
'On deplace le premier des cubes de serpent et si on arrive au bout du form
    If Direction = "Up" Then
        shpSnake(0).Top = shpSnake(0).Top - 120
        If shpSnake(0).Top < 0 Then
            Call Dead
        End If
    ElseIf Direction = "Down" Then
        shpSnake(0).Top = shpSnake(0).Top + 120
        If shpSnake(0).Top > frmGame.Height - shpSnake(0).Height Then
            Call Dead
        End If
    ElseIf Direction = "Left" Then
        shpSnake(0).Left = shpSnake(0).Left - 120
        If shpSnake(0).Left < 0 Then
            Call Dead
        End If
    ElseIf Direction = "Right" Then
        shpSnake(0).Left = shpSnake(0).Left + 120
        If shpSnake(0).Left > frmGame.Width - shpSnake(0).Width Then
            Call Dead
        End If
    End If
    
'On appel la detection de collision
    Call detection
    
'PathOfTrue est la voix qui permet d'activer une autre direction
    PathOfTrue = True
End Sub

Private Sub detection()
'Si onn touche une pomme, on appel la nouvelle pomme
    If (shpSnake(0).Left = shpApple(shpApple.Count - 1).Left) And (shpSnake(0).Top = shpApple(shpApple.Count - 1).Top) Then
        Call EatApple
    End If
    
'Si on se touche on appel la fin du jeu
    For i = 1 To shpSnake.Count - 1
        If (shpSnake(0).Left = shpSnake(i).Left) And (shpSnake(0).Top = shpSnake(i).Top) Then
            Call Dead
            Exit For
        End If
    Next i
End Sub

Private Sub SnakeBehind()
'Le dernier cube du serpent suis son prédécéceur
    For i = shpSnake.Count - 1 To 1 Step -1
        shpSnake(i).Left = shpSnake(i - 1).Left
        shpSnake(i).Top = shpSnake(i - 1).Top
    Next i
End Sub

Private Sub EatApple()
'On mets en un valeur en random, jusqu'au bout du Form
    Randomize
    randomL = CInt((((Rnd * 100) + 1) * max))
    Randomize
    randomT = CInt((((Rnd * 100) + 1) * max))
    
'On appel une nouvelle pomme
    Load shpApple(shpApple.Count)
    shpApple(shpApple.Count - 1).Visible = True
    shpApple(shpApple.Count - 2).Visible = False
    shpApple(shpApple.Count - 1).Left = randomL - (randomL Mod 120)
'Si la pomme est déplace la pomme si elle est sur un de nos cubes
    For i = 0 To shpSnake(shpSnake.Count - 1)
        If (shpApple(shpApple.Count - 1).Left = shpSnake(i).Left) And (shpApple(shpApple.Count - 1).Top = shpSnake(i).Top) Then
            shpApple(shpApple.Count - 1).Left = shpApple(shpApple.Count - 1) + 120
        End If
    Next i
'On déplace la pomme si elle est au bout du terrain
    If shpApple(shpApple.Count - 1).Left Mod 120 <> 0 Then
        shpApple(shpApple.Count - 1).Left = shpApple(shpApple.Count - 1).Left - (shpApple(shpApple.Count - 1).Left Mod 120)
    End If
    
'On place la pomme sur le terrain
    shpApple(shpApple.Count - 1).Top = randomT
    shpApple(shpApple.Count - 1).Top = shpApple(shpApple.Count - 1).Left - (shpApple(shpApple.Count - 1).Left Mod 120)
'Si la pomme est sur un de nos cubes on la déplace
    For i = 0 To shpSnake(shpSnake.Count - 1)
        If (shpApple(shpApple.Count - 1).Left = shpSnake(i).Left) And (shpApple(shpApple.Count - 1).Top = shpSnake(i).Top) Then
            shpApple(shpApple.Count - 1).Top = shpApple(shpApple.Count - 1) + 120
        End If
    Next i
'On déplace la pomme si elle est au bout du terrain
    If shpApple(shpApple.Count - 1).Top Mod 120 <> 0 Then
        shpApple(shpApple.Count - 1).Top = shpApple(shpApple.Count - 1).Top - (shpApple(shpApple.Count - 1).Top Mod 120)
    End If
    
'On mets a jour le score
    lblScore.Caption = CInt(lblScore.Caption) + 1
    
'On Charge un nouveau cube
    Load shpSnake(shpSnake.Count)
    shpSnake(shpSnake.Count - 1).Visible = True
'On déplace le cube juste derriere son prédécéceur pour eviter une collision au prochain mouvement
    If Direction = "Down" Or Direction = "Up" Then
        If Direction = "Up" Then
            shpSnake(shpSnake.Count - 1).Top = shpSnake(shpSnake.Count - 1).Top + 120
        Else
            shpSnake(shpSnake.Count - 1).Top = shpSnake(shpSnake.Count - 1).Top - 120
        End If
    Else
        If Direction = "Left" Then
            shpSnake(shpSnake.Count - 1).Left = shpSnake(shpSnake.Count - 1).Left + 120
        Else
            shpSnake(shpSnake.Count - 1).Left = shpSnake(shpSnake.Count - 1).Left - 120
        End If
    End If
End Sub

Private Sub Dead()
'On rends tout les timer en faux pour eviter que l'utilisateur meurt plusieurs fois
    timDirection.Enabled = False
    
'On enregistre le score
    Open "ScoreSnake.nev" For Append As #1
        Write #1, lblScore.Caption
    Close #1
    
'On signial a l'utilisateur qu'il a perdu, son score, et on quitte le jeu via l'interface Never
    If MsgBox("Vous avez perdu!" + vbCrLf + "Vous avez mangé " + Str(shpApple.Count - 1) + " pommes" + vbCrLf + "Voulez-vous quitter?", vbYesNo, "Never|Snake") = vbYes Then
        End
    End If
    
'On décharge tout se qui aurait pu etre charger durant la partie
    If shpApple.Count > 1 Then
        For i = 1 To shpApple.Count - 1
            Unload shpApple(i)
        Next i
        For i = 1 To shpSnake.Count - 1
            Unload shpSnake(i)
        Next i
    End If
    
'On remet en le serpent
    shpSnake(0).Left = 0
    shpSnake(0).Top = 0
    Direction = "Right"
    timDirection = True
    
'On rend visible la première pomme
    shpApple(0).Visible = True
    
'On affiche le score
    lblHide.Caption = ""
    Open "ScoreSnake.nev" For Input As #1
        While Not EOF(1)
            Input #1, strTemp
            If lblHide.Caption <> "" Or lblHide.Caption <> " " Then
                lblHide.Caption = lblHide.Caption + vbCrLf + strTemp
            Else
                lblHide.Caption = strTemp
            End If
        Wend
    Close #1
    Call MsgBox("Score sauvé jusqu'à aujourd'hui: " + vbCrLf + lblHide.Caption, vbInformation, "NeverHappy | Snake")
    
'On remet le score a 0
    lblScore.Caption = "0"
End Sub

 Conclusion

Ce jeu fit partie dûn projet que j'ai voulut faire pour mes cours.
Si vous trouvez un bug je le prends volontier pour le corrigé.

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

11 juin 2007 03:33:54 :
On enregistre le score dans le fichier avant de quitter.
11 juin 2007 03:35:33 :
Erreur dans le code
11 juin 2007 14:54:55 :
Mis un seul timer

 Sources du même auteur

Source avec Zip Source avec une capture DANCENEVER

 Sources de la même categorie

Source avec Zip Source avec une capture Source .NET (Dotnet) DES CHIFFRES ET DES LETTRES par ShayW
Source avec Zip Source avec une capture FAIRE REBONDIR PLUSIEURS BALLES par pierreh51
Source avec Zip Source .NET (Dotnet) JE DES BRIQUES MOUVANTES par alpha5
Source avec Zip Source avec une capture TOWER BATTLE 2 par Softmama
JEU D'ADRESSE ,JEU DE TIR À LA SOURIS par yvesdudu

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture JEU DU SERPENT/TRON par dada9109
Source avec Zip Source avec une capture SNAKE V 0.1 par oh1234
Source avec Zip Source avec une capture Source .NET (Dotnet) SÉANCE DE COMBAT RPG CLASSIC par jx53
Source avec Zip Source avec une capture Source .NET (Dotnet) [VB2005] PACWORM UN PETIT JEU BASÉ SUR PACMAN ET WORM par hugolachance
Source avec Zip Source avec une capture Source .NET (Dotnet) [VB2005] SNAKE par Kite37

Commentaires et avis

Commentaire de lenum1 le 11/06/2007 08:19:25

Bravo, il marche trés bien !

Commentaire de yvesyves le 11/06/2007 09:42:14

Bonne source mais un seul timer peut suffir. Sinon rien à dire pour ma part.

Commentaire de gloomy64 le 11/06/2007 13:03:20

Pour le timer je savait mais malheureusement j'ai commencer vraiment le codage en visual basic en commancant par sa. Et je n'ai pas eut le temps de mettre a jour se details. Mais je vais travailler dessus.

Commentaire de asimengo le 12/06/2007 15:27:01

pas mal, mais je suis sur que tu peux faire encore mieux.

Commentaire de gloomy64 le 13/06/2007 03:07:09

on peut toujours faire mieux... mais malheureusement, moi c'est le temps qui me manque... je suis sur un projet VB ou je refait tout les logiciels de base sous WINDOWS(Bloc-Note, Chat, Calculette, Interface Bureau, Lecteur de musique[sur le site pour les interressé], et j'en passe!) i j'ai déjà bossé 5semaines dessus, il ne me reste que deux, donc je dois privilégier les autrs codes avant tout. Mais dès que j'ai le temp je revois ma source en entier pour en faire un code vraiment simple et si possible plus optimale que maintenant.

Commentaire de draluorg le 15/06/2007 11:08:51

Salut a tous,

Eh pour commencer il est inutile de mettre ton code dans la frame car il n'est pas copiable tel quel (faut la form et les controls)

Sinon plutot que des "Direction = "Right" utilise plutot des constante numerique (bien plus rapide)

Genre:
Private Enum Direction
  dRight = 1
  dLeft  = 2
  dUp    = 3
  dDown  = 4
End Enum

Autr chose, ne jamais concatener des chaines de caracteres avec "+" c'est source d'erreur, utilise plutot le "&" qui est fait pour ca...

Sinon donne aussi explicitement un type a chaque variables et preferes les types long aux integer...

++

Commentaire de gloomy64 le 15/06/2007 23:00:39

Merci pour la critique, pour les direction, il est vrai qu'il serait plus rapide de le faire avec des numéros, je n'y avaut pas penser. J'vais essayer de changer ca bientot. Pour les Forms, c'est justement pour le problèmes que tu as citer en dessus, je l'ai intergrer dans une nouvlle page pour mon projet de cours (j'ai copier le code après). Mais je vais le supprimer pour cette source. La concatenation je l'avait appris sous delphi avc "+" et je n'ai réussi a prendre l'habitude "&". Merci pour les commentaires et avoir pris le temps de l'annalyser. J'vais changer ca d'ici sous peu.

Commentaire de draluorg le 16/06/2007 12:50:53

pas de quoi :)

Bonne continuation

++

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

jeu du snake [ par squallenforce ] salut je voudrai faire une jeu snake comme ds les portable mais je c pas trop par ou commencersi on pe me donner un petit cou de pouce ca serai super Comment tiliser ADODC ou un contrôle DATA classic avec chemin base paramétrable?? [ par EsquisMot ] Bonjour,J'arrive à visualiser dans un grid les résultats d'une requête engistrée sous access lorsque les propriétés du DATA sont indiquées de manière Sendkey à media player classic ? [ par yannn ] Salut vous tous ... J-7... noel approche... Cooooooooooooollllllll !!!J'ai une colle pour vous :Vous savez que media player classic ne permet pas de c média player classic [ par nicowana ] bonjour &#224; tous, j'ai vraiment besoin de vous car j'ai un gros probleme. Je n'arrive pas &#224; int&#233;grer m&#233;dia player classic dans une f Amelioration intelligence d'un serpent(snake nokia) [ par xcxl ] Bon jai creer une intelligence artificielle de snake mais je voudrai l'ameliorer a fond. Pour linstant les fonctions, je les enumere sous forme darbre création de boutons pour media player classic [ par Sophie Monde ] Bonjour, Je suis une novice voir complètement ignorante. J'aimerais savoir si il est possible de créer une "simple" action ou commande sous forme d Fontion Replay : Snake [ par liofan ] Bonjour,Je dois réaliser un jeux du Serpent (Snake) sur VBA.J'ai casiment tout terminer mais il me reste encore une consigne à faire et j'ai besoin de jeux snake [ par valenrom01 ] j'aimerais savoir commen faire un jeu de snake avec VBA et excel .....? Merci!


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,357 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales