diff --git a/intense_web_server.rb b/intense_web_server.rb new file mode 100644 index 0000000..861e36e --- /dev/null +++ b/intense_web_server.rb @@ -0,0 +1,6 @@ +require 'rubygems' + +require_relative 'lib/extreme_startup/web_server' +ExtremeStartup::WebServer.settings.default_question_delay = 1 +ExtremeStartup::WebServer.settings.question_factory = ExtremeStartup::WorkshopQuestionFactory.new +ExtremeStartup::WebServer.run! diff --git a/lib/extreme_startup/quiz_master.rb b/lib/extreme_startup/quiz_master.rb index c9ce91e..2bf4d97 100644 --- a/lib/extreme_startup/quiz_master.rb +++ b/lib/extreme_startup/quiz_master.rb @@ -63,10 +63,11 @@ def start class QuizMaster - def initialize(player, scoreboard, question_factory) + def initialize(player, scoreboard, question_factory, default_delay = 5) @player = player @scoreboard = scoreboard @question_factory = question_factory + @default_delay = default_delay end def player_passed?(response) @@ -82,9 +83,8 @@ def start log.info("Player: #{@player}|#{question.log_result}") unless $silence_logging @scoreboard.increment_score_for(@player, question.score) @player.log_result(question.id, question.result, question.score) - #sleep question.delay_before_next(1) - sleep question.delay_before_next + sleep question.delay_before_next(@default_delay) end end end -end \ No newline at end of file +end diff --git a/lib/extreme_startup/web_server.rb b/lib/extreme_startup/web_server.rb index e90221a..a38b435 100644 --- a/lib/extreme_startup/web_server.rb +++ b/lib/extreme_startup/web_server.rb @@ -20,9 +20,8 @@ class WebServer < Sinatra::Base set :players_threads, Hash.new set :scoreboard, Scoreboard.new set :question_factory, QuestionFactory.new - #set :question_factory, WorkshopQuestionFactory.new - #set :question_factory, WarmupQuestionFactory.new set :quizmaster_type, QuizMaster + set :default_question_delay, 5 get '/' do haml :leaderboard, :locals => { @@ -112,7 +111,7 @@ def to_json(*a) players[player.uuid] = player player_thread = Thread.new do - settings.quizmaster_type.new(player, scoreboard, question_factory).start + settings.quizmaster_type.new(player, scoreboard, question_factory, settings.default_question_delay).start end players_threads[player.uuid] = player_thread diff --git a/warmup_web_server.rb b/warmup_web_server.rb new file mode 100644 index 0000000..7412ec8 --- /dev/null +++ b/warmup_web_server.rb @@ -0,0 +1,6 @@ +require 'rubygems' + +require_relative 'lib/extreme_startup/web_server' +ExtremeStartup::WebServer.settings.default_question_delay = 5 +ExtremeStartup::WebServer.settings.question_factory = ExtremeStartup::WarmupQuestionFactory.new +ExtremeStartup::WebServer.run!