Soyez le premier à donner votre avis sur cette source.
Vue 16 024 fois - Téléchargée 22 515 fois
' -------------------------------------------------- '|**************************************************| '|**************Ultimate Pendu 1.9.46***************| '|*************Par Marc-André Chartrand*************| '|********Questions, ThePunisher713@gmail.com*******| '|*****************D.R.E.A.M.© 2005*****************| '|**************************************************| ' -------------------------------------------------- Imports Microsoft.VisualBasic Public Class Form1 Inherits System.Windows.Forms.Form Private lettre, deviner, Mots(50), LeMot, cases(18), nom, Scores(100), AvantS, AprèsS As String Private nb, nombre, essais, nbchars, i, position, Quitter, victoire, Score, Hs As Integer Private chiffres(50), flash, rate(1), son, image, loaded, fin, saved, wrote As Boolean + Windows Form Designer generated code Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click lettre = Chr(65) Button2.Enabled = False charche() End Sub Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click lettre = Chr(66) Button3.Enabled = False charche() End Sub Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click lettre = Chr(67) Button4.Enabled = False charche() End Sub Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click lettre = Chr(68) Button5.Enabled = False charche() End Sub Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click lettre = Chr(69) Button6.Enabled = False charche() End Sub Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click lettre = Chr(70) Button7.Enabled = False charche() End Sub Private Sub Button8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button8.Click lettre = Chr(71) Button8.Enabled = False charche() End Sub Private Sub Button9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button9.Click lettre = Chr(72) Button9.Enabled = False charche() End Sub Private Sub Button10_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button10.Click lettre = Chr(73) Button10.Enabled = False charche() End Sub Private Sub Button11_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button11.Click lettre = Chr(74) Button11.Enabled = False charche() End Sub Private Sub Button12_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button12.Click lettre = Chr(75) Button12.Enabled = False charche() End Sub Private Sub Button13_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button13.Click lettre = Chr(76) Button13.Enabled = False charche() End Sub Private Sub Button14_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button14.Click lettre = Chr(77) Button14.Enabled = False charche() End Sub Private Sub Button15_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button15.Click lettre = Chr(78) Button15.Enabled = False charche() End Sub Private Sub Button16_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button16.Click lettre = Chr(79) Button16.Enabled = False charche() End Sub Private Sub Button17_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button17.Click lettre = Chr(80) Button17.Enabled = False charche() End Sub Private Sub Button18_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button18.Click lettre = Chr(81) Button18.Enabled = False charche() End Sub Private Sub Button19_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button19.Click lettre = Chr(82) Button19.Enabled = False charche() End Sub Private Sub Button20_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button20.Click lettre = Chr(83) Button20.Enabled = False charche() End Sub Private Sub Button21_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button21.Click lettre = Chr(84) Button21.Enabled = False charche() End Sub Private Sub Button22_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button22.Click lettre = Chr(85) Button22.Enabled = False charche() End Sub Private Sub Button23_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button23.Click lettre = Chr(86) Button23.Enabled = False charche() End Sub Private Sub Button24_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button24.Click lettre = Chr(87) Button24.Enabled = False charche() End Sub Private Sub Button25_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button25.Click lettre = Chr(88) Button25.Enabled = False charche() End Sub Private Sub Button26_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button26.Click lettre = Chr(89) Button26.Enabled = False charche() End Sub Private Sub Button27_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button27.Click lettre = Chr(90) Button27.Enabled = False charche() End Sub Private Sub Button28_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button28.Click deviner = InputBox("Vous savez la réponse? entrez-la ici!", "Entrez le mot").ToUpper If deviner = LeMot Then MsgBox("Bonne réponse, on passe au suivant?", MsgBoxStyle.OkOnly, "Woaw!! Géant!!!!!") Score += 5 reset() Exit Sub Else Timer2.Enabled = False montre_pendu() End If End Sub Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick Timer1.Enabled = False GroupBox1.Visible = True Me.FormBorderStyle = Windows.Forms.FormBorderStyle.Sizable Me.WindowState = FormWindowState.Normal PictureBox2.Visible = False Me.Width = 568 Me.Height = 664 MenuStrip1.Visible = True MsgBox("La Réponse était : " + LeMot) reset() End Sub Public Sub montre_pendu() If image = True Then Timer1.Enabled = True GroupBox1.Visible = False Me.FormBorderStyle = Windows.Forms.FormBorderStyle.None Me.WindowState = FormWindowState.Maximized PictureBox2.Size = Me.Size PictureBox2.Visible = True MenuStrip1.Visible = False If son = True Then My.Computer.Audio.Play(Application.StartupPath + "\hal-scream.wav") End If Else MsgBox("La Réponse était : " + LeMot) reset() End If End Sub Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing If saved = False Then Quitter = MsgBox("Désirez-Vous Sauvegarder Avant de Quitter?", MsgBoxStyle.YesNoCancel, "Avant de quitter...") Select Case Quitter Case 6 Sauvegarde() End Case 7 End End Select Else End End If End Sub Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load On Error GoTo Nofile Microsoft.VisualBasic.FileOpen(1, Application.StartupPath + "\Pendu.dll", OpenMode.Input, OpenAccess.Read, OpenShare.Default) GoTo filefound Nofile: MsgBox("fichier non trouvé", MsgBoxStyle.Critical, "Erreur") Open1.ShowDialog() Dim FileName As String FileName = Open1.FileName Microsoft.VisualBasic.FileOpen(1, FileName, OpenMode.Input, OpenAccess.Read, OpenShare.Default) filefound: Do Until EOF(1) nb += 1 Input(1, Mots(nb)) Loop Microsoft.VisualBasic.FileClose() nombre = 0 rate(1) = True rate(0) = False victoire = 0 Score = 0 son = True image = True GroupBox1.Enabled = False SauvegarderToolStripMenuItem.Enabled = False saved = True Hs = 0 Readhighscore() Dim form2 As New Form2 End Sub Public Sub charche() For i = 1 To nbchars If lettre = Mid(LeMot, i, 1) Then Mid(Label19.Text, (i * 2) - 1, 1) = lettre rate(1) = False rate(0) = False Else If rate(1) = True Then rate(0) = True End If End If If (Mid(Label19.Text, (i * 2) - 1, 1)) = (Mid(LeMot, i, 1)) Then victoire += 1 If victoire = nbchars Then MsgBox("Bonne réponse, on passe au suivant?", MsgBoxStyle.OkOnly, "Woaw!! Géant!!!!!") Score += 1 reset() Exit Sub End If Else victoire = 0 End If Next If rate(0) = True Then If essais = 0 Then essais += 1 End If Select Case essais Case 1 Pb3.Visible = True If rate(0) = True Then essais += 1 End If Case 2 Pb4.Visible = True If rate(0) = True Then essais += 1 End If Case 3 Pb7.Visible = True If rate(0) = True Then essais += 1 End If Case 4 Pb5.Visible = True If rate(0) = True Then essais += 1 End If Case 5 Pb8.Visible = True If rate(0) = True Then essais += 1 End If Case 6 Pb6.Visible = True Timer2.Enabled = True If rate(0) = True Then essais += 1 End If Case 7 Timer2.Enabled = False montre_pendu() End Select End If rate(1) = True rate(0) = False If essais = 0 Then ProgressBar1.Value = essais Else ProgressBar1.Value = essais - 1 End If End Sub Public Sub newmot() chiffres(nombre) = False For i = 1 To 500 Randomize() nombre = CInt(Int((50 * Rnd()) + 1)) If chiffres(nombre) = True Then Exit For End If If i = 500 Then MsgBox("Partie Terminée,Votre Score Final Est De " + Str(Score), MsgBoxStyle.OkOnly, "Fini") fin = True Sauvegarde() SetHighscore() Form2.Show() Exit Sub End If Next LeMot = Mots(nombre) nbchars = LeMot.Length Label19.Text = "" For i = 1 To nbchars cases(i) = Mid(LeMot, i, 1) Label19.Text += "_" + " " Next End Sub Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer2.Tick If flash = True Then Pb3.Visible = False Pb4.Visible = False Pb5.Visible = False Pb6.Visible = False Pb7.Visible = False Pb8.Visible = False flash = False Exit Sub End If If flash = False Then Pb3.Visible = 1 Pb4.Visible = 1 Pb5.Visible = 1 Pb6.Visible = 1 Pb7.Visible = 1 Pb8.Visible = 1 flash = 1 Exit Sub End If End Sub Public Sub reset() Pb3.Visible = False Pb4.Visible = False Pb5.Visible = False Pb6.Visible = False Pb7.Visible = False Pb8.Visible = False flash = False LeMot = "" newmot() essais = 0 rate(1) = True rate(0) = False victoire = 0 Timer2.Enabled = False Button2.Enabled = True Button3.Enabled = True Button4.Enabled = True Button5.Enabled = True Button6.Enabled = True Button7.Enabled = True Button8.Enabled = True Button9.Enabled = True Button10.Enabled = True Button11.Enabled = True Button12.Enabled = True Button13.Enabled = True Button14.Enabled = True Button15.Enabled = True Button16.Enabled = True Button17.Enabled = True Button18.Enabled = True Button19.Enabled = True Button20.Enabled = True Button21.Enabled = True Button22.Enabled = True Button23.Enabled = True Button24.Enabled = True Button25.Enabled = True Button26.Enabled = True Button27.Enabled = True Button28.Enabled = True ProgressBar1.Value = 0 Label1.Text = "Score : " + Str(Score) SauvegarderToolStripMenuItem.Enabled = True saved = False End Sub Private Sub NouvellePartieToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NouvellePartieToolStripMenuItem.Click nom = InputBox("Entrez votre nom", "Identifiez-Vous", "Joueur1") If nom = "" Then Exit Sub End If GroupBox1.Enabled = True Label3.Text = "Bienvenue," + nom For nombre = 1 To 50 chiffres(nombre) = True Next nombre = 0 reset() Score = 0 newmot() rate(1) = True rate(0) = False victoire = 0 Score = 0 fin = False Label1.Text = "Score : " + Str(Score) son = True image = True End Sub Public Sub Sauvegarde() FileOpen(2, Application.StartupPath + "\Saves\" + nom + ".sav", OpenMode.Output, OpenAccess.Write, OpenShare.Default) Dim word As Integer For word = 1 To 50 Print(2, Str(chiffres(word)) & vbCrLf) Next Print(2, Score & vbCrLf) Print(2, image & vbCrLf) Print(2, son & vbCrLf) Print(2, nom & vbCrLf) Print(2, fin & vbCrLf) FileClose() saved = True End Sub Private Sub SauvegarderToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SauvegarderToolStripMenuItem.Click Sauvegarde() End Sub Private Sub ActiverToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ActiverToolStripMenuItem.Click 'Active le son du pendu son = True ActiverToolStripMenuItem.Checked = True DésactiverToolStripMenuItem.Checked = False End Sub Private Sub DésactiverToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DésactiverToolStripMenuItem.Click 'désactive le son su pendu son = False DésactiverToolStripMenuItem.Checked = True ActiverToolStripMenuItem.Checked = False End Sub Private Sub ActiverToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ActiverToolStripMenuItem1.Click 'Affiche L'image du pendu à chaque mot raté image = True ActiverToolStripMenuItem1.Checked = True DésactiverToolStripMenuItem1.Checked = False End Sub Private Sub DésactiverToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DésactiverToolStripMenuItem1.Click 'n'Affiche pas L'image du pendu à chaque mot raté image = False DésactiverToolStripMenuItem1.Checked = True ActiverToolStripMenuItem1.Checked = False End Sub Private Sub QuitterToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles QuitterToolStripMenuItem.Click 'Charge la partie Dim charge As Integer OpenFileDialog1.FileName = "" OpenFileDialog1.InitialDirectory = Application.StartupPath + "\Saves\" OpenFileDialog1.ShowDialog() If OpenFileDialog1.FileName = "" Then Exit Sub End If FileOpen(2, OpenFileDialog1.FileName, OpenMode.Input, OpenAccess.Read, OpenShare.Default) Do Until EOF(2) charge += 1 Select Case charge Case 51 Input(2, Score) Case 1 To 50 Input(2, chiffres(charge)) Case 52 Input(2, image) Case 53 Input(2, son) Case 54 Input(2, nom) Case 55 Input(2, fin) Exit Do End Select Loop If fin = True Then MsgBox("Partie Déjà Terminée,Veuillez Recommencer Une Nouvelle Partie", MsgBoxStyle.OkOnly, "Fini") FileClose() Else reset() Label3.Text = "Bienvenue," + nom FileClose() GroupBox1.Enabled = True SauvegarderToolStripMenuItem.Enabled = True If image = True Then ActiverToolStripMenuItem1.Checked = True DésactiverToolStripMenuItem1.Checked = False Else DésactiverToolStripMenuItem1.Checked = True ActiverToolStripMenuItem1.Checked = False End If If son = True Then ActiverToolStripMenuItem.Checked = True DésactiverToolStripMenuItem.Checked = False Else DésactiverToolStripMenuItem.Checked = True ActiverToolStripMenuItem.Checked = False End If MsgBox("Partie Chargée correctement") loaded = True End If End Sub Private Sub Timer3_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer3.Tick If LeMot = "" Then fin = True End If Timer3.Enabled = False End Sub Private Sub QuitterToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles QuitterToolStripMenuItem1.Click If saved = False Then Quitter = MsgBox("Désirez-Vous Sauvegarder Avant de Quitter?", MsgBoxStyle.YesNoCancel, "Avant de quitter...") Select Case Quitter Case 6 Sauvegarde() End Case 7 End End Select Else End End If End Sub Public Sub Readhighscore() FileOpen(3, Application.StartupPath + "\Saves\High Scores.txt", OpenMode.Input, OpenAccess.Read, OpenShare.Default) Do Until EOF(3) Hs += 1 Input(3, Scores(Hs)) Loop FileClose() End Sub Public Sub SetHighscore() FileOpen(3, Application.StartupPath + "\Saves\High Scores.txt", OpenMode.Output, OpenAccess.Write, OpenShare.Default) i = 0 Do Until i = Hs i += 1 If Scores(1) = "" Then AvantS = "" AprèsS = "" Exit Do Else If Score > Val(Mid(Scores(i), 1, 3)) Then wrote = True Else If Scores(i + 1) = "" Then AprèsS = "" End If End If End If If wrote = False Then AvantS += Scores(i) & vbCrLf Else AprèsS += Scores(i) & vbCrLf End If Loop Print(3, AvantS + Str(Score) + " " + nom & vbCrLf + AprèsS) Hs = 0 i = 0 FileClose() Readhighscore() Sauvegarde() AvantS = "" AprèsS = "" wrote = False SauvegarderToolStripMenuItem.Enabled = False GroupBox1.Enabled = False End Sub Private Sub Top5ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Top5ToolStripMenuItem.Click Form2.toutlestop = 0 Form2.Show() End Sub Private Sub Top10ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Top10ToolStripMenuItem.Click Form2.toutlestop = 1 Form2.Show() End Sub Private Sub ÀProposDeToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ÀProposDeToolStripMenuItem.Click Form3.Show() End Sub Private Sub CommentJouerToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CommentJouerToolStripMenuItem.Click System.Diagnostics.Process.Start(Application.StartupPath + "\README.TXT") End Sub End Class
24 août 2008 à 17:39
On Error GoTo Nofile ???
utilises des try catch
Microsoft.VisualBasic.FileOpen(
c'est pas .net
c'est plutot le résultat de la conversion d'un prog vb6
Pendu.dll => c'est n'importe quoi
si tu as peur que les gens regardent la réponse (tricher c'est idiot) tu peux crypter le fichier très simplement
et aussi pour une liste de 50 mots un tableau de string était suffisant pas besoin d'un fichier
13 janv. 2006 à 21:15
13 janv. 2006 à 18:36
1 janv. 2006 à 18:25
30 déc. 2005 à 18:11
pour indexé des objet tu as plusieurs façon.
1- tu te crées un tableau d.object, mais tu pourras pas mettre withevent. donc tu devras créé tes propres handler pour faire tes évênements.
2- tu crées tes boutons normallement et ensuite tu mets des référence dans un tableau qui peut-être utilisé grâce à un patron itérateur (mais les patrons c'est trop avancé, même pour vbfrance, je suis dans les seul a savoir les maitriser).
Donc utilises la méthode numéro 1, tu devrais trouver des info facilement a cherchant handler sur le site ou sur le web.
moi j'aime bien mixer la méthode 1 et 2 en même temps. ça me donne un control beaucoup plus serré sur mes items et je peux les modifier en batch.
En passant, le passage en .net a apporté l'orienté objet. Donc si tu veut pousser encore plus loin, faut tout mixer ensemble. Genre te créé plusieurs class qui extend button. Ensuite te créé une interface avec tes méthode commune entre les boutons. Et tu finis par créé tes item dans un tableau ou une collection de type "nom de ton interface". Mais bon, là je suis rendu trop loin a mixer des patron, de l'orienté object et des handlers.
Tu as aussi la proprité TAG qui te permet de stocker un numéro d'index. j'ai fait un tutorial dessus. Mais à moins que ça soit une ou 2 valeur,. mise plutot pour l'orienté objet et faire une class, ça fini par être plus facile à débogué, puisque sinon tu es pris avec ex: "if object.tag(4) sender.tag(2) then .... ". Donc ça deviens vite le bordel. Mieux vaut l'orienté objet qui te permettrais d'écrire ex : "if object.getIndex ctype(sender,monTypeObject).getPosition then". C'est plus long à écrire, mais beaucoup plus explicite comme écriture.
Mais rendu là, fouille sur vbfrance ou sur le web, tu vas trouver pleins de trucs comme ça
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.