/
mad_libs_game3.rb
64 lines (50 loc) · 1.45 KB
/
mad_libs_game3.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
$user_name = "" #sets user name outside so that each round it doesnt have to be reset by user
$game_counter = 0
def fetch_name
if "" == $user_name || @new_user_response == "y" #checks to see if the user has already input name in previous round of game
puts "What is your name?"
$user_name = gets.chomp
end
end
def madlibs
quote = "I've learned that noun will verb what you said, noun will verb what you did, but noun will never verb how you made them verb"
passage = quote.split
puts "\nMAD LIBS!!!"
question = "\nWould you like to start a new game? Y/N"
puts question
answer = gets.chomp
puts ""
answer.downcase!
counter = 0
if answer == "y"
fetch_name()
if counter < $game_counter ||= 0
puts "New user? Y/N\n"
@new_user_response = gets.chomp
@new_user_response.downcase!
if @new_user_response == "y"
puts ""
fetch_name()
end
end
for i in 0...passage.length
if passage[i].include?("noun")
puts "\nGive me a noun, #{$user_name}."
passage[i] = gets.chomp
elsif passage[i].include?("verb")
puts "\nGive me a verb, #{$user_name}."
passage[i] = gets.chomp
end
end
$game_counter += 1
puts ""
puts passage.join(" ") + ".\n-#{$user_name}"
madlibs #recursive method (plays game again)
elsif answer == "n"
puts "Goodbye!"
else
puts "Please choose Y/N."
madlibs
end
end
madlibs