Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Importerer utils
- import java.util.Scanner;
- import java.util.Arrays;
- class HelloWorld{
- static Scanner scan = new Scanner(System.in);
- //Main metoden i dette programmet starter ganske enkelt en metode
- public static void main(String[]args){
- //kaller til meny-metoden
- menu();
- }
- //Metoden setter i gang spillet, og spoer deg om du vil proeve igjen
- static void menu(){
- System.out.println("Welcome to Hangman!");
- //Kaller til metoden som kjoerer spillet
- hangmanGame();
- String response = "y";
- while (response.equalsIgnoreCase("y")){
- System.out.println("Want to try again? y/n:");
- response = scan.nextLine();
- while (!(response.equalsIgnoreCase("y") || (response.equalsIgnoreCase("n")))){
- System.out.println("Invalid response");
- response = scan.nextLine();
- }
- if(response.equalsIgnoreCase("n")){
- break;
- }
- //Kaller til metoden som kjoerer spillet igjen hvis du sier ja
- hangmanGame();
- }
- }
- //Metoden som kjoerer spillet
- static void hangmanGame(){
- //Deklarerer variabler og arrays for bruk i spillet
- int counter = 0;
- String answer;
- String answerTrue = "BANANA";
- String[] word = {"_","_","_","_","_","_"};
- String[] wordTrue = {"B","A","N","A","N","A"};
- /*While loopen som kontrollerer selve hangman operasjonen. Her tar jeg input
- fra bruker tar i bruk metoden som sjekker svaret og bruker returverdien til aa
- bedoemme hva programmet skal gjoere med input verdien. Et unntak er om du
- gjetter ordet med input, da avslutter loopen og legger til rette for at programmet
- skjoenner at du har rett svar.*/
- while(!((Arrays.equals(word, wordTrue)) || (counter >= 6))){
- System.out.println("Guess a letter or word. Only use capital letters");
- answer = scan.nextLine();
- //Kaller til metoden som sjekker svaret
- verifyAnswer(wordTrue, word, answer, answerTrue);
- if(verifyAnswer(wordTrue, word, answer, answerTrue)){
- System.out.println("Correct!");
- for (int a = 0;a<wordTrue.length;a++ ) {
- if (answer.equals(wordTrue[a])){
- word[a] = answer;
- } else if (answer.equalsIgnoreCase(answerTrue)) {
- word = wordTrue;
- System.out.println("Congratulations!");
- break;
- }
- }
- }
- else if (counter <= 6) {
- counter++;
- System.out.println("Wrong!");
- }
- //Kaller til metoden som har selve hangmanfigurene i seg
- hangmanDrawing(counter);
- System.out.println(Arrays.toString(word));
- }
- //Programmet sjekker om du har vunnet eller tapt og gir beskjed.
- if (counter < 6){
- System.out.println("Yay, you won!");
- } else {
- System.out.println("LOSER!");
- }
- }
- /*Metoden sjekker om du har funnet et gyldig svar og returnerer en boolean verdi
- saa programmet vet hva det skal gjoere videre*/
- static boolean verifyAnswer(String[] wordTrue,String[] word, String answer, String answerTrue){
- boolean verify = false;
- for (int i = 0;i<wordTrue.length -1;i++){
- if (answer.equals(wordTrue[i])){
- verify = true;
- }
- if (word[i].equals(wordTrue[i])){
- verify = false;
- }
- if(answer.equalsIgnoreCase(answerTrue)){
- verify = true;
- break;
- }
- }
- return verify;
- }
- //Metoden skriver ganske enkelt ut en hangmanfigur utifra hvor mange feil du har
- static void hangmanDrawing(int counter){
- System.out.println (" _________ ");
- System.out.println ("| | ");
- if (counter >= 1){
- System.out.println ("| O ");
- } else {
- System.out.println ("| ");
- }
- if (counter == 2){
- System.out.println ("| | ");
- } else if (counter == 3){
- System.out.println ("| /| ");
- } else if(counter >= 4) {
- System.out.println ("| /|\\ ");
- } else {
- System.out.println ("| ");
- }
- if (counter == 5) {
- System.out.println ("| / ");
- } else if (counter >= 6){
- System.out.println ("| / \\ ");
- } else {
- System.out.println ("| ");
- }
- System.out.println ("| ");
- System.out.println ("| ");
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement