Add more entries

This commit is contained in:
zontreck 2025-03-23 15:52:27 -07:00
parent 6a1a065953
commit 8633d8952e
48 changed files with 323 additions and 96 deletions

BIN
assets/sprites/chansey.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

BIN
assets/sprites/cubone.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

BIN
assets/sprites/ditto.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 8 KiB

BIN
assets/sprites/drowzee.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
assets/sprites/eevee.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

BIN
assets/sprites/gastly.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

BIN
assets/sprites/gengar.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

BIN
assets/sprites/goldeen.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 KiB

BIN
assets/sprites/gyarados.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

BIN
assets/sprites/haunter.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.9 KiB

BIN
assets/sprites/horsea.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
assets/sprites/hypno.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

BIN
assets/sprites/jynx.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

BIN
assets/sprites/kingler.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

BIN
assets/sprites/koffing.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

BIN
assets/sprites/krabby.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.9 KiB

BIN
assets/sprites/lapras.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

BIN
assets/sprites/magikarp.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

BIN
assets/sprites/magmar.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

BIN
assets/sprites/marowak.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

BIN
assets/sprites/mrmime.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

BIN
assets/sprites/onix.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

BIN
assets/sprites/pinsir.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

BIN
assets/sprites/rhydon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

BIN
assets/sprites/rhyhorn.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

BIN
assets/sprites/scyther.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

BIN
assets/sprites/seadra.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

BIN
assets/sprites/seaking.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

BIN
assets/sprites/starmie.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

BIN
assets/sprites/staryu.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

BIN
assets/sprites/tangela.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

BIN
assets/sprites/tauros.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

BIN
assets/sprites/vaporeon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

BIN
assets/sprites/voltorb.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

BIN
assets/sprites/weezing.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

View file

@ -1,7 +1,7 @@
import 'dart:io';
class Constants {
static const VERSION = "1.0.032325+1427";
static const VERSION = "1.0.032325+1552";
static bool get isMobile => Platform.isAndroid || Platform.isIOS;
}

View file

@ -98,7 +98,7 @@ class _HomeState extends State<Home> {
height: Constants.isMobile ? 64 : 198,
),
Text(
Pokemon.values[index].name,
Pokemon.values[index].printName(proper: true),
style: TextStyle(
fontSize: Constants.isMobile ? 16 : 32,
color: Colors.black,
@ -146,7 +146,7 @@ class _DexEntryState extends State<DexEntry> {
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text(_pkmn.name),
title: Text(_pkmn.printName(proper: true)),
backgroundColor:
SessionData.darkMode
? LibACFlutterConstants.TITLEBAR_COLOR
@ -160,7 +160,10 @@ class _DexEntryState extends State<DexEntry> {
children: [
Center(child: Image.asset(_pkmn.toDexPath())),
Center(
child: Text("ID: ${_pkmn.id}", style: TextStyle(fontSize: 24)),
child: Text(
"ID: ${_pkmn.pokeDexID}",
style: TextStyle(fontSize: 24),
),
),
Row(
crossAxisAlignment: CrossAxisAlignment.start,

View file

@ -48,7 +48,7 @@ enum Type {
Poison(Color.fromARGB(255, 128, 0, 128), Colors.black),
Ground(Color.fromARGB(255, 128, 126, 0), Colors.black),
Flying(Color.fromARGB(255, 128, 128, 255), Colors.black),
Psychic(Color.fromARGB(255, 255, 0, 255), Colors.black),
Psychic(Color.fromARGB(255, 255, 0, 255), Color.fromARGB(255, 255, 255, 255)),
Bug(Color.fromARGB(255, 128, 128, 0), Colors.black),
Rock(Color.fromARGB(255, 128, 128, 128), Colors.black),
Ghost(Color.fromARGB(255, 128, 0, 128), Colors.black),
@ -70,6 +70,15 @@ enum EvolutionCondition {
MoonStone,
FireStone,
LeafStone,
Alola,
OutsideAlola,
Night,
Day,
AttackGreaterThanDefense,
AttackLessThanDefense,
AttackEqualDefense,
Galar,
OutsideGalar,
}
abstract class Evolution {
@ -106,7 +115,7 @@ class SingleEvolution extends Evolution {
class BranchedEvolution extends Evolution {
final List<int> alternates;
final List<int> levels;
final List<List<EvolutionCondition>?> conditions;
final Map<int, List<EvolutionCondition>?> conditions;
const BranchedEvolution(this.alternates, this.levels, this.conditions);
@ -152,190 +161,355 @@ enum Move {
}
enum Pokemon {
Bulbasaur(1, Generation.One, [
Bulbasaur(1, "Bulbasaur", Generation.One, [
Type.Grass,
Type.Poison,
], SingleEvolution(2, 16)),
Ivysaur(2, Generation.One, [Type.Grass, Type.Poison], SingleEvolution(3, 32)),
Venusaur(3, Generation.One, [Type.Grass, Type.Poison], null),
Charmander(4, Generation.One, [Type.Fire], SingleEvolution(5, 16)),
Charmeleon(5, Generation.One, [Type.Fire], SingleEvolution(6, 36)),
Charizard(6, Generation.One, [Type.Fire, Type.Flying], null),
Squirtle(7, Generation.One, [Type.Water], SingleEvolution(8, 16)),
Wartortle(8, Generation.One, [Type.Water], SingleEvolution(9, 36)),
Blastoise(9, Generation.One, [Type.Water], null),
Caterpie(10, Generation.One, [Type.Bug], SingleEvolution(11, 7)),
Metapod(11, Generation.One, [Type.Bug], SingleEvolution(12, 10)),
Butterfree(12, Generation.One, [Type.Bug, Type.Flying], null),
Weedle(13, Generation.One, [Type.Bug, Type.Poison], SingleEvolution(14, 7)),
Kakuna(14, Generation.One, [Type.Bug, Type.Poison], SingleEvolution(15, 10)),
Beedrill(15, Generation.One, [Type.Bug, Type.Poison], null),
Pidgey(16, Generation.One, [
Ivysaur(2, "Ivysaur", Generation.One, [
Type.Grass,
Type.Poison,
], SingleEvolution(3, 32)),
Venusaur(3, "Venusaur", Generation.One, [Type.Grass, Type.Poison], null),
Charmander(4, "Charmander", Generation.One, [
Type.Fire,
], SingleEvolution(5, 16)),
Charmeleon(5, "Charmeleon", Generation.One, [
Type.Fire,
], SingleEvolution(6, 36)),
Charizard(6, "Charizard", Generation.One, [Type.Fire, Type.Flying], null),
Squirtle(7, "Squirtle", Generation.One, [Type.Water], SingleEvolution(8, 16)),
Wartortle(8, "Wartortle", Generation.One, [
Type.Water,
], SingleEvolution(9, 36)),
Blastoise(9, "Blastoise", Generation.One, [Type.Water], null),
Caterpie(10, "Caterpie", Generation.One, [Type.Bug], SingleEvolution(11, 7)),
Metapod(11, "Metapod", Generation.One, [Type.Bug], SingleEvolution(12, 10)),
Butterfree(12, "Butterfree", Generation.One, [Type.Bug, Type.Flying], null),
Weedle(13, "Weedle", Generation.One, [
Type.Bug,
Type.Poison,
], SingleEvolution(14, 7)),
Kakuna(14, "Kakuna", Generation.One, [
Type.Bug,
Type.Poison,
], SingleEvolution(15, 10)),
Beedrill(15, "Beedrill", Generation.One, [Type.Bug, Type.Poison], null),
Pidgey(16, "Pidgey", Generation.One, [
Type.Normal,
Type.Flying,
], SingleEvolution(17, 18)),
Pidgeotto(17, Generation.One, [
Pidgeotto(17, "Pidgeotto", Generation.One, [
Type.Normal,
Type.Flying,
], SingleEvolution(18, 36)),
Pidgeot(18, Generation.One, [Type.Normal, Type.Flying], null),
Rattata(19, Generation.One, [Type.Normal], SingleEvolution(20, 20)),
Raticate(20, Generation.One, [Type.Normal], null),
Spearow(21, Generation.One, [
Pidgeot(18, "Pidgeot", Generation.One, [Type.Normal, Type.Flying], null),
Rattata(19, "Rattata", Generation.One, [
Type.Normal,
], SingleEvolution(20, 20)),
Raticate(20, "Raticate", Generation.One, [Type.Normal], null),
Spearow(21, "Spearow", Generation.One, [
Type.Normal,
Type.Flying,
], SingleEvolution(22, 20)),
Fearow(22, Generation.One, [Type.Normal, Type.Flying], null),
Fearow(22, "Fearow", Generation.One, [Type.Normal, Type.Flying], null),
Pikachu(
25,
"Pikachu",
Generation.One,
[Type.Electric],
SingleEvolution(26, -1, condition: [EvolutionCondition.ThunderStone]),
),
Raichu(26, Generation.One, [Type.Electric], null),
Sandshrew(27, Generation.One, [Type.Ground], SingleEvolution(28, 22)),
Sandslash(28, Generation.One, [Type.Ground], null),
NidoranF(29, Generation.One, [Type.Poison], SingleEvolution(30, 16)),
Nidorina(30, Generation.One, [Type.Poison], SingleEvolution(31, 36)),
NidoQueen(31, Generation.One, [Type.Poison, Type.Ground], null),
NidoranM(32, Generation.One, [Type.Poison], SingleEvolution(33, 16)),
Nidorino(33, Generation.One, [Type.Poison], SingleEvolution(34, 36)),
NidoKing(34, Generation.One, [Type.Poison, Type.Ground], null),
Raichu(26, "Raichu", Generation.One, [Type.Electric], null),
Sandshrew(27, "Sandshrew", Generation.One, [
Type.Ground,
], SingleEvolution(28, 22)),
Sandslash(28, "Sandslash", Generation.One, [Type.Ground], null),
NidoranF(29, "NidoranF", Generation.One, [
Type.Poison,
], SingleEvolution(30, 16)),
Nidorina(30, "Nidorina", Generation.One, [
Type.Poison,
], SingleEvolution(31, 36)),
NidoQueen(31, "NidoQueen", Generation.One, [Type.Poison, Type.Ground], null),
NidoranM(32, "NidoranM", Generation.One, [
Type.Poison,
], SingleEvolution(33, 16)),
Nidorino(33, "Nidorino", Generation.One, [
Type.Poison,
], SingleEvolution(34, 36)),
NidoKing(34, "NidoKing", Generation.One, [Type.Poison, Type.Ground], null),
Clefairy(
35,
"Clefairy",
Generation.One,
[Type.Fairy],
SingleEvolution(36, -1, condition: [EvolutionCondition.MoonStone]),
),
Clefable(36, Generation.One, [Type.Fairy], null),
Clefable(36, "Clefable", Generation.One, [Type.Fairy], null),
Vulpix(
37,
"Vulpix",
Generation.One,
[Type.Fire],
SingleEvolution(38, -1, condition: [EvolutionCondition.FireStone]),
),
NineTales(38, Generation.One, [Type.Fire], null),
NineTales(38, "NineTales", Generation.One, [Type.Fire], null),
Jigglypuff(
39,
"Jigglypuff",
Generation.One,
[Type.Fairy],
SingleEvolution(40, -1, condition: [EvolutionCondition.MoonStone]),
),
WigglyTuff(40, Generation.One, [Type.Fairy], null),
Zubat(41, Generation.One, [
WigglyTuff(40, "Wigglytuff", Generation.One, [Type.Fairy], null),
Zubat(41, "Zubat", Generation.One, [
Type.Poison,
Type.Flying,
], SingleEvolution(42, 22)),
Golbat(42, Generation.One, [Type.Poison, Type.Flying], null),
Oddish(43, Generation.One, [
Golbat(42, "Golbat", Generation.One, [Type.Poison, Type.Flying], null),
Oddish(43, "Oddish", Generation.One, [
Type.Poison,
Type.Grass,
], SingleEvolution(44, 21)),
Gloom(
44,
"Gloom",
Generation.One,
[Type.Poison, Type.Grass],
SingleEvolution(45, -1, condition: [EvolutionCondition.LeafStone]),
),
Vileplume(45, Generation.One, [Type.Poison, Type.Grass], null),
Paras(46, Generation.One, [Type.Bug, Type.Grass], SingleEvolution(47, 24)),
Parasect(47, Generation.One, [Type.Bug, Type.Grass], null),
Venonat(48, Generation.One, [Type.Bug, Type.Poison], SingleEvolution(49, 31)),
Venomoth(49, Generation.One, [Type.Bug, Type.Poison], null),
Diglett(50, Generation.One, [Type.Ground], SingleEvolution(51, 26)),
Dugtrio(51, Generation.One, [Type.Ground], null),
Meowth(52, Generation.One, [Type.Normal], SingleEvolution(53, 28)),
Persian(53, Generation.One, [Type.Normal], null),
Psyduck(54, Generation.One, [Type.Water], SingleEvolution(55, 33)),
Golduck(55, Generation.One, [Type.Water], null),
Mankey(56, Generation.One, [Type.Fighting], SingleEvolution(57, 28)),
Primeape(57, Generation.One, [Type.Fighting], null),
Vileplume(45, "Vileplume", Generation.One, [Type.Poison, Type.Grass], null),
Paras(46, "Paras", Generation.One, [
Type.Bug,
Type.Grass,
], SingleEvolution(47, 24)),
Parasect(47, "Parasect", Generation.One, [Type.Bug, Type.Grass], null),
Venonat(48, "Venonat", Generation.One, [
Type.Bug,
Type.Poison,
], SingleEvolution(49, 31)),
Venomoth(49, "Venomoth", Generation.One, [Type.Bug, Type.Poison], null),
Diglett(50, "Diglett", Generation.One, [
Type.Ground,
], SingleEvolution(51, 26)),
Dugtrio(51, "Dugtrio", Generation.One, [Type.Ground], null),
Meowth(52, "Meowth", Generation.One, [Type.Normal], SingleEvolution(53, 28)),
Persian(53, "Persian", Generation.One, [Type.Normal], null),
Psyduck(54, "Psyduck", Generation.One, [Type.Water], SingleEvolution(55, 33)),
Golduck(55, "Golduck", Generation.One, [Type.Water], null),
Mankey(56, "Mankey", Generation.One, [
Type.Fighting,
], SingleEvolution(57, 28)),
Primeape(57, "Primeape", Generation.One, [Type.Fighting], null),
Growlithe(
58,
"Growlithe",
Generation.One,
[Type.Fire],
SingleEvolution(59, -1, condition: [EvolutionCondition.FireStone]),
),
Arcanine(59, Generation.One, [Type.Fire], null),
Poliwag(60, Generation.One, [Type.Water], SingleEvolution(61, 25)),
Arcanine(59, "Aranine", Generation.One, [Type.Fire], null),
Poliwag(60, "Poliwag", Generation.One, [Type.Water], SingleEvolution(61, 25)),
Poliwhirl(
61,
"Poliwhirl",
Generation.One,
[Type.Water],
SingleEvolution(62, -1, condition: [EvolutionCondition.WaterStone]),
),
Poliwrath(62, Generation.One, [Type.Water], null),
Abra(63, Generation.One, [Type.Psychic], SingleEvolution(64, 16)),
Kadabra(64, Generation.One, [
Type.Psychic,
], SingleEvolution(65, -1, condition: [EvolutionCondition.Trading])),
Alakazam(65, Generation.One, [Type.Psychic], null),
Machop(66, Generation.One, [Type.Fighting], SingleEvolution(67, 28)),
Machoke(67, Generation.One, [
Poliwrath(62, "Poliwrath", Generation.One, [Type.Water], null),
Abra(63, "Abra", Generation.One, [Type.Psychic], SingleEvolution(64, 16)),
Kadabra(
64,
"Kadabra",
Generation.One,
[Type.Psychic],
SingleEvolution(65, -1, condition: [EvolutionCondition.Trading]),
),
Alakazam(65, "Alakazam", Generation.One, [Type.Psychic], null),
Machop(66, "Machop", Generation.One, [
Type.Fighting,
], SingleEvolution(68, -1, condition: [EvolutionCondition.Trading])),
Machamp(68, Generation.One, [Type.Fighting], null),
Bellsprout(69, Generation.One, [
], SingleEvolution(67, 28)),
Machoke(
67,
"Machoke",
Generation.One,
[Type.Fighting],
SingleEvolution(68, -1, condition: [EvolutionCondition.Trading]),
),
Machamp(68, "Machamp", Generation.One, [Type.Fighting], null),
Bellsprout(69, "Bellsprout", Generation.One, [
Type.Grass,
Type.Poison,
], SingleEvolution(70, 21)),
Weepinbell(
70,
"Weepinbell",
Generation.One,
[Type.Grass, Type.Poison],
SingleEvolution(71, -1, condition: [EvolutionCondition.LeafStone]),
),
Victreebel(71, Generation.One, [Type.Grass, Type.Poison], null),
Tentacool(72, Generation.One, [
Victreebel(71, "Victreebel", Generation.One, [Type.Grass, Type.Poison], null),
Tentacool(72, "Tentacool", Generation.One, [
Type.Water,
Type.Poison,
], SingleEvolution(73, 30)),
Tentacruel(73, Generation.One, [Type.Water, Type.Poison], null),
Geodude(74, Generation.One, [
Tentacruel(73, "Tentacruel", Generation.One, [Type.Water, Type.Poison], null),
Geodude(74, "Geodude", Generation.One, [
Type.Rock,
Type.Ground,
], SingleEvolution(75, 25)),
Graveler(75, Generation.One, [
Type.Rock,
Type.Ground,
], SingleEvolution(76, -1, condition: [EvolutionCondition.Trading])),
Golem(76, Generation.One, [Type.Rock, Type.Ground], null),
Ponyta(77, Generation.One, [Type.Fire], SingleEvolution(78, 40)),
Rapidash(78, Generation.One, [Type.Fire], null),
Slowpoke(79, Generation.One, [
Graveler(
75,
"Graveler",
Generation.One,
[Type.Rock, Type.Ground],
SingleEvolution(76, -1, condition: [EvolutionCondition.Trading]),
),
Golem(76, "Golem", Generation.One, [Type.Rock, Type.Ground], null),
Ponyta(77, "Ponyta", Generation.One, [Type.Fire], SingleEvolution(78, 40)),
Rapidash(78, "Rapidash", Generation.One, [Type.Fire], null),
Slowpoke(79, "Slowpoke", Generation.One, [
Type.Water,
Type.Psychic,
], SingleEvolution(80, 37)),
Slowbro(80, Generation.One, [Type.Water, Type.Psychic], null),
Magnemite(81, Generation.One, [
Slowbro(80, "Slowbro", Generation.One, [Type.Water, Type.Psychic], null),
Magnemite(81, "Magnemite", Generation.One, [
Type.Electric,
Type.Steel,
], SingleEvolution(82, 30)),
Magneton(82, Generation.One, [Type.Electric, Type.Steel], null),
Farfetchd(83, Generation.One, [Type.Fighting], null),
Doduo(84, Generation.One, [
Magneton(82, "Magneton", Generation.One, [Type.Electric, Type.Steel], null),
Farfetchd(83, "Farfetch'd", Generation.One, [Type.Fighting], null),
Doduo(84, "Doduo", Generation.One, [
Type.Normal,
Type.Flying,
], SingleEvolution(85, 31)),
Dodrio(85, Generation.One, [Type.Normal, Type.Flying], null),
Seel(86, Generation.One, [Type.Water], SingleEvolution(87, 34)),
Dewgong(87, Generation.One, [Type.Water, Type.Ice], null),
Grimer(88, Generation.One, [Type.Poison], SingleEvolution(89, 38)),
Muk(89, Generation.One, [Type.Poison], null),
Dodrio(85, "Dodrio", Generation.One, [Type.Normal, Type.Flying], null),
Seel(86, "Seel", Generation.One, [Type.Water], SingleEvolution(87, 34)),
Dewgong(87, "Dewgong", Generation.One, [Type.Water, Type.Ice], null),
Grimer(88, "Grimer", Generation.One, [Type.Poison], SingleEvolution(89, 38)),
Muk(89, "Muk", Generation.One, [Type.Poison], null),
Shellder(
90,
"Shellder",
Generation.One,
[Type.Water],
SingleEvolution(91, -1, condition: [EvolutionCondition.WaterStone]),
),
Cloyster(91, Generation.One, [Type.Water, Type.Ice], null);
Cloyster(91, "Cloyster", Generation.One, [Type.Water, Type.Ice], null),
Gastly(92, "Gastly", Generation.One, [
Type.Ghost,
Type.Poison,
], SingleEvolution(93, 25)),
Haunter(
93,
"Haunter",
Generation.One,
[Type.Ghost, Type.Poison],
SingleEvolution(94, -1, condition: [EvolutionCondition.Trading]),
),
Gengar(94, "Gengar", Generation.One, [Type.Ghost, Type.Poison], null),
Onix(95, "Onix", Generation.One, [Type.Rock, Type.Ground], null),
Drowzee(96, "Drowzee", Generation.One, [
Type.Psychic,
], SingleEvolution(97, 26)),
Hypno(97, "Hypno", Generation.One, [Type.Psychic], null),
Krabby(98, "Krabby", Generation.One, [Type.Water], SingleEvolution(99, 28)),
Kingler(99, "Kingler", Generation.One, [Type.Water], null),
Voltorb(100, "Voltorb", Generation.One, [
Type.Electric,
], SingleEvolution(101, 30)),
Electrode(101, "Electrode", Generation.One, [Type.Electric], null),
Exeggcute(
102,
"Exeggcute",
Generation.One,
[Type.Grass, Type.Psychic],
SingleEvolution(103, -1, condition: [EvolutionCondition.LeafStone]),
),
Exeggutor(103, "Exeggutor", Generation.One, [Type.Grass, Type.Psychic], null),
Cubone(
104,
"Cubone",
Generation.One,
[Type.Ground],
SingleEvolution(105, 28, condition: [EvolutionCondition.OutsideAlola]),
),
Marowak(105, "Marowak", Generation.One, [Type.Ground], null),
Hitmonlee(106, "Hitmonlee", Generation.One, [Type.Fighting], null),
Hitmonchan(107, "Hitmonchan", Generation.One, [Type.Fighting], null),
Lickitung(108, "Lickitung", Generation.One, [Type.Normal], null),
Koffing(
109,
"Koffing",
Generation.One,
[Type.Poison],
SingleEvolution(110, 35, condition: [EvolutionCondition.OutsideGalar]),
),
Weezing(110, "Weezing", Generation.One, [Type.Poison], null),
Rhyhorn(111, "Rhyhorn", Generation.One, [
Type.Ground,
Type.Rock,
], SingleEvolution(112, 42)),
Rhydon(112, "Rhydon", Generation.One, [Type.Ground, Type.Rock], null),
Chansey(113, "Chansey", Generation.One, [Type.Normal], null),
Tangela(114, "Tangela", Generation.One, [Type.Grass], null),
Kangaskhan(115, "Kangaskhan", Generation.One, [Type.Normal], null),
Horsea(116, "Horsea", Generation.One, [Type.Water], SingleEvolution(117, 32)),
Seadra(117, "Seadra", Generation.One, [Type.Water], null),
Goldeen(118, "Goldeen", Generation.One, [
Type.Water,
], SingleEvolution(119, 33)),
Seaking(119, "Seaking", Generation.One, [Type.Water], null),
Staryu(
120,
"Staryu",
Generation.One,
[Type.Water],
SingleEvolution(121, -1, condition: [EvolutionCondition.WaterStone]),
),
Starmie(121, "Starmie", Generation.One, [Type.Water, Type.Psychic], null),
MrMime(122, "Mr. Mime", Generation.One, [Type.Psychic, Type.Fairy], null),
Scyther(123, "Scyther", Generation.One, [Type.Bug, Type.Flying], null),
Jynx(124, "Jynx", Generation.One, [Type.Ice, Type.Psychic], null),
Electabuzz(125, "Electabuzz", Generation.One, [Type.Electric], null),
Magmar(126, "Magmar", Generation.One, [Type.Fire], null),
Pinsir(127, "Pinsir", Generation.One, [Type.Bug], null),
Tauros(128, "Tauros", Generation.One, [Type.Normal], null),
Magikarp(129, "Magikarp", Generation.One, [
Type.Water,
], SingleEvolution(130, 20)),
Gyarados(130, "Gyarados", Generation.One, [Type.Water, Type.Flying], null),
Lapras(131, "Lapras", Generation.One, [Type.Water, Type.Ice], null),
Ditto(132, "Ditto", Generation.One, [Type.Normal], null),
Eevee(
133,
"Eevee",
Generation.One,
[Type.Normal],
BranchedEvolution([134], [-1], {
134: [EvolutionCondition.WaterStone],
}),
),
Vaporeon(134, "Vaporeon", Generation.One, [Type.Water], null);
final int id;
final String properName;
final Generation generation;
final List<Type> types;
final Evolution? evolution;
final int dexID;
bool get hasEvolutions => evolution != null;
const Pokemon(this.id, this.generation, this.types, this.evolution);
const Pokemon(
this.id,
this.properName,
this.generation,
this.types,
this.evolution, {
this.dexID = -1,
});
int get pokeDexID => dexID == -1 ? id : dexID;
String toDexPath() {
return 'assets/sprites/${printName().replaceAll("", "-f").replaceAll("", "-m").toLowerCase()}.png';
@ -362,8 +536,14 @@ enum Pokemon {
return Row(children: widgets);
}
String printName() {
String sRet = name.replaceAll("_", " ");
String printName({var proper = false}) {
String sRet;
if (!proper)
sRet = name.replaceAll("_", " ");
else
sRet = properName;
if (sRet.endsWith("F")) sRet = sRet.substring(0, sRet.length - 1) + "";
if (sRet.endsWith("M")) sRet = sRet.substring(0, sRet.length - 1) + "";

View file

@ -16,7 +16,7 @@ publish_to: "none" # Remove this line if you wish to publish to pub.dev
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
# In Windows, build-name is used as the major, minor, and patch parts
# of the product and file versions while build-number is used as the build suffix.
version: 1.0.032325+1427
version: 1.0.032325+1552
environment:
sdk: ^3.7.0
@ -155,6 +155,50 @@ flutter:
- assets/sprites/muk.png
- assets/sprites/shellder.png
- assets/sprites/cloyster.png
- assets/sprites/gastly.png
- assets/sprites/haunter.png
- assets/sprites/gengar.png
- assets/sprites/onix.png
- assets/sprites/drowzee.png
- assets/sprites/hypno.png
- assets/sprites/krabby.png
- assets/sprites/kingler.png
- assets/sprites/voltorb.png
- assets/sprites/electrode.png
- assets/sprites/exeggcute.png
- assets/sprites/exeggutor.png
- assets/sprites/cubone.png
- assets/sprites/marowak.png
- assets/sprites/hitmonlee.png
- assets/sprites/hitmonchan.png
- assets/sprites/lickitung.png
- assets/sprites/koffing.png
- assets/sprites/weezing.png
- assets/sprites/weezing-galarian.png
- assets/sprites/rhyhorn.png
- assets/sprites/rhydon.png
- assets/sprites/chansey.png
- assets/sprites/tangela.png
- assets/sprites/kangaskhan.png
- assets/sprites/horsea.png
- assets/sprites/seadra.png
- assets/sprites/goldeen.png
- assets/sprites/seaking.png
- assets/sprites/staryu.png
- assets/sprites/starmie.png
- assets/sprites/mrmime.png
- assets/sprites/scyther.png
- assets/sprites/jynx.png
- assets/sprites/electabuzz.png
- assets/sprites/magmar.png
- assets/sprites/pinsir.png
- assets/sprites/tauros.png
- assets/sprites/magikarp.png
- assets/sprites/gyarados.png
- assets/sprites/lapras.png
- assets/sprites/ditto.png
- assets/sprites/eevee.png
- assets/sprites/vaporeon.png
# An image asset can refer to one or more resolution-specific "variants", see
# https://flutter.dev/to/resolution-aware-images