begin process at 2010 02 10 09:18:15
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Jeux

 > PROGRAMME VB6.0 // JEU DE SYLABLE JAPONAISES.

PROGRAMME VB6.0 // JEU DE SYLABLE JAPONAISES.


 Information sur la source

Note :
Aucune note
Catégorie :Jeux Classé sous :visual basic, jeu, japonais, programme, split Niveau :Débutant Date de création :13/12/2008 Date de mise à jour :15/12/2008 15:48:47 Vu / téléchargé :1 642 / 180

Auteur : Tesan

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

 Description

Cliquez pour voir la capture en taille normale
Ce petit programme génère "aléatoirement" un mot en français (à partir d'une liste) et affiche, dans le désordre, les sylables de ce mot en japonais. A vous en suite de retrouver le mot en japonais.

Il est possible de rajouter des mots via un petit formulaire (sur le form1 cliquer sur le bouton "modifier") ce qui rajoutera dans le fichier "add-aja.txt" les mots que vous avez ajouter. Ou encore de consulter l'aide qui regroupe tous les mots japonais dans une liste.

La source est composé de trois form et d'un module, je vous affiche le premier form.

Source

  • Private Sub cmd_aide_Click()
  • If Form1.txt_fr = "" Then 'on test si le joueur à lancer un mot, si vide, on n'ouvre pas l'aide
  • MsgBox ("Vous ne pouvez demander de l'aide sans avoir lancer un nouveau mot.")
  • Else
  • Form2.Show 'sinon on ouvre l'aide
  • End If
  • End Sub
  • Private Sub cmd_jouer_Click()
  • If Form1.txt_fr = "" Then 'on test la valeur du mot en Français, si vide, le jeu n'est pas lancé
  • a = MsgBox("Vous devez lancer un nouveau mot.", vbInformation, "Attention")
  • Else
  • If txt_jap = "" Then 'si la valeur txt_jap (qui correspond à la reponse du joueur) est vide, on ne peut verifier la reponse
  • a = MsgBox("Vous n'avez rien écrit...", vbInformation, "Attention")
  • Else
  • i = lbl_i
  • If txt_jap = c_motjap.List(i) Then 'on regarde mnt si la valeur dans le textbox est la meme que celle dans le combo
  • a = MsgBox("C'est correct, bien jouez :)", vbExclamation, "Bien joué")
  • txt_fr = ""
  • txt_jap = ""
  • label_sylable(1) = " "
  • label_sylable(2) = " "
  • label_sylable(3) = " "
  • label_sylable(4) = " " 'on initialise
  • Else
  • a = MsgBox("Ce n'est pas bon, retentez..", vbCritical, "Dommage") '
  • txt_jap = ""
  • End If
  • End If
  • End If
  • End Sub
  • Private Sub cmd_modif_Click()
  • Form1.Hide 'on cache le form1
  • Form3.Show 'on ouvre le form3
  • End Sub
  • Private Sub cmd_quit_Click() 'commande pour quitter le jeu
  • rep = MsgBox("Vous êtes sur le point de quitter le jeu, êtes vous sûr ?", vbYesNo, "Quitter ?")
  • If rep = 6 Then
  • End
  • End If
  • End Sub
  • Private Sub Command1_Click(Index As Integer)
  • Dim decoup() As String 'découpe le mot en sylable
  • Dim i As Integer
  • Dim Y As Integer
  • txt_jap = ""
  • label_sylable(1) = " "
  • label_sylable(2) = " "
  • label_sylable(3) = " "
  • label_sylable(4) = " "
  • Randomize
  • i = Int(Rnd() * c_motfr.ListCount) 'on donne à i une valeur "aleatoire" de 0 jusqu'au total du combo c_motfr
  • If txt_fr <> "" Or c_motjap.List(i) <> "" Then 'on test les valeurs pour savoir si on peut découper le mot en sylable
  • lbl_i = i
  • txt_fr = c_motfr.List(i) 'on donne au label le mot qui correspond au numero de i
  • decoup() = Split(c_sylable.List(i), "-") 'on découpe le mot du combo qui correspond au num i
  • Y = 1 'on donne y = 1
  • Do
  • label_sylable(Y) = decoup(Y) 'decoup(0) correspond au premier "-" du mot, on ne le compte donc pas
  • Y = Y + 1
  • rep = decoup(Y)
  • Loop Until rep = "F" 'on arrete lorsque la derniere sylable est égale à "F"
  • End If
  • End Sub
  • Private Sub Form_Load()
  • Dim cherche() As String
  • Dim mot As String
  • Dim renvoi As Boolean
  • c_motfr.AddItem "Bonjour"
  • c_motfr.AddItem "Aurevoir"
  • c_motfr.AddItem "Merci"
  • c_motfr.AddItem "Force"
  • c_motfr.AddItem "Terre"
  • c_motfr.AddItem "Silence"
  • c_motfr.AddItem "Pourquoi"
  • c_motfr.AddItem "Lointain"
  • c_motfr.AddItem "Dépêche toi"
  • c_motfr.AddItem "Luciole"
  • c_motjap.AddItem "konichiwa"
  • c_motjap.AddItem "sayonara"
  • c_motjap.AddItem "arigatou"
  • c_motjap.AddItem "chikara"
  • c_motjap.AddItem "chikyuu"
  • c_motjap.AddItem "damare"
  • c_motjap.AddItem "doushite"
  • c_motjap.AddItem "haruka"
  • c_motjap.AddItem "hayaku"
  • c_motjap.AddItem "hotaru"
  • c_sylable.AddItem "-ni-ko-wa-chi-F"
  • c_sylable.AddItem "-sa-na-ra yo-F"
  • c_sylable.AddItem "-ga-tou-ari-F"
  • c_sylable.AddItem "-ra-chi-ka-F"
  • c_sylable.AddItem "-ky-uu-chi-F"
  • c_sylable.AddItem "-da-re-ma-F"
  • c_sylable.AddItem "-shi-dou-te-F"
  • c_sylable.AddItem "-ka-ha-ru-F"
  • c_sylable.AddItem "-ha-ku-ya-F"
  • c_sylable.AddItem "-ho-ru-ta-F" 'initialisation de 10 mots dans les combo
  • Dim FileName As String
  • Dim errCode As Integer
  • Dim errString As String
  • Dim fileContent As String
  • Dim t() As String
  • Dim nbLines As Long
  • FileName = "add-aja.txt"
  • fileContent = ReadFileToBuffer(FileName, errCode, errString)
  • If errCode = 0 Then
  • ' Découpage en lignes
  • t() = Split(fileContent, vbCrLf)
  • ' calcul du nombre de lignes et affichage
  • nbLines = UBound(t()) + IIf(LBound(t()) = 0, 1, 0)
  • For i = 0 To nbLines - 1
  • List1.AddItem t(i)
  • Next i
  • Else
  • ' Erreur rencontrée, affichage
  • MsgBox "Erreur lors de la lecture. Code : " & errCode & ". Description : " & errString
  • End If
  • i = 0
  • While Form1.List1.List(i) <> "" 'ici on rajoute les mots qui sont dans le fichier texte
  • mot = Form1.List1.List(i) 'on donne la chaine de caractere qui est dans la liste dans la variable mot
  • cherche() = Split(mot, "/") 'on decoupe le mot lorsqu'il y a un espace, pour differencier les thermes
  • If cherche(0) = "motfr" Then 'on cherche quand le premier mot est "motfr" pour ensuite
  • a = 0
  • Do 'verifié que ce mot n'est pas déjà dans la liste
  • If c_motfr.List(a) = cherche(1) Then
  • renvoi = False
  • Else
  • renvoi = True
  • End If
  • a = a + 1
  • Loop Until renvoi = False Or a = c_motfr.ListCount
  • If renvoi = True Then
  • c_motfr.AddItem cherche(1)
  • End If
  • End If
  • If cherche(0) = "motjap" Then 'on cherche quand le premier mot est "motjap" pour ensuite
  • a = 0
  • Do 'verifié que ce mot n'est pas déjà dans la liste
  • If c_motjap.List(a) = cherche(1) Then
  • renvoi = False
  • Else
  • renvoi = True
  • End If
  • a = a + 1
  • Loop Until renvoi = False Or a = c_motjap.ListCount
  • If renvoi = True Then
  • c_motjap.AddItem cherche(1)
  • End If
  • End If
  • If cherche(0) = "sylable" Then 'on cherche quand le premier mot est "sylable" pour ensuite
  • a = 0
  • Do 'verifié que ce mot n'est pas déjà dans la liste
  • If c_sylable.List(a) = cherche(1) Then
  • renvoi = False
  • Else
  • renvoi = True
  • End If
  • a = a + 1
  • Loop Until renvoi = False Or a = c_sylable.ListCount
  • If renvoi = True Then
  • c_sylable.AddItem cherche(1)
  • End If
  • End If
  • i = i + 1
  • Wend
  • End Sub
Private Sub cmd_aide_Click()

If Form1.txt_fr = "" Then 'on test si le joueur à lancer un mot, si vide, on n'ouvre pas l'aide

MsgBox ("Vous ne pouvez demander de l'aide sans avoir lancer un nouveau mot.")
Else

Form2.Show 'sinon on ouvre l'aide
End If


End Sub

Private Sub cmd_jouer_Click()

If Form1.txt_fr = "" Then 'on test la valeur du mot en Français, si vide, le jeu n'est pas lancé
    a = MsgBox("Vous devez lancer un nouveau mot.", vbInformation, "Attention")
Else

        If txt_jap = "" Then 'si la valeur txt_jap (qui correspond à la reponse du joueur) est vide, on ne peut verifier la reponse
          a = MsgBox("Vous n'avez rien écrit...", vbInformation, "Attention")
        Else

        i = lbl_i

            If txt_jap = c_motjap.List(i) Then 'on regarde mnt si la valeur dans le textbox est la meme que celle dans le combo
               a = MsgBox("C'est correct, bien jouez :)", vbExclamation, "Bien joué")
               
                txt_fr = ""
                txt_jap = ""
                label_sylable(1) = " "
                label_sylable(2) = " "
                label_sylable(3) = " "
                label_sylable(4) = " " 'on initialise
                
            
            Else

           a = MsgBox("Ce n'est pas bon, retentez..", vbCritical, "Dommage") '
            txt_jap = ""
End If
    End If
        End If




End Sub

Private Sub cmd_modif_Click()

Form1.Hide 'on cache le form1
Form3.Show 'on ouvre le form3

End Sub

Private Sub cmd_quit_Click() 'commande pour quitter le jeu

rep = MsgBox("Vous êtes sur le point de quitter le jeu, êtes vous sûr ?", vbYesNo, "Quitter ?")

If rep = 6 Then

End

End If

End Sub

Private Sub Command1_Click(Index As Integer)
Dim decoup() As String 'découpe le mot en sylable
Dim i As Integer
Dim Y As Integer

txt_jap = ""
label_sylable(1) = " "
label_sylable(2) = " "
label_sylable(3) = " "
label_sylable(4) = " "


Randomize
i = Int(Rnd() * c_motfr.ListCount) 'on donne à i une valeur "aleatoire" de 0 jusqu'au total du combo c_motfr



If txt_fr <> "" Or c_motjap.List(i) <> "" Then 'on test les valeurs pour savoir si on peut découper le mot en sylable

lbl_i = i

txt_fr = c_motfr.List(i) 'on donne au label le mot qui correspond au numero de i

decoup() = Split(c_sylable.List(i), "-") 'on découpe le mot du combo qui correspond au num i

Y = 1 'on donne y = 1


Do

label_sylable(Y) = decoup(Y) 'decoup(0) correspond au premier "-" du mot, on ne le compte donc pas

Y = Y + 1

rep = decoup(Y)


Loop Until rep = "F" 'on arrete lorsque la derniere sylable est égale à "F"
End If


End Sub
Private Sub Form_Load()

Dim cherche() As String
Dim mot As String
Dim renvoi As Boolean


c_motfr.AddItem "Bonjour"
c_motfr.AddItem "Aurevoir"
c_motfr.AddItem "Merci"
c_motfr.AddItem "Force"
c_motfr.AddItem "Terre"
c_motfr.AddItem "Silence"
c_motfr.AddItem "Pourquoi"
c_motfr.AddItem "Lointain"
c_motfr.AddItem "Dépêche toi"
c_motfr.AddItem "Luciole"

c_motjap.AddItem "konichiwa"
c_motjap.AddItem "sayonara"
c_motjap.AddItem "arigatou"
c_motjap.AddItem "chikara"
c_motjap.AddItem "chikyuu"
c_motjap.AddItem "damare"
c_motjap.AddItem "doushite"
c_motjap.AddItem "haruka"
c_motjap.AddItem "hayaku"
c_motjap.AddItem "hotaru"

c_sylable.AddItem "-ni-ko-wa-chi-F"
c_sylable.AddItem "-sa-na-ra yo-F"
c_sylable.AddItem "-ga-tou-ari-F"
c_sylable.AddItem "-ra-chi-ka-F"
c_sylable.AddItem "-ky-uu-chi-F"
c_sylable.AddItem "-da-re-ma-F"
c_sylable.AddItem "-shi-dou-te-F"
c_sylable.AddItem "-ka-ha-ru-F"
c_sylable.AddItem "-ha-ku-ya-F"
c_sylable.AddItem "-ho-ru-ta-F" 'initialisation de 10 mots dans les combo



Dim FileName As String
    Dim errCode As Integer
    Dim errString As String
    Dim fileContent As String
    Dim t() As String
    Dim nbLines As Long

    FileName = "add-aja.txt"
    
    fileContent = ReadFileToBuffer(FileName, errCode, errString)
    
   
    If errCode = 0 Then
        
        ' Découpage en lignes
        t() = Split(fileContent, vbCrLf)
        
        
               
            
        ' calcul du nombre de lignes et affichage
        nbLines = UBound(t()) + IIf(LBound(t()) = 0, 1, 0)
               
        For i = 0 To nbLines - 1
               
               List1.AddItem t(i)
        
        Next i
        
        
    Else
        ' Erreur rencontrée, affichage
        MsgBox "Erreur lors de la lecture. Code : " & errCode & ". Description : " & errString
    End If
    
    
i = 0
While Form1.List1.List(i) <> "" 'ici on rajoute les mots qui sont dans le fichier texte
    mot = Form1.List1.List(i) 'on donne la chaine de caractere qui est dans la liste dans la variable mot
    cherche() = Split(mot, "/") 'on decoupe le mot lorsqu'il y a un espace, pour differencier les thermes

If cherche(0) = "motfr" Then 'on cherche quand le premier mot est "motfr" pour ensuite
a = 0
    Do  'verifié que ce mot n'est pas déjà dans la liste
        If c_motfr.List(a) = cherche(1) Then
            renvoi = False
        Else
            renvoi = True
        End If
        a = a + 1
    Loop Until renvoi = False Or a = c_motfr.ListCount

    If renvoi = True Then
        c_motfr.AddItem cherche(1)
    End If
    
End If


If cherche(0) = "motjap" Then 'on cherche quand le premier mot est "motjap" pour ensuite
a = 0
    Do  'verifié que ce mot n'est pas déjà dans la liste
        If c_motjap.List(a) = cherche(1) Then
            renvoi = False
        Else
            renvoi = True
        End If
        a = a + 1
    Loop Until renvoi = False Or a = c_motjap.ListCount

    If renvoi = True Then
        c_motjap.AddItem cherche(1)
    End If
    
End If


If cherche(0) = "sylable" Then 'on cherche quand le premier mot est "sylable" pour ensuite
a = 0
    Do  'verifié que ce mot n'est pas déjà dans la liste
        If c_sylable.List(a) = cherche(1) Then
            renvoi = False
        Else
            renvoi = True
        End If
        a = a + 1
    Loop Until renvoi = False Or a = c_sylable.ListCount

    If renvoi = True Then
        c_sylable.AddItem cherche(1)
    End If
    
End If

i = i + 1
Wend
   
    
End Sub




 Conclusion

J'espère que cela vous plaira, et peu être que vous retiendrez quelques mots Japonais :)

 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

15 décembre 2008 15:48:47 :
ajout du nombre de mot dans l'aide, ajout du vbp, ajout de quelques mots / phrases (environ 60 mots en tout)

 Sources du même auteur

Source avec Zip SHIFUMI EN FORMULAIRE ACCÈSS / CODE VBA

 Sources de la même categorie

Source avec Zip Source avec une capture ASTROLEURRE par SaintMaur
Source avec Zip Source avec une capture PUISSANCE4 par SaintMaur
Source avec Zip Source avec une capture Source .NET (Dotnet) JEU DE PENDU (COUIC 1 DE +) par tresorsdevie
Source avec Zip Source avec une capture SEARCHMOTS par boscoauhunier
Source avec Zip Source avec une capture JEU DE TIR À L'ARC par xranto

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture PUISSANCE4 par SaintMaur
Source avec Zip Source avec une capture MORPION SOLITAIRE par palarcon
Source avec Zip Source avec une capture Source .NET (Dotnet) RÉSOLVEUR DE SUDOKU par Julien237
Source avec Zip Source avec une capture BMW SERIE 7 par serge_saati
Source avec Zip Source avec une capture $$$ BLACKJACK $$$ LE CÉLÈBRE JEU DU 21 PRATIQUÉ DANS LES CAS... par FrAnCkY555

Commentaires et avis

Commentaire de Charles Racaud le 13/12/2008 23:06:54

Salut,

Ca m'a l'air sympa pour apprendre le japonnais ca.
Dommage que la liste des mots soit petite, faudrait la peupler.
Pourquoi pas faire un affichage des hiragana et des katakana ?

Ps: Il manque le vbp dans zip.
__
Kenji

Commentaire de Tesan le 21/12/2008 12:38:45

Merci Charles Racaud pour votre commentaire, j'ai d'ailleurs pris en compte ce que vous me disiez, en rajoutant la semaine dernière ce qui manquait, toutefois j'aurais aimé avoir d'autre commentaire, et pourquoi pas des notes, afin de pouvoir améliorer ce programme, des idées, commentaire, critique (bonne ou mauvaise) je prends tout :)

Commentaire de Charles Racaud le 21/12/2008 14:13:52

Salut,

Le programme propose parfois les syllabes d'un autre mots.
Les syllabes sont toujours dans le même ordre.
Il serai intéressant de mettre dans le fichier texte la liste des mots avec mot FR = mot JAP et que le programme s'occupe tout seule d'identifier et de décomposer les syllabes.
Hiragana et des Katakana, API DrawText en unicode DrawTextW
__
Kenji




 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Recherche Algorithme pour programme de jeu [ par Nico_dev ] bonjour,Je réalise actuellement un petit programme de jeu (jeu de plateau avec des cases hexagonales.)La maquette de la partie graphique est finie.Ava Recherche Algorithme pour programme de jeu [ par Nico_dev ] bonjour,Je réalise actuellement un petit programme de jeu (jeu de plateau avec des cases hexagonales.)La maquette de la partie graphique est finie.Ava Aidez-moi je vous en prie [ par anabelle ] Je vous salue Je suis en train de faire un programme ca marche bien mais je voudrais ajouter un jeu qui serait la fin de mon programme.Mon Comment ajouter des images ?? [ par arkandias ] Bonjour tout le monde,Je suis sur un programme de jeu.Les deux oppoants sont deux vaisseaux qui se tirent dessus (classique).Le seul probl&#232;me, es Jeu connecté a un site web [ par Many_hack ] Bonjours , je voudrai savoir si il est possible de cr&#233;e un petit jeu sur visual basic , mais que les r&#233;sultat puisse &#234;tre retenu par un Sorte de launcher pour jeu [ par Kennou14 ] Bonsoir tout le monde, alors voila ce sera surement mon premier programme complet sur VB.J'explique je voudrais faire un programme qui permettre de ch Comment exécuter un programme dans un programmme [ par seb290590 ] Bonjour,Je voudrais faire un programme qui lance par exemple des jeu.Il y a un bouton qui lance tel jeu et un autre qui en lance un autre.Est-ce possi Programme d'installation [ par eljulios ] Bonjour, Sous Visual Basic 2005 (Express Edition) j'ai créé un jeu et j'ai aussi créé un autre projet qui va me permettre d'installer mon jeu dans un


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
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,638 sec (3)

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