Class: GameSuggestor
- Inherits:
-
Object
- Object
- GameSuggestor
- Defined in:
- lib/were_wolf/game_suggestor.rb
Instance Method Summary collapse
-
#initialize(num_of_players, no_of_runs) ⇒ GameSuggestor
constructor
A new instance of GameSuggestor.
- #run ⇒ Object
Constructor Details
#initialize(num_of_players, no_of_runs) ⇒ GameSuggestor
Returns a new instance of GameSuggestor.
5 6 7 8 |
# File 'lib/were_wolf/game_suggestor.rb', line 5 def initialize(num_of_players, no_of_runs) @players_count = num_of_players @no_of_runs = no_of_runs end |
Instance Method Details
#run ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/were_wolf/game_suggestor.rb', line 10 def run # Preferred Wolves Win Percentage pref_wolves_prob = 70 wolves_count = 1 absolute_diff = 1000 best_wins = {} while true wins = GameSimulator.new(wolves_count, @players_count - wolves_count, @no_of_runs).simulate percent_wolves_win = (100.0*wins[Game::WOLF]/@no_of_runs) new_diff = (pref_wolves_prob - percent_wolves_win).abs if new_diff < absolute_diff absolute_diff = new_diff best_wins = wins wolves_count += 1 else return result(wolves_count - 1, best_wins) end end end |