Simon en vb

Description

Et oui ça faisait un bail, que j'avais plus rien coder, alors je recommence avec un classique.
Le code est trés simple et commenté...

pour ceux qui ne connaissent pas (s'il en existe lol!!)

Vous devez repeter les touches de couleur et dans l'ordre!!
Evidement a chaque tour la vitesse augmente et tous les 9 niveau une couleur de plus, et ainsi de suite...

Source / Exemple :


'Le code
'-----------------------------------------

'Declarations des variables
Dim X As Integer
Dim Soluce() As Integer 'Tableau des couleurs a trouvé
Dim Jaune As String 'variable
Dim Rouge As String 'variable
Dim Vert As String 'variable
Dim Bleue As String 'variable
Dim Coup As Integer 'stocke le nr de coup joué
Dim Perdu As Boolean 'variable de condition (perdu)
Dim Nb As Integer 'Stocke le nb de couleur a affiché
'Api play sound (Joue un son wav)
Private Declare Function PlaySound Lib "winmm.dll" Alias "PlaySoundA" (ByVal lpszName As String, ByVal hModule As Long, ByVal dwFlags As Long) As Long

Private Sub info_Click()
'A propos de (MENU)
    MsgBox "Simon VB" & vbCrLf & "By Pcpunch59", vbInformation, "A propos de..."
End Sub

Private Sub EndGame_Click()
'Quitter (MENU)
    End
End Sub

Private Sub Form_Load()
'Delcarations du chemin des images dans les varaibles
    Jaune = App.Path & "/jaune.jpg"
    Vert = App.Path & "/vert.jpg"
    Rouge = App.Path & "/rouge.jpg"
    Bleue = App.Path & "/bleue.jpg"
End Sub

Private Sub Pic_Click(Index As Integer)
'Affichage de la case clicker
Select Case Index
    Case 1: Me.Picture = LoadPicture(Jaune): PlaySound (App.Path & "/son1.wav"), 1, 1
    Case 2: Me.Picture = LoadPicture(Rouge): PlaySound (App.Path & "/son2.wav"), 1, 1
    Case 3: Me.Picture = LoadPicture(Vert): PlaySound (App.Path & "/son3.wav"), 1, 1
    Case 4: Me.Picture = LoadPicture(Bleue): PlaySound (App.Path & "/son4.wav"), 1, 1
End Select

'Si perdu
If Soluce(Coup) <> Index Then PlaySound (App.Path & "/bonk.wav"), 1, 1: X = 0: MsgBox "Dommage!!! " & vbCrLf & "C'etait : ", vbCritical, "Haieeeee....": TimerAffiche.Interval = 900: TimerAffiche.Enabled = True: Perdu = True
'Coup suivant
Coup = Coup + 1

'si reponse bonne
If Coup = UBound(Soluce) + 1 Then
'si le timer=200 (vitesse) alors on ajoute une couleur et on remet le timer a 900ms
'sinon la vitesse augmente de 100ms (Interval)
If TimerAffiche.Interval = 200 Then Nb = Nb + 1: TimerAffiche.Interval = 900 Else TimerAffiche.Interval = TimerAffiche.Interval - 100
'on ajoute une niveau et on retire les couleurs(nb aléatoire)
Label2 = Label2 + 1
TimerNbAleatoire.Enabled = True
End If

'sert a effacer la couleur affichée
TimerEff.Enabled = True

End Sub

Private Sub StartGame_Click()
'commnencer (MENU)
Nb = 4 'Definition du nombre de couleur de depart
TimerNbAleatoire.Enabled = True 'Tirage
TimerNbAleatoire.Interval = 1000
Perdu = False
End Sub

Private Sub TimerAffiche_Timer()

If Perdu And X + 1 = Nb + 1 Then End 'si perdu
If X = Nb Then TimerAffiche = False:   Exit Sub

'Affichage de la touche clicker et son
Select Case Soluce(X + 1)
    
    Case 1: Me.Picture = LoadPicture(Jaune): PlaySound (App.Path & "/son1.wav"), 1, 1
    Case 2: Me.Picture = LoadPicture(Rouge): PlaySound (App.Path & "/son2.wav"), 1, 1
    Case 3: Me.Picture = LoadPicture(Vert): PlaySound (App.Path & "/son3.wav"), 1, 1
    Case 4: Me.Picture = LoadPicture(Bleue): PlaySound (App.Path & "/son4.wav"), 1, 1

End Select

X = X + 1
TimerEff.Enabled = True

End Sub

Private Sub TimerEff_Timer()
'Affiche l'image du simon sans couleur selectionnée
Me.Picture = LoadPicture(App.Path & "/simon.jpg")
TimerEff.Enabled = False
End Sub

Private Sub TimerNbAleatoire_Timer()

'Tirage des nombres aléatoire correspondant au couleur
    
    'Efface et redimentionne le tableau qui reçoit les nb de la solution
    Erase Soluce
    ReDim Preserve Soluce(Nb)
    'tirage des nombres
    For i = 1 To Nb
        Randomize
        X = (Rnd * 3 + 1)
        Debug.Print X
        Soluce(i) = X
    Next i

TimerNbAleatoire.Enabled = False 'fermeture du timer
TimerAffiche.Enabled = True 'lancement du timer pour affichage des couleurs
X = 0 'Boucle pour affichage
Coup = 1 'definition du nombre de coup joué
End Sub

Conclusion :


Tous est dans le ZIP....

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.