Etat du code

Code du pendu téléchargeable sur Google Drive :

drive.google.com/open?id=0B0haWyfuFTVncS1Xc3IxOWUtVUk&authuser=0

 

Code pour l'interface:

 

import g4p_controls.*;
//Importation de la bibliothèque g4p_controls.*
String[] dictionnaire;
//Déclaration d'un tableau de caractère appelé dictionnaire
String motatrouver;
//Déclaration d'une chaine de caractère appelé motatrouver
String motcache;
//Déclaration d'une chaine de caractère appelé motcache
char lettrepropose;
//Déclaration de la variable lettrepropose de type caractère
String Lettresfausses;
//Déclaration d'une chaine de caractère appelé Lettresfausses
 
void setup(){
  //Déclaration de la méthode setup qui ne s'exécute qu'une seule fois et ne prend aucun paramètre
  size(620, 620, JAVA2D);
  //Taille de la fenêtre: 620 sur 620
  createGUI();
  dictionnaire = new String[]{ "cheval", "chien", "crocodile", "chat","perroquet","autruche","dromadaire","éléphant","caméléon","guépard","poisson","vache","cerf","lézard","chimpanzé" };
  //Le tableau dictionnaire est associé à un nouveau tableau permettant la création d'une liste de mots 
  motatrouver = dictionnaire[int(random(dictionnaire.length))];
  //Affectation de la chaine de caractère motatrouver au tableau dictionnaire. 
  motcache = trouverMotcache(motatrouver);
  //Affectation de motcache à trouverMotcache prenant en paramètre motatrouver
  motaffiche.setText(trouverMotcache(motcache));
  //le motaffiche modifie les données de la mthode trouvermotcache prenant en paramètre motcache
  Lettresfausses = "";
 //La chaine de caractère "Lettres fausses" est affecté à ""
  println("Mot à trouver: " + motatrouver);
  //Affichage dans la console  
}
 
/* Cache le mot par des "_" */
String trouverMotcache(String mot) {
//Déclaration de la chaîne de caractères trouverMotcache, associée à la chaîne de caractère mot.
 motcache = "";
//Affectation de la chaine de caractère à ""
for (int i = 0; i < mot.length();i=i+1)
//Déclaration de la boucle for
motcache = motcache + "_";
//Permet de transformer le motcache par des "_"
return motcache;
//Renvoie au caractère motcache
}
 
 
/* Ajoute des espaces entre chaque lettre */
String trouverLettresFausses(String mot) {
String str = "";
//Déclaration de la chaine de caractère str et affectation à ""
for (int i = 0; i < mot.length() - 1;i=i+1)
//Déclaration de la boucle for
str = str + mot.charAt(i) + " / ";
str = str + mot.charAt(mot.length() - 1);
return str;
//Renvoie au caractère str
}
 
/* Ajoute des espaces entre chaque lettre */
String trouvermotcache(String mot) {
String str = "";
//Déclaration de la chaine de caractère str et affectation à ""
for (int i = 0; i < mot .length();i=i+1)
//Déclaration de la boucle for
str = str + mot.charAt(i) + " ";
return str;
//Renvoie au caractère str
}
 
 
boolean testlettre() {
boolean lettre_trouve = false;
//Déclaration d'un booleen coder et affectation a false
StringBuilder motcacheBuilder = new StringBuilder(motcache);
  
  for (int i = 0; i < motatrouver.length(); i=i+1)
  //Déclaration de la boucle for
    if (motatrouver.charAt(i) == lettrepropose ) {
      lettre_trouve = true;
      motcacheBuilder.setCharAt(i, motatrouver.charAt(i));
    }
   
 
  if (lettre_trouve) {
    motcache = motcacheBuilder.toString();
    motaffiche.setText((motcache));  
 
  }
  else {
   Lettresfausses = Lettresfausses + lettrepropose;
    lettresfausses.setText(trouverLettresFausses(Lettresfausses));
    
  }
  
  
  println("Lettres justes: " + motcache);
  //Affichage dans la console des lettres justes
  println("Lettres fausses: " + Lettresfausses);
  //Affichage dans la console des lettres fausses
  return lettre_trouve;
  //Renvoie à la valeur lettre_trouve
}
 
void draw(){
  //Déclaration de la méthode draw qui s'exécute en boucle à l'infini
  background(150);
  //Affectation de la couleur de la fenêtre
  
 /* Si le nombre de Lettresfausses est supérieur à la valeur alors apparition d'une ligne dans la fenêtre */
  if (Lettresfausses.length() > 0)
    line(600, 600, 300, 600);
  if (Lettresfausses.length() > 1)
  line(300,600,300,300);
  if (Lettresfausses.length() > 2)
  line(300, 300, 500, 300);
  if (Lettresfausses.length() > 3)
  line(500,300,500,400);
  if (Lettresfausses.length() > 4)
  ellipse(500,400,55,55);
  if (Lettresfausses.length() > 5)
  line(500,425,500,500);
  if (Lettresfausses.length() > 6)
  line(450,450,550,450);
  if (Lettresfausses.length() > 7)
  line(500,500,450,550);
  if (Lettresfausses.length() > 8)
  line(500,500,550,550);
  if (Lettresfausses.length() > 9){
  line(300,500,350,600);
  defaite.setText("DEFAITE !"); }
 
}  
 
void lettressaisie_change1(GTextField source, GEvent event) { 
}
void valider_click1(GButton source, GEvent event) { 
  println("Saisie: " + lettressaisie.getText().charAt(0));
  if (lettressaisie.getText().length() < 1)
     return;
     lettrepropose = lettressaisie.getText().charAt(0);  
  testlettre();
  lettressaisie.setText("");
    
}
 void keyPressed()
  {
   if (keyCode == ENTER)
{  println("Saisie: " + lettressaisie.getText().charAt(0));
  if (lettressaisie.getText().length() < 1)
     return;
     lettrepropose = lettressaisie.getText().charAt(0);  
  testlettre();
  lettressaisie.setText(""); }
 
  } 
 
 
Code G4P:
 
void createGUI(){
  G4P.messagesEnabled(false);
  G4P.setGlobalColorScheme(GCScheme.BLUE_SCHEME);
  G4P.setCursor(ARROW);
  if(frame != null)
    frame.setTitle("LE JEU DU PENDU");
  
  motaffiche = new GLabel(this, 40, 60, 156, 93);
  motaffiche.setOpaque(false);
 
  motafficheTitre = new GLabel(this, 40, 10, 156, 93);
  motafficheTitre.setText("Mot à trouver:");
  motafficheTitre.setOpaque(false);
 
  defaite = new GLabel(this, 20, 340, 173, 80);
  
  lettresfausses = new GLabel(this, 20, 140, 173, 80);
  lettresfausses.setText("");
  lettresfausses.setOpaque(false);
 
  lettresfaussesTitre = new GLabel(this, 40, 120, 150, 79);
  lettresfaussesTitre.setText("Lettres Fausses:");
  lettresfaussesTitre.setOpaque(false);
  
  lettressaisie = new GTextField(this, 400, 100, 60, 30, G4P.SCROLLBARS_NONE);
  lettressaisie.setOpaque(true);
  lettressaisie.addEventHandler(this, "lettressaisie_change1");
  
  lettresSaisiesLabel = new GLabel(this, 400, 46, 85, 22);
  lettresSaisiesLabel.setText("Lettres saisies");
  lettresSaisiesLabel.setOpaque(false);
  
  boutonvalider = new GButton(this, 240, 100, 80, 30);
  boutonvalider.setText("Valider");
  boutonvalider.addEventHandler(this, "valider_click1");
}
 
GLabel motaffiche; 
GLabel motafficheTitre; 
GLabel lettresfausses; 
GLabel lettresfaussesTitre; 
GTextField lettressaisie; 
GLabel defaite;  
GLabel lettresSaisiesLabel; 
GButton boutonvalider;