Sha256: f2adce493ea77edaaf08f59ae7c88cc114f853294a0f9a7afc880ef4be8cfcad

Contents?: true

Size: 662 Bytes

Versions: 3

Compression:

Stored size: 662 Bytes

Contents

class SimonGame < Adhearsion::CallController
  def run
    answer
    reset
    loop do
      say_number
      collect_attempt
      verify_attempt
    end
  end

  def random_number
    rand(10).to_s
  end

  def update_number
    @number << random_number
  end

  def say_number
    update_number
    speak @number
  end

  def collect_attempt
    @attempt = input @number.length
  end

  def verify_attempt
    if attempt_correct?
      speak 'good'
    else
      speak "#{@number.length - 1} times wrong, try again smarty"
      reset
    end
  end

  def attempt_correct?
    @attempt == @number
  end

  def reset
    @attempt, @number = '', ''
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
adhearsion-2.0.0.beta1 lib/adhearsion/generators/app/templates/lib/simon_game.rb
adhearsion-2.0.0.alpha3 lib/adhearsion/generators/app/templates/lib/simon_game.rb
adhearsion-2.0.0.alpha2 lib/adhearsion/generators/app/templates/lib/simon_game.rb