Method: Wowr::Classes::Character#initialize

Defined in:
lib/wowr/character.rb

#initialize(elem, api = nil) ⇒ Character

Returns a new instance of Character.



38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
# File 'lib/wowr/character.rb', line 38

def initialize(elem, api = nil)
	@api = api
	
	@name	 			= elem[:name]
	@level 			= elem[:level].to_i
	@url 				= elem[:url] || elem[:charUrl]
	@rank 			= elem[:rank].to_i
	
	@klass 			= elem[:class]
	@klass_id		= elem[:classId].to_i
	
	@gender 		= elem[:gender]
	@gender_id 	= elem[:genderId].to_i
	
	@race 			= elem[:race]
	@race_id 		= elem[:raceId].to_i
	
	@guild			= elem[:guild] == "" ? nil : elem[:guild]
	@guild_id		= elem[:guildId].to_i == 0 ? nil : elem[:guildId].to_i
	@guild_url	= elem[:guildUrl] == "" ? nil : elem[:guildUrl]
	
	@realm			= elem[:realm] == "" ? nil : elem[:realm]
	
	@battle_group 		= elem[:battleGroup] == "" ? nil : elem[:battleGroup]
	@battle_group_id 	= elem[:battleGroupId].to_i
	
	@relevance 		= elem[:relevance].to_i
	@search_rank 	= elem[:searchRank].to_i
	
	# Incoming string is 2007-02-24 20:33:04.0, parse to datetime
	#@last_login 	= elem[:lastLoginDate] == "" ? nil : DateTime.parse(elem[:lastLoginDate])
	@last_login 	= elem[:lastLoginDate] == "" ? nil : elem[:lastLoginDate]
	
	# From ArenaTeam info, can be blank on normal requests
	#<character battleGroup="" charUrl="r=Draenor&amp;n=Lothaar" class="Paladin" classId="2"
	# contribution="1602" gamesPlayed="10" gamesWon="7" gender="Male" genderId="0"
	# guild="Passion" guildId="36659" guildUrl="r=Draenor&amp;n=Passion&amp;p=1" name="Lothaar"
	# race="Human" raceId="1" seasonGamesPlayed="20" seasonGamesWon="13" teamRank="1"/>
	@season_games_played 	= elem[:seasonGamesPlayed] == "" ? nil : elem[:seasonGamesPlayed].to_i
	@season_games_won 		= elem[:seasonGamesWon] == "" ? nil : elem[:seasonGamesWon].to_i
	@team_rank 						= elem[:teamRank] == "" ? nil : elem[:teamRank].to_i
	@contribution					= elem[:contribution] == "" ? nil : elem[:contribution].to_i
	#@char_url 						= elem[:charUrl]	# TODO: Merge with URL?
end