Erweiterung
This commit is contained in:
parent
455978b522
commit
3681b687e8
|
|
@ -1,6 +1,5 @@
|
|||
package gfn.marc;
|
||||
|
||||
import java.io.FileNotFoundException;
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Scanner;
|
||||
|
|
@ -23,46 +22,87 @@ public class hangman {
|
|||
StringBuilder maske = erzeugeMaske(wort.toString());
|
||||
StringBuilder maskeVorlage = erzeugeMaske(wort.toString());
|
||||
|
||||
System.out.println(wort.toString());
|
||||
System.out.println(maske.toString());
|
||||
|
||||
int zaehler = wort.length() + 3;
|
||||
int versuche = 12;
|
||||
int zaehler = 1;
|
||||
boolean geloest = false;
|
||||
boolean eingabeOkay;
|
||||
|
||||
|
||||
while (!wortLowerCase.toString().equals(maskeVorlage.toString()) && zaehler != 0) {
|
||||
System.out.println(zaehler == wort.length() + 3 ? " Bitte raten Sie einen Buchstaben!" + "| Versuche: " + zaehler :
|
||||
" Bitte raten Sie einen weiteren Buchstaben" + "| Versuche: " + zaehler);
|
||||
while (!wortLowerCase.toString().equals(maskeVorlage.toString()) && versuche != 0 && !geloest) {
|
||||
System.out.println(zaehler == 0 ? "Bitte raten Sie einen Buchstaben! (Geben Sie ein \"!\" ein, um zu lösen)" + " | übrige Versuche: " + versuche :
|
||||
"Bitte raten Sie einen weiteren Buchstaben oder lösen Sie (\"!\")" + " | übrige Versuche: " + versuche);
|
||||
|
||||
// Eingabe erfassen und verifizieren
|
||||
|
||||
String eingabe = "";
|
||||
while (true) {
|
||||
eingabeOkay = false;
|
||||
eingabe:
|
||||
while (!eingabeOkay) {
|
||||
eingabe = scanner.next().trim().toLowerCase();
|
||||
if (!eingabe.matches("[A-Za-zäöüÄÖÜ]{1}")) {
|
||||
if (!eingabe.matches("[A-Za-zäöüÄÖÜ!]{1}")) {
|
||||
System.err.println("Sie dürfen nur einen einzelnen Buchstaben eingeben! (z.B: \"M\" oder \"m\")");
|
||||
}
|
||||
|
||||
// Soll ein Lösungswort eingegeben werden?
|
||||
if (eingabe.equals("!")) {
|
||||
System.out.println("Bitte geben Sie das Lösungswort ein! (\"!\" zum Abbrechen)");
|
||||
eingabe = scanner.next().trim().toLowerCase();
|
||||
if (!eingabe.matches("[A-Za-zäöüÄÖÜ!]")) {
|
||||
System.out.println("Es sind nur Buchstaben erlaubt!");
|
||||
} else if (eingabe.equals("!")) {
|
||||
} else {
|
||||
|
||||
|
||||
// Wenn das Lösungswort stimmt
|
||||
if (eingabe.trim().toLowerCase().equals(wort.toString().toLowerCase())) {
|
||||
System.out.println("Richtig!");
|
||||
geloest = true;
|
||||
eingabeOkay = true;
|
||||
|
||||
// Wenn das Lösungswort nicht stimmt
|
||||
} else {
|
||||
versuche--;
|
||||
System.out.println("Leider falsch!");
|
||||
System.out.println(maske.toString());
|
||||
break eingabe;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
break;
|
||||
eingabeOkay = true;
|
||||
}
|
||||
}
|
||||
|
||||
// Eingabe verarbeiten
|
||||
while (wortLowerCase.indexOf(eingabe) != -1) {
|
||||
maske.replace(wortLowerCase.indexOf(eingabe), (wortLowerCase.indexOf(eingabe) + 1),
|
||||
String.valueOf(wort.charAt(wortLowerCase.indexOf(eingabe))));
|
||||
wortLowerCase.replace(wortLowerCase.indexOf(eingabe), (wortLowerCase.indexOf(eingabe) + 1), "*");
|
||||
if (!geloest) {
|
||||
|
||||
if (wortLowerCase.indexOf(eingabe) == -1) {
|
||||
System.out.println("Der geratene Buchstabe ist nicht im Lösungswort enthalten.");
|
||||
versuche--;
|
||||
}
|
||||
|
||||
// Eingabe verarbeiten
|
||||
while (wortLowerCase.indexOf(eingabe) != -1) {
|
||||
maske.replace(wortLowerCase.indexOf(eingabe), (wortLowerCase.indexOf(eingabe) + 1),
|
||||
String.valueOf(wort.charAt(wortLowerCase.indexOf(eingabe))));
|
||||
wortLowerCase.replace(wortLowerCase.indexOf(eingabe), (wortLowerCase.indexOf(eingabe) + 1), "*");
|
||||
}
|
||||
|
||||
|
||||
// Zaehler herunterzählen
|
||||
zaehler++;
|
||||
|
||||
// Maske ausgeben
|
||||
System.out.println(maske.toString());
|
||||
}
|
||||
|
||||
// Zaehler herunterzählen
|
||||
zaehler--;
|
||||
|
||||
// Maske ausgeben
|
||||
System.out.println(maske.toString());
|
||||
}
|
||||
|
||||
|
||||
// Ausgabe: Spiel gewonnen / verloren
|
||||
if (zaehler == 0) {
|
||||
System.out.println("Sie haben verloren!");
|
||||
} else {
|
||||
System.out.println("Sie haben gewonnen!");
|
||||
System.out.println("Sie haben mit " + zaehler + " Spielzügen gewonnen!");
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue