Sha256: 7dbcbb06722c9b02d65812aa634d1171b7e7807dbd024b456379bc5641d7fd96
Contents?: true
Size: 682 Bytes
Versions: 5
Compression:
Stored size: 682 Bytes
Contents
# frozen_string_literal: true module Codebreaker class Player def initialize(name, tries_left, hints_left) self.name = name @tries_left = tries_left @hints_left = hints_left end def formatted format('%10s %6i', @name, points) end def as_json { name: @name, points: points } end def to_json(*options) as_json.to_json(*options) end def points 100 * (@tries_left + 1) + 75 * @hints_left end private def name=(value) msg = 'The name must be between 1 and 10 characters long' raise(ArgumentError, msg) unless (1...10).cover? value.length @name = value end end end
Version data entries
5 entries across 5 versions & 1 rubygems