Skip to content

Commit adab2ab

Browse files
authored
Merge pull request #179 from Grover-c13/Meta
Meta info on pokemon
2 parents c347392 + bf56011 commit adab2ab

File tree

3 files changed

+252
-2
lines changed

3 files changed

+252
-2
lines changed

src/main/java/com/pokegoapi/api/pokemon/Pokemon.java

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ public class Pokemon {
4646
@Setter
4747
PokemonGo pgo;
4848
private PokemonData proto;
49+
private PokemonMeta meta;
4950

5051
// API METHODS //
5152

@@ -145,12 +146,20 @@ public EvolutionResult evolve() throws LoginFailedException, RemoteServerExcepti
145146
return result;
146147
}
147148

149+
private PokemonMeta getMeta() {
150+
if (meta == null) {
151+
meta = PokemonMetaRegistry.getMeta(this.getPokemonId());
152+
}
153+
154+
return meta;
155+
}
156+
148157
public int getCandy() {
149158
return pgo.getInventories().getCandyjar().getCandies(getPokemonFamily());
150159
}
151160

152161
public PokemonFamilyId getPokemonFamily() {
153-
return PokemonFamilyMap.getFamily(this.getPokemonId());
162+
return PokemonMetaRegistry.getFamily(this.getPokemonId());
154163
}
155164

156165
public boolean equals(Pokemon other) {
@@ -272,4 +281,25 @@ public boolean getFromFort() {
272281
public void debug() {
273282
Log.d(TAG, proto.toString());
274283
}
284+
285+
286+
public int getBaseStam() {
287+
return getMeta().getBaseStam();
288+
}
289+
290+
public double getBaseCaptureRate() {
291+
return getMeta().getBaseCaptureRate();
292+
}
293+
294+
public int getCandiesToEvolve() {
295+
return getMeta().getCandiesToEvolve();
296+
}
297+
298+
public double getBaseFleeRate() {
299+
return getMeta().getBaseFleeRate();
300+
}
301+
302+
public PokemonIdOuterClass.PokemonId getParent() {
303+
return getMeta().getParent();
304+
}
275305
}
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
/*
2+
* This program is free software: you can redistribute it and/or modify
3+
* it under the terms of the GNU General Public License as published by
4+
* the Free Software Foundation, either version 3 of the License, or
5+
* (at your option) any later version.
6+
*
7+
* This program is distributed in the hope that it will be useful,
8+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
9+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10+
* GNU General Public License for more details.
11+
*
12+
* You should have received a copy of the GNU General Public License
13+
* along with this program. If not, see <http://www.gnu.org/licenses/>.
14+
*/
15+
16+
package com.pokegoapi.api.pokemon;
17+
18+
import POGOProtos.Enums.PokemonIdOuterClass;
19+
import lombok.Getter;
20+
21+
public class PokemonMeta {
22+
@Getter
23+
private int baseStam;
24+
@Getter
25+
private double baseCaptureRate;
26+
@Getter
27+
private int candiesToEvolve;
28+
@Getter
29+
private double baseFleeRate;
30+
@Getter
31+
private PokemonIdOuterClass.PokemonId parent;
32+
33+
/**
34+
* Instantiates a meta pokemon data.
35+
*
36+
* @param baseStam
37+
* autogenerated
38+
* @param baseCaptureRate
39+
* autogenerated
40+
* @param candiesToEvolve
41+
* autogenerated
42+
* @param baseFleeRate
43+
* autogenerated
44+
* @param pokedexHeight
45+
* autogenerated
46+
* @param parent
47+
* autogenerated
48+
*/
49+
public PokemonMeta( int baseStam,
50+
double baseCaptureRate,
51+
int candiesToEvolve,
52+
double baseFleeRate,
53+
double pokedexHeight,
54+
PokemonIdOuterClass.PokemonId parent) {
55+
// did not mean to include pokedex height in output
56+
this.baseStam = baseStam;
57+
this.baseCaptureRate = baseCaptureRate;
58+
this.candiesToEvolve = candiesToEvolve;
59+
this.baseFleeRate = baseFleeRate;
60+
this.parent = parent;
61+
}
62+
}

src/main/java/com/pokegoapi/api/pokemon/PokemonFamilyMap.java renamed to src/main/java/com/pokegoapi/api/pokemon/PokemonMetaRegistry.java

Lines changed: 159 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,11 @@
2020

2121
import java.util.EnumMap;
2222

23-
public class PokemonFamilyMap {
23+
public class PokemonMetaRegistry {
2424

2525
private static EnumMap<PokemonId, PokemonFamilyId> familys = new EnumMap<>(PokemonId.class);
2626
private static EnumMap<PokemonFamilyId, PokemonId> highestForFamily = new EnumMap<>(PokemonFamilyId.class);
27+
private static EnumMap<PokemonId, PokemonMeta> meta = new EnumMap<>(PokemonId.class);
2728

2829
static {
2930
familys.put(PokemonId.BULBASAUR, PokemonFamilyId.FAMILY_BULBASAUR);
@@ -257,6 +258,153 @@ public class PokemonFamilyMap {
257258
highestForFamily.put(PokemonFamilyId.FAMILY_MEWTWO, PokemonId.MEWTWO);
258259
familys.put(PokemonId.MEW, PokemonFamilyId.FAMILY_MEW);
259260
highestForFamily.put(PokemonFamilyId.FAMILY_MEW, PokemonId.MEW);
261+
262+
meta.put(PokemonId.BULBASAUR, new PokemonMeta(90,0.16,25,0.1,0.7,null));
263+
meta.put(PokemonId.IVYSAUR, new PokemonMeta(120,0.08,100,0.07,1,PokemonId.BULBASAUR));
264+
meta.put(PokemonId.VENUSAUR, new PokemonMeta(160,0.04,0,0.05,2,PokemonId.IVYSAUR));
265+
meta.put(PokemonId.CHARMANDER, new PokemonMeta(78,0.16,25,0.1,0.6,null));
266+
meta.put(PokemonId.CHARMELEON, new PokemonMeta(116,0.08,100,0.07,1.1,PokemonId.CHARMANDER));
267+
meta.put(PokemonId.CHARIZARD, new PokemonMeta(156,0.04,0,0.05,1.7,PokemonId.CHARMELEON));
268+
meta.put(PokemonId.SQUIRTLE, new PokemonMeta(88,0.16,25,0.1,0.5,null));
269+
meta.put(PokemonId.WARTORTLE, new PokemonMeta(118,0.08,100,0.07,1,PokemonId.SQUIRTLE));
270+
meta.put(PokemonId.BLASTOISE, new PokemonMeta(158,0.04,0,0.05,1.6,PokemonId.WARTORTLE));
271+
meta.put(PokemonId.CATERPIE, new PokemonMeta(90,0.4,12,0.2,0.3,null));
272+
meta.put(PokemonId.METAPOD, new PokemonMeta(100,0.2,50,0.09,0.7,PokemonId.CATERPIE));
273+
meta.put(PokemonId.BUTTERFREE, new PokemonMeta(120,0.1,0,0.06,1.1,PokemonId.METAPOD));
274+
meta.put(PokemonId.WEEDLE, new PokemonMeta(80,0.4,12,0.2,0.3,null));
275+
meta.put(PokemonId.KAKUNA, new PokemonMeta(90,0.2,50,0.09,0.6,PokemonId.WEEDLE));
276+
meta.put(PokemonId.BEEDRILL, new PokemonMeta(130,0.1,0,0.06,1,PokemonId.KAKUNA));
277+
meta.put(PokemonId.PIDGEY, new PokemonMeta(80,0.4,12,0.2,0.3,null));
278+
meta.put(PokemonId.PIDGEOTTO, new PokemonMeta(126,0.2,50,0.09,1.1,PokemonId.PIDGEY));
279+
meta.put(PokemonId.PIDGEOT, new PokemonMeta(166,0.1,0,0.06,1.5,PokemonId.PIDGEOTTO));
280+
meta.put(PokemonId.RATTATA, new PokemonMeta(60,0.4,25,0.2,0.3,null));
281+
meta.put(PokemonId.RATICATE, new PokemonMeta(110,0.16,0,0.07,0.7,PokemonId.RATTATA));
282+
meta.put(PokemonId.SPEAROW, new PokemonMeta(80,0.4,50,0.15,0.3,null));
283+
meta.put(PokemonId.FEAROW, new PokemonMeta(130,0.16,0,0.07,1.2,PokemonId.SPEAROW));
284+
meta.put(PokemonId.EKANS, new PokemonMeta(70,0.4,50,0.15,2,null));
285+
meta.put(PokemonId.ARBOK, new PokemonMeta(120,0.16,0,0.07,3.5,PokemonId.EKANS));
286+
meta.put(PokemonId.PIKACHU, new PokemonMeta(70,0.16,50,0.1,0.4,null));
287+
meta.put(PokemonId.SANDSHREW, new PokemonMeta(100,0.4,50,0.1,0.6,null));
288+
meta.put(PokemonId.SANDSLASH, new PokemonMeta(150,0.16,0,0.06,1,PokemonId.SANDSHREW));
289+
meta.put(PokemonId.NIDORAN_FEMALE, new PokemonMeta(110,0.4,25,0.15,0.4,null));
290+
meta.put(PokemonId.NIDORINA, new PokemonMeta(140,0.2,100,0.07,0.8,PokemonId.NIDORAN_FEMALE));
291+
meta.put(PokemonId.NIDOQUEEN, new PokemonMeta(180,0.1,0,0.05,1.3,PokemonId.NIDORINA));
292+
meta.put(PokemonId.NIDORAN_MALE, new PokemonMeta(92,0.4,25,0.15,0.5,null));
293+
meta.put(PokemonId.NIDORINO, new PokemonMeta(122,0.2,100,0.07,0.9,PokemonId.NIDORAN_MALE));
294+
meta.put(PokemonId.NIDOKING, new PokemonMeta(162,0.1,0,0.05,1.4,PokemonId.NIDORINO));
295+
meta.put(PokemonId.CLEFAIRY, new PokemonMeta(140,0.24,50,0.1,0.6,null));
296+
meta.put(PokemonId.CLEFABLE, new PokemonMeta(190,0.08,0,0.06,1.3,PokemonId.CLEFAIRY));
297+
meta.put(PokemonId.VULPIX, new PokemonMeta(76,0.24,50,0.1,0.6,null));
298+
meta.put(PokemonId.NINETALES, new PokemonMeta(146,0.08,0,0.06,1.1,PokemonId.VULPIX));
299+
meta.put(PokemonId.JIGGLYPUFF, new PokemonMeta(230,0.4,50,0.1,0.5,null));
300+
meta.put(PokemonId.WIGGLYTUFF, new PokemonMeta(280,0.16,0,0.06,1,PokemonId.JIGGLYPUFF));
301+
meta.put(PokemonId.ZUBAT, new PokemonMeta(80,0.4,50,0.2,0.8,null));
302+
meta.put(PokemonId.GOLBAT, new PokemonMeta(150,0.16,0,0.07,1.6,PokemonId.ZUBAT));
303+
meta.put(PokemonId.GLOOM, new PokemonMeta(120,0.24,100,0.07,0.8,PokemonId.ODDISH));
304+
meta.put(PokemonId.VILEPLUME, new PokemonMeta(150,0.12,0,0.05,1.2,PokemonId.GLOOM));
305+
meta.put(PokemonId.PARAS, new PokemonMeta(70,0.32,50,0.15,0.3,null));
306+
meta.put(PokemonId.PARASECT, new PokemonMeta(120,0.16,0,0.07,1,PokemonId.PARAS));
307+
meta.put(PokemonId.VENONAT, new PokemonMeta(120,0.4,50,0.15,1,null));
308+
meta.put(PokemonId.VENOMOTH, new PokemonMeta(140,0.16,0,0.07,1.5,PokemonId.VENONAT));
309+
meta.put(PokemonId.DIGLETT, new PokemonMeta(20,0.4,50,0.1,0.2,null));
310+
meta.put(PokemonId.DUGTRIO, new PokemonMeta(70,0.16,0,0.06,0.7,PokemonId.DIGLETT));
311+
meta.put(PokemonId.MEOWTH, new PokemonMeta(80,0.4,50,0.15,0.4,null));
312+
meta.put(PokemonId.PERSIAN, new PokemonMeta(130,0.16,0,0.07,1,PokemonId.MEOWTH));
313+
meta.put(PokemonId.PSYDUCK, new PokemonMeta(100,0.4,50,0.1,0.8,null));
314+
meta.put(PokemonId.GOLDUCK, new PokemonMeta(160,0.16,0,0.06,1.7,PokemonId.PSYDUCK));
315+
meta.put(PokemonId.PRIMEAPE, new PokemonMeta(130,0.16,0,0.06,1,null));
316+
meta.put(PokemonId.GROWLITHE, new PokemonMeta(110,0.24,50,0.1,0.7,null));
317+
meta.put(PokemonId.ARCANINE, new PokemonMeta(180,0.08,0,0.06,1.9,PokemonId.GROWLITHE));
318+
meta.put(PokemonId.POLIWAG, new PokemonMeta(80,0.4,25,0.15,0.6,null));
319+
meta.put(PokemonId.POLIWHIRL, new PokemonMeta(130,0.2,100,0.07,1,PokemonId.POLIWAG));
320+
meta.put(PokemonId.POLIWRATH, new PokemonMeta(180,0.1,0,0.05,1.3,PokemonId.POLIWHIRL));
321+
meta.put(PokemonId.ABRA, new PokemonMeta(50,0.4,25,0.99,0.9,null));
322+
meta.put(PokemonId.KADABRA, new PokemonMeta(80,0.2,100,0.07,1.3,PokemonId.ABRA));
323+
meta.put(PokemonId.ALAKAZAM, new PokemonMeta(110,0.1,0,0.05,1.5,PokemonId.KADABRA));
324+
meta.put(PokemonId.MACHAMP, new PokemonMeta(180,0.1,0,0.05,1.6,PokemonId.MACHOKE));
325+
meta.put(PokemonId.BELLSPROUT, new PokemonMeta(100,0.4,25,0.15,0.7,null));
326+
meta.put(PokemonId.WEEPINBELL, new PokemonMeta(130,0.2,100,0.07,1,PokemonId.BELLSPROUT));
327+
meta.put(PokemonId.VICTREEBEL, new PokemonMeta(160,0.1,0,0.05,1.7,PokemonId.WEEPINBELL));
328+
meta.put(PokemonId.TENTACOOL, new PokemonMeta(80,0.4,50,0.15,0.9,null));
329+
meta.put(PokemonId.TENTACRUEL, new PokemonMeta(160,0.16,0,0.07,1.6,PokemonId.TENTACOOL));
330+
meta.put(PokemonId.GEODUDE, new PokemonMeta(80,0.4,25,0.1,0.4,null));
331+
meta.put(PokemonId.GRAVELER, new PokemonMeta(110,0.2,100,0.07,1,PokemonId.GEODUDE));
332+
meta.put(PokemonId.GOLEM, new PokemonMeta(160,0.1,0,0.05,1.4,PokemonId.GRAVELER));
333+
meta.put(PokemonId.PONYTA, new PokemonMeta(100,0.32,50,0.1,1,null));
334+
meta.put(PokemonId.RAPIDASH, new PokemonMeta(130,0.12,0,0.06,1.7,PokemonId.PONYTA));
335+
meta.put(PokemonId.SLOWPOKE, new PokemonMeta(180,0.4,50,0.1,1.2,null));
336+
meta.put(PokemonId.SLOWBRO, new PokemonMeta(190,0.16,0,0.06,1.6,PokemonId.SLOWPOKE));
337+
meta.put(PokemonId.MAGNEMITE, new PokemonMeta(50,0.4,50,0.1,0.3,null));
338+
meta.put(PokemonId.MAGNETON, new PokemonMeta(100,0.16,0,0.06,1,PokemonId.MAGNEMITE));
339+
meta.put(PokemonId.FARFETCHD, new PokemonMeta(104,0.24,0,0.09,0.8,null));
340+
meta.put(PokemonId.DODUO, new PokemonMeta(70,0.4,50,0.1,1.4,null));
341+
meta.put(PokemonId.DODRIO, new PokemonMeta(120,0.16,0,0.06,1.8,PokemonId.DODUO));
342+
meta.put(PokemonId.SEEL, new PokemonMeta(130,0.4,50,0.09,1.1,null));
343+
meta.put(PokemonId.DEWGONG, new PokemonMeta(180,0.16,0,0.06,1.7,PokemonId.SEEL));
344+
meta.put(PokemonId.GRIMER, new PokemonMeta(160,0.4,50,0.1,0.9,null));
345+
meta.put(PokemonId.MUK, new PokemonMeta(210,0.16,0,0.06,1.2,PokemonId.GRIMER));
346+
meta.put(PokemonId.SHELLDER, new PokemonMeta(60,0.4,50,0.1,0.3,null));
347+
meta.put(PokemonId.CLOYSTER, new PokemonMeta(100,0.16,0,0.06,1.5,PokemonId.SHELLDER));
348+
meta.put(PokemonId.GASTLY, new PokemonMeta(60,0.32,25,0.1,1.3,null));
349+
meta.put(PokemonId.HAUNTER, new PokemonMeta(90,0.16,100,0.07,1.6,PokemonId.GASTLY));
350+
meta.put(PokemonId.GENGAR, new PokemonMeta(120,0.08,0,0.05,1.5,PokemonId.HAUNTER));
351+
meta.put(PokemonId.ONIX, new PokemonMeta(70,0.16,0,0.09,8.8,null));
352+
meta.put(PokemonId.DROWZEE, new PokemonMeta(120,0.4,50,0.1,1,null));
353+
meta.put(PokemonId.HYPNO, new PokemonMeta(170,0.16,0,0.06,1.6,PokemonId.DROWZEE));
354+
meta.put(PokemonId.KRABBY, new PokemonMeta(60,0.4,50,0.15,0.4,null));
355+
meta.put(PokemonId.KINGLER, new PokemonMeta(110,0.16,0,0.07,1.3,PokemonId.KRABBY));
356+
meta.put(PokemonId.VOLTORB, new PokemonMeta(80,0.4,50,0.1,0.5,null));
357+
meta.put(PokemonId.ELECTRODE, new PokemonMeta(120,0.16,0,0.06,1.2,PokemonId.VOLTORB));
358+
meta.put(PokemonId.EXEGGCUTE, new PokemonMeta(120,0.4,50,0.1,0.4,null));
359+
meta.put(PokemonId.EXEGGUTOR, new PokemonMeta(190,0.16,0,0.06,2,PokemonId.EXEGGCUTE));
360+
meta.put(PokemonId.CUBONE, new PokemonMeta(100,0.32,50,0.1,0.4,null));
361+
meta.put(PokemonId.MAROWAK, new PokemonMeta(120,0.12,0,0.06,1,PokemonId.CUBONE));
362+
meta.put(PokemonId.HITMONLEE, new PokemonMeta(100,0.16,0,0.09,1.5,null));
363+
meta.put(PokemonId.LICKITUNG, new PokemonMeta(180,0.16,0,0.09,1.2,null));
364+
meta.put(PokemonId.KOFFING, new PokemonMeta(80,0.4,50,0.1,0.6,null));
365+
meta.put(PokemonId.WEEZING, new PokemonMeta(130,0.16,0,0.06,1.2,PokemonId.KOFFING));
366+
meta.put(PokemonId.RHYHORN, new PokemonMeta(160,0.4,50,0.1,1,null));
367+
meta.put(PokemonId.RHYDON, new PokemonMeta(210,0.16,0,0.06,1.9,PokemonId.RHYHORN));
368+
meta.put(PokemonId.CHANSEY, new PokemonMeta(500,0.16,0,0.09,1.1,null));
369+
meta.put(PokemonId.TANGELA, new PokemonMeta(130,0.32,0,0.09,1,null));
370+
meta.put(PokemonId.HORSEA, new PokemonMeta(60,0.4,50,0.1,0.4,null));
371+
meta.put(PokemonId.SEADRA, new PokemonMeta(110,0.16,0,0.06,1.2,PokemonId.HORSEA));
372+
meta.put(PokemonId.GOLDEEN, new PokemonMeta(90,0.4,50,0.15,0.6,null));
373+
meta.put(PokemonId.SEAKING, new PokemonMeta(160,0.16,0,0.07,1.3,PokemonId.GOLDEEN));
374+
meta.put(PokemonId.STARYU, new PokemonMeta(60,0.4,50,0.15,0.8,null));
375+
meta.put(PokemonId.STARMIE, new PokemonMeta(120,0.16,0,0.06,1.1,PokemonId.STARYU));
376+
meta.put(PokemonId.MR_MIME, new PokemonMeta(80,0.24,0,0.09,1.3,null));
377+
meta.put(PokemonId.SCYTHER, new PokemonMeta(140,0.24,0,0.09,1.5,null));
378+
meta.put(PokemonId.JYNX, new PokemonMeta(130,0.24,0,0.09,1.4,null));
379+
meta.put(PokemonId.ELECTABUZZ, new PokemonMeta(130,0.24,0,0.09,1.1,null));
380+
meta.put(PokemonId.MAGMAR, new PokemonMeta(130,0.24,0,0.09,1.3,null));
381+
meta.put(PokemonId.PINSIR, new PokemonMeta(130,0.24,0,0.09,1.5,null));
382+
meta.put(PokemonId.TAUROS, new PokemonMeta(150,0.24,0,0.09,1.4,null));
383+
meta.put(PokemonId.MAGIKARP, new PokemonMeta(40,0.56,400,0.15,0.9,null));
384+
meta.put(PokemonId.GYARADOS, new PokemonMeta(190,0.08,0,0.07,6.5,PokemonId.MAGIKARP));
385+
meta.put(PokemonId.LAPRAS, new PokemonMeta(260,0.16,0,0.09,2.5,null));
386+
meta.put(PokemonId.DITTO, new PokemonMeta(96,0.16,0,0.1,0.3,null));
387+
meta.put(PokemonId.EEVEE, new PokemonMeta(110,0.32,25,0.1,0.3,null));
388+
meta.put(PokemonId.VAPOREON, new PokemonMeta(260,0.12,0,0.06,1,PokemonId.EEVEE));
389+
meta.put(PokemonId.JOLTEON, new PokemonMeta(130,0.12,0,0.06,0.8,PokemonId.EEVEE));
390+
meta.put(PokemonId.FLAREON, new PokemonMeta(130,0.12,0,0.06,0.9,PokemonId.EEVEE));
391+
meta.put(PokemonId.PORYGON, new PokemonMeta(130,0.32,0,0.09,0.8,null));
392+
meta.put(PokemonId.OMANYTE, new PokemonMeta(70,0.32,50,0.09,0.4,null));
393+
meta.put(PokemonId.OMASTAR, new PokemonMeta(140,0.12,0,0.05,1,PokemonId.OMANYTE));
394+
meta.put(PokemonId.KABUTO, new PokemonMeta(60,0.32,50,0.09,0.5,null));
395+
meta.put(PokemonId.KABUTOPS, new PokemonMeta(120,0.12,0,0.05,1.3,PokemonId.KABUTO));
396+
meta.put(PokemonId.AERODACTYL, new PokemonMeta(160,0.16,0,0.09,1.8,null));
397+
meta.put(PokemonId.SNORLAX, new PokemonMeta(320,0.16,0,0.09,2.1,null));
398+
meta.put(PokemonId.ARTICUNO, new PokemonMeta(180,0,0,0.1,1.7,null));
399+
meta.put(PokemonId.ZAPDOS, new PokemonMeta(180,0,0,0.1,1.6,null));
400+
meta.put(PokemonId.MOLTRES, new PokemonMeta(180,0,0,0.1,2,null));
401+
meta.put(PokemonId.DRATINI, new PokemonMeta(82,0.32,25,0.09,1.8,null));
402+
meta.put(PokemonId.DRAGONAIR, new PokemonMeta(122,0.08,100,0.06,4,PokemonId.DRATINI));
403+
meta.put(PokemonId.DRAGONITE, new PokemonMeta(182,0.04,0,0.05,2.2,PokemonId.DRAGONAIR));
404+
meta.put(PokemonId.MEWTWO, new PokemonMeta(212,0,0,0.1,2,null));
405+
meta.put(PokemonId.MEW, new PokemonMeta(200,0,0,0.1,0.4,null));
406+
407+
260408
}
261409

262410
/**
@@ -269,6 +417,16 @@ public static PokemonFamilyId getFamily(PokemonId id) {
269417
return familys.get(id);
270418
}
271419

420+
/**
421+
* Return PokemonMeta object containing meta info about a pokemon.
422+
*
423+
* @param id the id of the pokemon
424+
* @return PokemonMeta
425+
*/
426+
public static PokemonMeta getMeta(PokemonId id) {
427+
return meta.get(id);
428+
}
429+
272430
/**
273431
* Return the highest evolution for given family ID.
274432
* !!! CARE TO EVEE THAT DOESNT HAVE BETTER EVOLUTION !!!

0 commit comments

Comments
 (0)