Hallo zusammen,
ich versuche mich gerade an einem Galgenmännchen Spiel. Erstelle das ganze mit BlueJ, daher Methoden lassen sich durch Mausklicks aufrufen und Rückgabewerte (von den Methoden, die man als User aufruft, werden ausgegeben)...
Leider habe ich da ein Problem vermutlich mit den Arrays, genau kann ich es aber nicht sagen, vermutlich hackt es an mehreren Ecken. Wäre sehr freundlich, wenn jemand über den Code mal drüber schauen kann und mir Ratschläge geben kann
Probleme:
-Fehler beim Wort erstellen
--> neuesSpiel() resettet nicht alle Werte
---> erstellung verschlüsseltes Wort funktioniert nicht immer (ich glaube bei Schreibtisch geht nicht)
---> bustabeRaten zeigt zumindest schon mal nicht erratene Bustaben an (bei der eingabe "s" passiert nichts, obwohl s in allen drei wörtern enhalten ist)
Vielen Dank!
ich versuche mich gerade an einem Galgenmännchen Spiel. Erstelle das ganze mit BlueJ, daher Methoden lassen sich durch Mausklicks aufrufen und Rückgabewerte (von den Methoden, die man als User aufruft, werden ausgegeben)...
Leider habe ich da ein Problem vermutlich mit den Arrays, genau kann ich es aber nicht sagen, vermutlich hackt es an mehreren Ecken. Wäre sehr freundlich, wenn jemand über den Code mal drüber schauen kann und mir Ratschläge geben kann
Java:
import java.util.ArrayList;
public class Galgenmännchen
{
public String wörterListe[] ={"Tisch" , "Stuehle" , "Schreibtisch" };
public String gesuchtesWort[];
public String verschlüsseltesWort;
public String ergebnis = "";
ArrayList<String> benutzteBustaben = new ArrayList<String>();
public String neuesSpiel() {
gesuchtesWort = wörterListe[(int)(Math.random()*3)].split("");
verschlüsseltesWort = "";
ArrayList<String> benutzteBustaben = new ArrayList<String>();
return erstelleSpielfeld();
}
public String erstelleSpielfeld() {
for (int i = 0; i < gesuchtesWort.length ; i++) {
verschlüsseltesWort += "_ ";
}
return verschlüsseltesWort;
}
public String zeigeSpielfeld() {
return verschlüsseltesWort ;
}
public boolean bustabeÜberprüfen(String bustabe){
if(benutzteBustaben.contains(bustabe)){
return true;
}
else{
return false;
}
}
public String zeigeBenutzeBustaben(){
String bustaben = String.valueOf(benutzteBustaben);
return bustaben;
}
public void bustabeAustauschen(int index){
verschlüsseltesWort.split(" ")[index] = gesuchtesWort[index];
verschlüsseltesWort = String.valueOf(verschlüsseltesWort);
}
public String rateBustaben(String bustabe){
if(bustabeÜberprüfen(bustabe)){
return ungültigerBustabe(bustabe);
}
else{
benutzteBustaben.add(bustabe);
}
for (int i = 0; i < gesuchtesWort.length ; i++) {
if(gesuchtesWort[i] == bustabe){
bustabeAustauschen(i);
}
}
return zeigeSpielfeld();
}
public String ungültigerBustabe(String bustabe) {
return "bereits benutzt";
}
}
Probleme:
-Fehler beim Wort erstellen
--> neuesSpiel() resettet nicht alle Werte
---> erstellung verschlüsseltes Wort funktioniert nicht immer (ich glaube bei Schreibtisch geht nicht)
---> bustabeRaten zeigt zumindest schon mal nicht erratene Bustaben an (bei der eingabe "s" passiert nichts, obwohl s in allen drei wörtern enhalten ist)
Vielen Dank!