diff --git a/Maxs-Game/controller.rb b/Maxs-Game/controller.rb new file mode 100644 index 0000000..842ef95 --- /dev/null +++ b/Maxs-Game/controller.rb @@ -0,0 +1,38 @@ +require_relative './model' +require_relative './view' + + +class Controller + + def initialize + @view = View.new + @model = Model.new + run + end + + def run + until @model.byeCounts >= 3 do + saidByUser = @view.speakToGma + output = handleUserInput(saidByUser) + @view.gmaSpeaks(output) + end + @view.gameEnds + end + + def handleUserInput(phrase) + + if phrase.upcase == phrase + outphrase = 'NOT SINCE 1967' + if phrase == 'BYE' + @model.incrementByeCount + outphrase = 'OK, SEEYA SONNY!' + end + outphrase + else + 'SPEAK UP SONNY!' + end + end + +end + +Controller.new diff --git a/Maxs-Game/model.rb b/Maxs-Game/model.rb new file mode 100644 index 0000000..33bc753 --- /dev/null +++ b/Maxs-Game/model.rb @@ -0,0 +1,13 @@ +class Model + + attr_reader :byeCounts + + def initialize + @byeCounts = 0 + end + + def incrementByeCount + @byeCounts = @byeCounts + 1 + end + +end diff --git a/Maxs-Game/view.rb b/Maxs-Game/view.rb new file mode 100644 index 0000000..19b3632 --- /dev/null +++ b/Maxs-Game/view.rb @@ -0,0 +1,21 @@ +class View + + + def initialize + end + + def speakToGma + puts 'What do you say to GMa? > ' + gets.chomp + end + + def gmaSpeaks(phrase) + puts phrase + end + + def gameEnds + puts 'Game Over' + exit + end + +end