/-
Created
February 20, 2014 00:24
Revisions
-
eveadele created this gist
Feb 20, 2014 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,69 @@ #!/usr/bin/env ruby #Choose a word word_bank = ["mountains", "madness", "colour", "unknown", "dream", "witch", "house", "quest", "horror", "west", "reanimator", "red", "hook", "case", "ward", "space", "shadow", "time", "over", "shunned", "whisperer", "darkness"] word = word_bank.sample chances = 8 #Generate guessed word guessed_word = "" len = word.length len.times do guessed_word << "_" end #Start game puts "Welcome to Hangman!" puts puts "Word: " + guessed_word puts "Chances remaining: #{chances}" while guessed_word != word && chances > 0 #Get user input print "Guess a single letter (a-z) or the entire word: " guess = gets.chomp #Evaluate guess correct = false occurrences = 0 loc = 0 if guess.length > 1 #User guesses entire word if guess == word guessed_word = word else puts "That's not the word, sorry." chances -= 1 end else #User guesses individual letter word.each_char do |letter| if guess == letter guessed_word[loc] = letter occurrences += 1 correct = true end loc += 1 end if correct == true #Inform user of outcome of their guess puts "Found #{occurrences} occurrence(s) of the character #{guess}." puts puts "Word: " + guessed_word else chances -= 1 puts "Sorry, no #{guess}'s found." puts puts "Word: " + guessed_word puts "Chances remaining: #{chances}" end end end if guessed_word == word puts "Congratulations, you've guessed the word!" else puts "You're out of chances, better luck next time..." end