Sha256: f4cecd225af6b0a493d5a562c433a04f010ddc5bfc9dddcc5db6d674c24f89e6
Contents?: true
Size: 1.15 KB
Versions: 2
Compression:
Stored size: 1.15 KB
Contents
# frozen_string_literal: true module Codebreakergem class InformationPresenter class << self def rules I18n.t(:rules) end def stats result = I18n.t(:stats_header) stats_from_file = FileWorker.read_from_file(Game::FILE) return result unless stats_from_file if stats_from_file.is_a? Array sorted_data = stats_from_file.sort_by { |item| [item[:order], item[:attempts_used], item[:hints_used]] } sorted_data.each_with_index { |item, index| result += stats_constructor(index + 1, item) } else result += stats_constructor(1, stats_from_file) end result end def stats_as_hash stats = FileWorker.read_from_file(Game::FILE) return stats.sort_by { |item| [item[:order], item[:attempts_used], item[:hints_used]] } if stats.is_a? Array stats end private def stats_constructor(index, item) "#{index}\t #{item[:name]}\t #{item[:difficulty]}\t #{item[:attempts_total]}\t " \ "#{item[:attempts_used]}\t #{item[:hints_total]}\t #{item[:hints_used]}\t #{item[:game_time]}\n" end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
codebreakergem-0.1.17 | lib/classes/information_presenter.rb |
codebreakergem-0.1.16 | lib/classes/information_presenter.rb |