hangman spiel

MurkyTimmZz

Neues Mitglied
Java:
 /**
 * text based version of hangman
 */

public class HangmanGame {
	HangmanLexicon lexicon = new HangmanLexicon();
	private String hangmanWord;
	private char[] hangmanWordArray;
	private String secretWord;
	private char[] secretWordArray;
	private int leftGuesses;
	
	public HangmanGame(){
		hangmanWord =   lexicon.getRandomWord();
		hangmanWordArray = hangmanWord.toCharArray();
		secretWord = setUpSecretWord(hangmanWord);
		leftGuesses = 8;
	}
	
	private String setUpSecretWord(String hangmanWord){
		secretWordArray = new char[hangmanWord.length()];
		for (int i = 0; i < hangmanWord.length(); i++){
			secretWordArray[i] = '-';
		}
		secretWord = new String(secretWordArray);
		return secretWord;
	}
	
	public boolean guess(char character){
		for (int i = 0;i < hangmanWord.length(); i++){
			if(hangmanWordArray[i] == character){
				//updateSecretWord();
				return true;
			}
		}
		leftGuesses --;
		return false;
	}
	
	public String getSecretWord(){
		return secretWord;
	}
	
	private void updateSecretWord(char guess){
		// secretWord aktualisieren ( die stellen an denen der buchstabe vorkommt aufdecken )
	}
	
			
			
			
	public boolean isGameLost(){
		if(leftGuesses < 1){
			
			return true;
		}
		else {
			return false;
		}
	}
	
	public boolean isGameWon(){
		if(secretWord.equals(hangmanWord)){
			return true;
		}
		else{
			return false;
		}
	}
	
	public String getHangmanWord(){
		return hangmanWord;
	}
	
	public int getGuessesLeft(){
		return leftGuesses;
	}
}  [code=Java]

Dies ist mein bisheriger Code zu Hangman.
Es funktioniert eigentlich alles schon nur die letzte Methode fehlt mir in welcher mir die vorgegebenen Striche durch die richtigen Buchstaben ersetzt werden.
[code] private void updateSecretWord(char guess){
		// secretWord aktualisieren ( die stellen an denen der buchstabe vorkommt aufdecken )
	}
[code]
wenn mir jmd. weiter helfen könnte wäre ich äußerst dankbar.
 
Hallo,

soweit ich das durschaue ( da dein Code sehr unübersichtlich ist ), speicherst du das Wort, das erraten werden soll, in secretWord. Dann wäre meine Methode die dies updatet die folgende:

Java:
private void updateSecretWord(char guess){

    for(int i = 0; i < secretWord.length(); i++){

         if(hangmanWordArray[i] == guess){

              secretWordArray[i] = guess;

         }

    }

    secretWord = new String(secretWordArray);

}


Hoffe ich konnte dir weiterhelfen. Für Funktionalität ist nicht garantiert
 
Zuletzt bearbeitet:

Zurück
Oben