diff --git a/TD3_DEV51_Qualite_Algo/.idea/encodings.xml b/TD3_DEV51_Qualite_Algo/.idea/encodings.xml index aa00ffa..6c65712 100644 --- a/TD3_DEV51_Qualite_Algo/.idea/encodings.xml +++ b/TD3_DEV51_Qualite_Algo/.idea/encodings.xml @@ -1,7 +1,7 @@ + - \ No newline at end of file diff --git a/TD3_DEV51_Qualite_Algo/resources/HangedGirl.jpg b/TD3_DEV51_Qualite_Algo/resources/HangedGirl.jpg new file mode 100644 index 0000000..a769ef4 Binary files /dev/null and b/TD3_DEV51_Qualite_Algo/resources/HangedGirl.jpg differ diff --git a/TD3_DEV51_Qualite_Algo/src/main/java/fr/iutfbleau/TD3_DEV51_Qualite_Algo/Models/Letter.java b/TD3_DEV51_Qualite_Algo/src/main/java/fr/iutfbleau/TD3_DEV51_Qualite_Algo/Models/Letter.java index f832d9c..fb1115f 100644 --- a/TD3_DEV51_Qualite_Algo/src/main/java/fr/iutfbleau/TD3_DEV51_Qualite_Algo/Models/Letter.java +++ b/TD3_DEV51_Qualite_Algo/src/main/java/fr/iutfbleau/TD3_DEV51_Qualite_Algo/Models/Letter.java @@ -1,3 +1,5 @@ +package fr.iutfbleau.TD3_DEV51_Qualite_Algo.Models; + public class Letter{ private char letter; private boolean status = false; @@ -6,11 +8,11 @@ public class Letter{ this.letter = letter; } /* Show status */ - private boolean getStatus(){ - return status + public boolean getStatus(){ + return status; } /* Verify status true, false */ - private boolean isGood(char c){ + public boolean isGood(char c){ if( this.letter == c){ this.status = true; return true; diff --git a/TD3_DEV51_Qualite_Algo/src/main/java/fr/iutfbleau/TD3_DEV51_Qualite_Algo/Models/Word.java b/TD3_DEV51_Qualite_Algo/src/main/java/fr/iutfbleau/TD3_DEV51_Qualite_Algo/Models/Word.java index 43fe63d..3c3404a 100644 --- a/TD3_DEV51_Qualite_Algo/src/main/java/fr/iutfbleau/TD3_DEV51_Qualite_Algo/Models/Word.java +++ b/TD3_DEV51_Qualite_Algo/src/main/java/fr/iutfbleau/TD3_DEV51_Qualite_Algo/Models/Word.java @@ -1,20 +1,22 @@ +package fr.iutfbleau.TD3_DEV51_Qualite_Algo.Models; + import java.util.*; public class Word { - private String word; + private final String word; private Letter[] tabLetter; private String c; private Word(String word){ this.word = word; for(int i = 0; i< this.word.length();i++){ - this.tabLetter[i] = Letter(this.word.charAt(i)) + this.tabLetter[i] = new Letter(this.word.charAt(i)); } } /* Lettre dans le mot */ - private boolean VerifyLetter(String c){ + private boolean VerifyLetter(char c){ boolean return_bool = false; - for(Letter letter in this.tabLetter){ + for(Letter letter : this.tabLetter){ if(!letter.getStatus()){ if(letter.isGood(c)){ return_bool = true; @@ -26,7 +28,7 @@ public class Word { /* Le mot a été deviné */ private boolean IsComplet(){ - if(Letter letter : this.tabLetter){ + for(Letter letter : this.tabLetter){ if(!letter.getStatus()){ return false; } @@ -34,16 +36,5 @@ public class Word { } return true; } - - - - - - - - - - - } \ No newline at end of file diff --git a/TD3_DEV51_Qualite_Algo/src/main/java/fr/iutfbleau/TD3_DEV51_Qualite_Algo/View/hangedManView.java b/TD3_DEV51_Qualite_Algo/src/main/java/fr/iutfbleau/TD3_DEV51_Qualite_Algo/View/hangedManView.java new file mode 100644 index 0000000..e9ef442 --- /dev/null +++ b/TD3_DEV51_Qualite_Algo/src/main/java/fr/iutfbleau/TD3_DEV51_Qualite_Algo/View/hangedManView.java @@ -0,0 +1,75 @@ +package fr.iutfbleau.TD3_DEV51_Qualite_Algo.View; +import javax.imageio.ImageIO; +import javax.swing.*; +import java.awt.*; +import java.io.File; +import java.io.IOException; + + +public class hangedManView extends JComponent { + + private int state; + + public hangedManView() throws IOException { + super(); + this.state = 0; + } + + protected void paintComponent(Graphics g) { + super.paintComponent(g); + Graphics2D g2d = (Graphics2D) g; + + int x = 150; + int y = 200; + + + if(this.state > 8) { + // paint une image + g2d.drawImage(new ImageIcon(Thread.currentThread().getContextClassLoader().getResource("resources/HangedGirl.jpg")).getImage(), x, y, this); + }else{ + // on paint un homme batton + // Base + if (this.state > 0) { + g2d.drawLine(x - 100, y + 100, x + 100, y + 100); + } + // Poteau vertical + if (this.state > 1) { + g2d.drawLine(x - 50, y + 100, x - 50, y - 100); + } + // Traverse horizontale + if (this.state > 2) { + g2d.drawLine(x - 50, y - 100, x + 50, y - 100); + } + // Petite corde verticale + if (this.state > 3) { + g2d.drawLine(x + 50, y - 100, x + 50, y - 70); + } + + x += 50; + y -= 40; + + // Tête + if (this.state > 4) { + g2d.drawOval(x - 15, y - 30, 30, 30); + } + // Corps + if (this.state > 5) { + g2d.drawLine(x, y, x, y + 40); + } + // Bras + if (this.state > 6) { + g2d.drawLine(x, y + 10, x - 20, y + 20); + g2d.drawLine(x, y + 10, x + 20, y + 20); + } + // Jambes + if (this.state > 7) { + g2d.drawLine(x, y + 40, x - 20, y + 70); + g2d.drawLine(x, y + 40, x + 20, y + 70); + } + } + } + + public void setState(int state) { + this.state = state; + } +}