Jeu de pendu

Jeu de pendu

Post by Adalard Dranem A.K, OdS - November 2, 2011 at 8:46 PM

Tiens parce que je n'ai rien à faire actuellement. Je vais vous montrer le premier programme que j'ai fais alors que je ne connaissais pas encore la programmation par objet ! Je regarde la prog de ça et sa me fait rire, mais bon.. (Oui, chacun son humour !)

Je vous enverrais l'exécutable quand je saurai comment le rendre téléchargeable sur le net, c'est amusant comme jeu de bonhomme pendu quand même.

Option Strict On
Option Explicit On
Imports System.Console

Public Class Form1
Private alphabet() As String = {"hello", "palindrome", "tiroir", "valise", "marathon", "habitation", "corbeille"}
Private secret, motConstruit As String
Private Sub lettres(ByVal lettre As String) 'Fonction qui permet de remplacer la lettre à la bonne position dans les tirets.
Dim string1 As String = "" 'Elle permet aussi de le faire plusieurs fois, s'il y a lieu qu'une lettre y soit plus qu'une fois.
Dim string2 As String = ""
Dim vraifaux As Boolean
If secret = "" Then 'Si il tente une lettre avant de commencer une partie = erreur.
MsgBox("Erreur, vous devez commencer une partie.", , "Erreur")
Else
If Not TxtMotConstruit.Text.Contains(lettre) Then 'Si le mot ne contient pas déjà la lettre, il effectue la fonction.
For bahaha = 0 To secret.Length - 1
If motConstruit(bahaha) = "-" Then 'La fonction enlèvera tout, puis pour chaque position vérifiera si c'est la lettre..
If secret(bahaha) = lettre Then 'Si ce ne l'est pas, elle mettra un tiret.
string1 = string1 + lettre 'Si ce l'est, elle mettra ladite lettre.
vraifaux = True
Else
string1 = string1 + "-"
End If
Else
string1 = string1 + motConstruit(bahaha)
End If
TxtMotConstruit.Text = string1
Next
End If
If vraifaux = False Then 'Si la fonction voulu ne s'est pas executé, c'est qu'il y avait une erreur, toutes les options d'erreurs sont là.
If TxtNonContenu.Text.Contains(lettre) Then 'Si la lettre fut déjà essayé et n'est pas dans le mot.
MsgBox("Vous avez déjà essayé la lettre " & lettre, , "Erreur")
Else
If TxtMotConstruit.Text.Contains(lettre) Then 'Si la lettre fut déjà essayé et est dans le mot.
MsgBox("Vous avez déjà essayé la lettre " & lettre & ", elle est dans le mot.", , "Erreur")
Else
TxtNonContenu.Text = TxtNonContenu.Text + lettre 'Si aucune erreur n'avait lieu, mais que la fonction a mi vraifaux à False.. alors..
End If 'C'est que la lettre n'avait jamais été choisie, mais n'est pas dans le mot, donc on la met en bas.
End If

        End If  
        'Cette partie permet d'informer l'utilisateur qu'il a réussit, lorsque tout le mot fut finalement construit.   
        string2 = TxtMotConstruit.Text  
        motConstruit = string2

        If motConstruit = secret Then  
            MsgBox("Bravo, vous avez réussi !", , "Victoire")  
        End If  
    End If  
End Sub  
Function containslol(ByVal one As String) As Boolean 'Fonction qui permet de savoir si le mot ne contient que des lettres.   
    Dim bravo As Integer  
    Dim alphabetDeux() As String = {"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"}  
    For lolDeux = 0 To one.Length - 1  
        For lolUn = 0 To 25  
            If one.ToLower.Substring(lolDeux, 1) = alphabetDeux(lolUn) Then  
                bravo = bravo + 1  
            End If  
        Next  
    Next  
    If bravo = one.Length Then  
        Return True  
    Else  
        Return False  
    End If  
End Function

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load  
    Randomize()  
    secret = ""

End Sub


Private Sub TxtMotConstruit_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TxtMotConstruit.TextChanged

End Sub

Private Sub BtnCommence_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnCommence.Click  
    TxtNonContenu.Text = "" 'Afin que le texte en bas disparaisse à chaque nouvelle partie. 

    'Partie à deux:   
    TxtMotConstruit.Text = ""  
    Dim a As Integer  
    Dim s As String = ""  
    Dim erreur2 As Integer = 1  
    For erreur2 = 0 To 10  
        If optDeux.Checked Then  
            secret = InputBox("Entrez le mot secret avec lequel vous jouerez: ", , "Mot secret")  
            If (containslol(secret)) = False Then 'Si il entre des chiffres, ou autres caractères ascii  
                MsgBox("Votre mot doit contenir que des lettres, entrez un autre mot", , "Erreur")  
                erreur2 = erreur2 - 1 'Pour que la boucle, boucle tant qu'il y a une erreur.   
            Else  
                erreur2 = erreur2 + 10 'Pour sortir de la boucle, quand il n'y a pas d'erreur.   
            End If  
            For i = 1 To secret.Length  
                TxtMotConstruit.Text = TxtMotConstruit.Text + ("-") 'Pour afficher les tirets selon le nombre de lettre.   
            Next  
        End If

    Next

    '-------------------------------------------------------------------------------------------------------------------------------  
    'Pour partie solo:   
    If OptUn.Checked Then  
        a = CInt(Math.Floor(((alphabet.Length - 1) - 0 + 1) * Rnd())) + 0 'Définit une valeur aléatoire, selon le nombre d'indice dans le tableau.   
        secret = alphabet(a) 'Appel cette valeur aléatoire la correspondance de la position du tableau.   
        For i = 1 To secret.Length  
            TxtMotConstruit.Text = TxtMotConstruit.Text + ("-") 'Pour les tirets.   
        Next  
    End If  
    motConstruit = TxtMotConstruit.Text  
    secret = secret.ToLower  
End Sub


Private Sub optA_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optA.CheckedChanged  
    If optA.Checked Then  
        lettres("a")  
    End If  
End Sub  
Private Sub optB_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optB.CheckedChanged  
    If optB.Checked Then  
        lettres("b")  
    End If  
End Sub  
Private Sub optC_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optC.CheckedChanged  
    If optC.Checked Then  
        lettres("c")  
    End If  
End Sub

Private Sub optD_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optD.CheckedChanged  
    If optD.Checked Then  
        lettres("d")  
    End If  
End Sub

Private Sub optE_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optE.CheckedChanged  
    If optE.Checked Then  
        lettres("e")  
    End If  
End Sub

Private Sub optF_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optF.CheckedChanged  
    If optF.Checked Then  
        lettres("f")  
    End If  
End Sub

Private Sub optG_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optG.CheckedChanged  
    If optG.Checked Then  
        lettres("g")  
    End If  
End Sub

Private Sub optH_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optH.CheckedChanged  
    If optH.Checked Then  
        lettres("h")  
    End If  
End Sub

Private Sub optI_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optI.CheckedChanged  
    If optI.Checked Then  
        lettres("i")  
    End If  
End Sub

Private Sub optJ_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optJ.CheckedChanged  
    If optJ.Checked Then  
        lettres("j")  
    End If  
End Sub

Private Sub optK_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optK.CheckedChanged  
    If optK.Checked Then  
        lettres("k")  
    End If  
End Sub

Private Sub optL_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optL.CheckedChanged  
    If optL.Checked Then  
        lettres("l")  
    End If  
End Sub

Private Sub optM_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optM.CheckedChanged  
    If optM.Checked Then  
        lettres("m")  
    End If  
End Sub

Private Sub optN_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optN.CheckedChanged  
    If optN.Checked Then  
        lettres("n")  
    End If  
End Sub

Private Sub optO_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optO.CheckedChanged  
    If optO.Checked Then  
        lettres("o")  
    End If  
End Sub

Private Sub optP_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optP.CheckedChanged  
    If optP.Checked Then  
        lettres("p")  
    End If  
End Sub

Private Sub optQ_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optQ.CheckedChanged  
    If optQ.Checked Then  
        lettres("q")  
    End If  
End Sub

Private Sub optR_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optR.CheckedChanged  
    If optR.Checked Then  
        lettres("r")  
    End If  
End Sub

Private Sub optS_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optS.CheckedChanged  
    If optS.Checked Then  
        lettres("s")  
    End If  
End Sub

Private Sub optT_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optT.CheckedChanged  
    If optT.Checked Then  
        lettres("t")  
    End If  
End Sub

Private Sub optU_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optU.CheckedChanged  
    If optU.Checked Then  
        lettres("u")  
    End If  
End Sub

Private Sub optV_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optV.CheckedChanged  
    If optV.Checked Then  
        lettres("v")  
    End If  
End Sub

Private Sub optW_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optW.CheckedChanged  
    If optW.Checked Then  
        lettres("w")  
    End If  
End Sub

Private Sub optX_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optX.CheckedChanged  
    If optX.Checked Then  
        lettres("x")  
    End If  
End Sub

Private Sub optY_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optY.CheckedChanged  
    If optY.Checked Then  
        lettres("y")  
    End If  
End Sub

Private Sub optZ_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles optZ.CheckedChanged  
    If optZ.Checked Then  
        lettres("z")  
    End If  
End Sub

End Class


Post by Phydias Shaytan, CP - November 3, 2011 at 12:28 AM

VB.Net


Post by Asphaar Meliamne, AdM - November 3, 2011 at 12:53 AM

Ça l'air génial Adalard Dranem!


Post by Coordinateur Apoc - November 3, 2011 at 1:02 AM

Ah VB, ca me rend nostalgique, sauf que moi c'était sur VB6 avant que le .net existe...


Post by Adalard Dranem A.K, OdS - November 3, 2011 at 6:20 AM

Ouais depuis que j'ai découvert C# et Java, j'ai développé un certain mépris pour VB.Net moi ! Mais avec VB6 tu avais aussi les ressources de la plateforme windows Apoc ? C'était du langage machine, dans ce temps là...! =P

Et merci Asphaar !


Post by Coordinateur Apoc - November 3, 2011 at 6:31 AM

Pour rendre des truc téléchargable, j'avais trouvé ce site, c'est un peu compliqué au début mais une fois bien comprit c'est facile et rapide.

http://www.mediafire.com/

Puis de ce que je vois, Vb6 et Vb.net sont pratiquement pareil. Les quelques différences sont dans le compilateur surement car côté code c'est pas mal pareil.


Post by Sarä Taur'Amandil, OdS - November 3, 2011 at 6:36 AM

Le C#...

Je pensais jamais trouver un jour un truc dans lequel je serais aussi mauvaise et pathétique. Deux cours de ça au cégep et je me demande encore comment j'ai pu les réussir.