Class: MonkeyMusic::User
Instance Attribute Summary collapse
-
#recommendations ⇒ Object
Returns the value of attribute recommendations.
-
#toplists ⇒ Object
Returns the value of attribute toplists.
Attributes inherited from Base
#character, #id, #level, #x, #y
Instance Method Summary collapse
- #dump ⇒ Object
-
#initialize ⇒ User
constructor
A new instance of User.
- #load_from_file(file) ⇒ Object
- #recommend!(tier) ⇒ Object
Methods inherited from Base
#assign_id, #at?, #direction_of, #distance_to, #move!, #place!, #pos, #serialize, #to_json, #to_s
Constructor Details
#initialize ⇒ User
Returns a new instance of User.
7 8 9 10 |
# File 'lib/monkey_music/units/user.rb', line 7 def initialize @toplists = {} @recommendations = @remaining_recommendations = [] end |
Instance Attribute Details
#recommendations ⇒ Object
Returns the value of attribute recommendations.
5 6 7 |
# File 'lib/monkey_music/units/user.rb', line 5 def recommendations @recommendations end |
#toplists ⇒ Object
Returns the value of attribute toplists.
5 6 7 |
# File 'lib/monkey_music/units/user.rb', line 5 def toplists @toplists end |
Instance Method Details
#dump ⇒ Object
23 24 25 26 |
# File 'lib/monkey_music/units/user.rb', line 23 def dump YAML::dump :toplists => @toplists, :recommendations => @recommendations end |
#load_from_file(file) ⇒ Object
28 29 30 31 32 33 |
# File 'lib/monkey_music/units/user.rb', line 28 def load_from_file(file) data = YAML::load(IO.read file) @toplists = data[:toplists] @recommendations = data[:recommendations] @remaining_recommendations = @recommendations end |
#recommend!(tier) ⇒ Object
12 13 14 15 16 17 18 19 20 21 |
# File 'lib/monkey_music/units/user.rb', line 12 def recommend!(tier) index = @remaining_recommendations.index do |r| r.tier == tier end if index @remaining_recommendations.delete_at(index) else @recommendations.find { |r| r.tier == tier } end end |