class Bnet::Diablo3::Follower
Attributes
experience_bonus[RW]
follower_type[RW]
gold_find[RW]
items[RW]
level[RW]
magic_find[RW]
raw_attributes[RW]
skills[RW]
Public Class Methods
from_api(follower_type, raw_response)
click to toggle source
# File lib/bnet/diablo3/follower.rb, line 8 def self.from_api(follower_type, raw_response) follower = new(follower_type: follower_type) follower.raw_attributes = raw_response follower.level = raw_response["level"] assign_items_from_raw_items(follower, raw_response["items"]) if raw_response["items"] assign_skills_from_raw_skills(follower, raw_response["skills"]) if raw_response["skills"] follower.magic_find = raw_response["stats"]["magicFind"] follower.gold_find = raw_response["stats"]["goldFind"] follower.experience_bonus = raw_response["stats"]["experienceBonus"] return follower end
Private Class Methods
assign_items_from_raw_items(follower, raw_items)
click to toggle source
# File lib/bnet/diablo3/follower.rb, line 25 def self.assign_items_from_raw_items(follower, raw_items) follower.items = raw_items.collect do |location, item_props| Bnet::Diablo3::Item.from_api(location, item_props) end return follower end
assign_skills_from_raw_skills(follower, raw_skills)
click to toggle source
# File lib/bnet/diablo3/follower.rb, line 33 def self.assign_skills_from_raw_skills(follower, raw_skills) follower.skills = raw_skills.collect do |raw_skill| Bnet::Diablo3::Skill.from_api(raw_skill) unless raw_skill.empty? end follower.skills = follower.skills.compact return follower end