class Mastermind::Player
Attributes
color_combo[R]
date_played[R]
guesses[R]
guesses_at_pause_count[R]
name[R]
record[R]
save_game_worker[R]
time_at_game_save[R]
time_started[R]
time_taken[R]
Public Class Methods
new(response: nil, player: nil)
click to toggle source
attr_accessor :name, :trials, :time_taken, :date_played
# File lib/mastermind/player.rb, line 7 def initialize(response: nil, player: nil) @response = response || Message.new set_attr player if player end
Public Instance Methods
make_save_attr(time_started, color_combo, guesses_at_pause_count)
click to toggle source
# File lib/mastermind/extensions/continue_later.rb, line 76 def make_save_attr(time_started, color_combo, guesses_at_pause_count) @time_started = time_started @color_combo = color_combo @guesses_at_pause_count = guesses_at_pause_count @time_at_game_save = Time.now.to_i end
save_game(*game_data)
click to toggle source
# File lib/mastermind/extensions/continue_later.rb, line 69 def save_game(*game_data) @save_game_worker ||= SaveGame.new make_save_attr(game_data[0], game_data[1], game_data[2]) unless game_data.empty? @save_game_worker.save_record(self) end
set_attr(input)
click to toggle source
# File lib/mastermind/player.rb, line 12 def set_attr(input) @name = input[:name] if input[:name] @guesses = input[:guesses] if input[:guesses] @time_taken = input[:time_taken] if input[:time_taken] @date_played = input[:date_played] if input[:date_played] end
set_save_attr(game_data = {})
click to toggle source
# File lib/mastermind/extensions/continue_later.rb, line 92 def set_save_attr(game_data = {}) # check if game_data is a game or a hash @name = game_data[:name] @time_started = game_data[:time_started] @color_combo = game_data[:color_combo] @guesses_at_pause_count = game_data[:guesses_at_pause_count] @time_at_game_save = game_data[:time_at_game_save] @guesses = @time_taken = nil end
time()
click to toggle source
# File lib/mastermind/player.rb, line 23 def time if @time_taken mins = @time_taken/60 secs = @time_taken%60 "#{mins}m#{secs}s" end end
to_h()
click to toggle source
# File lib/mastermind/extensions/continue_later.rb, line 83 def to_h player = old_to_h player[:time_started] = @time_started player[:color_combo] = @color_combo player[:guesses_at_pause_count] = @guesses_at_pause_count player[:time_at_game_save] = @time_at_game_save player end
Also aliased as: old_to_h
winner_response()
click to toggle source
# File lib/mastermind/player.rb, line 19 def winner_response @response.winner(@name, @guesses, time).message end