Class: Smogon::Type::Pokemon
Constant Summary collapse
- ATTRIBUTES =
%w( name base_stats weight height types abilities evolutions genfamily moves ).freeze
- TYPE =
'pokemon'.freeze
- STATS =
%w(hp atk def spa spd spe).freeze
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(response = nil, moves = nil) ⇒ Pokemon
constructor
A new instance of Pokemon.
Methods inherited from Base
Constructor Details
#initialize(response = nil, moves = nil) ⇒ Pokemon
Returns a new instance of Pokemon.
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
# File 'lib/smogon/types/pokemon.rb', line 32 def initialize(response = nil, moves = nil) return unless response @name = response['name'] @evolutions = response['evos'] @genfamily = response['genfamily'] if moves.include?('Hidden Power Fire') moves.delete_if { |move| move.start_with?('Hidden Power ') } moves << 'Hidden Power' end @moves = moves.uniq alts = response['alts'][0] @base_stats = alts.fetch_values(*STATS) @weight = alts['weight'] @height = alts['height'] @types = alts['types'] @abilities = alts['abilities'] end |
Class Method Details
.id2name(id) ⇒ Object
53 54 55 56 57 58 59 |
# File 'lib/smogon/types/pokemon.rb', line 53 def self.id2name(id) begin Nokogiri::HTML(open("http://www.marriland.com/pokedex/#{id}")).xpath('//div[@class="overview"]/h2')[0].text rescue nil end end |