diff options
Diffstat (limited to 'app/models/pokeviewer/pokemon.rb')
-rw-r--r-- | app/models/pokeviewer/pokemon.rb | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/app/models/pokeviewer/pokemon.rb b/app/models/pokeviewer/pokemon.rb index 3975550..d14ea87 100644 --- a/app/models/pokeviewer/pokemon.rb +++ b/app/models/pokeviewer/pokemon.rb | |||
@@ -36,7 +36,7 @@ module Pokeviewer | |||
36 | enumerize :unown_letter, in: [:a, :b, :c, :d, :e, :f, :g, :h, :i, :j, :k, | 36 | enumerize :unown_letter, in: [:a, :b, :c, :d, :e, :f, :g, :h, :i, :j, :k, |
37 | :l, :m, :n, :o, :p, :q, :r, :s, :t, :u, :v, :w, :x, :y, :z, | 37 | :l, :m, :n, :o, :p, :q, :r, :s, :t, :u, :v, :w, :x, :y, :z, |
38 | :question, :exclamation] | 38 | :question, :exclamation] |
39 | 39 | ||
40 | validates :slot, presence: true, | 40 | validates :slot, presence: true, |
41 | uniqueness: { scope: [:trainer_id, :box] }, | 41 | uniqueness: { scope: [:trainer_id, :box] }, |
42 | unless: Proc.new { |a| a.trainer.nil? } | 42 | unless: Proc.new { |a| a.trainer.nil? } |
@@ -46,7 +46,22 @@ module Pokeviewer | |||
46 | end | 46 | end |
47 | 47 | ||
48 | def icon_path | 48 | def icon_path |
49 | "pokeviewer/icons/#{species_id}.png" | 49 | form = "" |
50 | if species_id == 201 | ||
51 | # Handle Unown form | ||
52 | form = "-#{unown_letter}" | ||
53 | elsif species_id == 386 | ||
54 | # Handle Deoxys forms | ||
55 | if trainer.firered? | ||
56 | form = "-attack" | ||
57 | elsif trainer.leafgreen? | ||
58 | form = "-defense" | ||
59 | elsif trainer.emerald? | ||
60 | form = "-speed" | ||
61 | end | ||
62 | end | ||
63 | |||
64 | "pokeviewer/icons/#{species_id}#{form}.png" | ||
50 | end | 65 | end |
51 | 66 | ||
52 | def sprite_path | 67 | def sprite_path |