diff --git a/lib/dexMisc.dart b/lib/dexMisc.dart index 2ccb35d..0766c5d 100644 --- a/lib/dexMisc.dart +++ b/lib/dexMisc.dart @@ -143,45 +143,50 @@ enum GameRoute { /// The game's name. enum Game { - Red, - Blue, - Yellow, - Gold, - Silver, - Crystal, - Ruby, - Sapphire, - FireRed(commonName: "Fire Red"), - LeafGreen(commonName: "Leaf Green"), - Emerald, - Colosseum, - XD(commonName: "XD Gale of Darkness"), - Diamond, - Pearl, - Platinum, - HeartGold(commonName: "Heart Gold"), - SoulSilver(commonName: "Soul Silver"), - Black, - White, - Black2(commonName: "Black 2"), - White2(commonName: "White 2"), - X, - Y, - OmegaRuby(commonName: "Omega Ruby"), - OmegaSapphire(commonName: "Omega Sapphire"), - Sun, - Moon, - UltraSun(commonName: "Ultra Sun"), - UltraMoon(commonName: "Ultra Moon"), - LetsGoPikachu(commonName: "Let's Go Pikachu"), - LetsGoEevee(commonName: "Let's Go Eevee"), - Sword, - Shield, - BrilliantDiamond(commonName: "Brilliant Diamond"), - ShiningPearl(commonName: "Shining Pearl"); + Red(gen: Generation.One), + Green(gen: Generation.One), + Blue(gen: Generation.One), + Yellow(gen: Generation.One), + Gold(gen: Generation.Two), + Silver(gen: Generation.Two), + Crystal(gen: Generation.Two), + Ruby(gen: Generation.Three), + Sapphire(gen: Generation.Three), + FireRed(commonName: "Fire Red", gen: Generation.Three), + LeafGreen(commonName: "Leaf Green", gen: Generation.Three), + Emerald(gen: Generation.Three), + Colosseum(gen: Generation.Three), + XD(commonName: "XD Gale of Darkness", gen: Generation.Three), + Diamond(gen: Generation.Four), + Pearl(gen: Generation.Four), + Platinum(gen: Generation.Four), + HeartGold(commonName: "Heart Gold", gen: Generation.Four), + SoulSilver(commonName: "Soul Silver", gen: Generation.Four), + Black(gen: Generation.Five), + White(gen: Generation.Five), + Black2(commonName: "Black 2", gen: Generation.Five), + White2(commonName: "White 2", gen: Generation.Five), + X(gen: Generation.Six), + Y(gen: Generation.Six), + OmegaRuby(commonName: "Omega Ruby", gen: Generation.Six), + OmegaSapphire(commonName: "Omega Sapphire", gen: Generation.Six), + Sun(gen: Generation.Seven), + Moon(gen: Generation.Seven), + UltraSun(commonName: "Ultra Sun", gen: Generation.Seven), + UltraMoon(commonName: "Ultra Moon", gen: Generation.Seven), + LetsGoPikachu(commonName: "Let's Go Pikachu", gen: Generation.Seven), + LetsGoEevee(commonName: "Let's Go Eevee", gen: Generation.Seven), + Sword(gen: Generation.Eight), + Shield(gen: Generation.Eight), + BrilliantDiamond(commonName: "Brilliant Diamond", gen: Generation.Eight), + ShiningPearl(commonName: "Shining Pearl", gen: Generation.Eight), + Scarlet(gen: Generation.Nine), + Violet(gen: Generation.Nine), + LegendsZA(commonName: "Legends Z-A", gen: Generation.Nine); final String commonName; - const Game({this.commonName = ""}); + final Generation gen; + const Game({required this.gen, this.commonName = ""}); @override String toString() { @@ -201,28 +206,18 @@ enum Game { class Location { final List routes; final Game game; - final Generation gameGen; + Generation get gameGen => game.gen; final List additionalGames; - const Location( - this.game, - this.routes, - this.gameGen, { - this.additionalGames = const [], - }); + const Location(this.game, this.routes, {this.additionalGames = const []}); } /// The PokeDex Entry describing the pokemon class DexEntry { final Game game; final String desc; - final Generation gameGen; + Generation get gameGen => game.gen; final List additionalGames; - const DexEntry( - this.game, - this.desc, - this.gameGen, { - this.additionalGames = const [], - }); + const DexEntry(this.game, this.desc, {this.additionalGames = const []}); } diff --git a/lib/generations/Gen1Data.dart b/lib/generations/Gen1Data.dart index 778354a..9424d98 100644 --- a/lib/generations/Gen1Data.dart +++ b/lib/generations/Gen1Data.dart @@ -5,29 +5,21 @@ class Gen1Locations { Gen1Locations._(); static const List Bulbasaur = [ - Location( - Game.Red, - [GameRoute.PalletTown], - Generation.One, - additionalGames: [Game.Blue], - ), - Location(Game.Yellow, [GameRoute.CeruleanCity], Generation.One), + Location(Game.Red, [GameRoute.PalletTown], additionalGames: [Game.Blue]), + Location(Game.Yellow, [GameRoute.CeruleanCity]), Location( Game.Gold, [GameRoute.TradeOrMigrate], - Generation.Two, additionalGames: [Game.Silver, Game.Crystal], ), Location( Game.Ruby, [GameRoute.TradeOrMigrate], - Generation.Three, additionalGames: [Game.Sapphire, Game.Emerald], ), Location( Game.FireRed, [GameRoute.PalletTown], - Generation.Three, additionalGames: [Game.LeafGreen], ), ]; @@ -35,79 +27,63 @@ class Gen1Locations { Location( Game.Red, [GameRoute.Evolve], - Generation.One, additionalGames: [Game.Blue, Game.Yellow], ), Location( Game.Gold, [GameRoute.TradeOrMigrate], - Generation.Two, additionalGames: [Game.Silver, Game.Crystal], ), Location( Game.Ruby, [GameRoute.TradeOrMigrate], - Generation.Three, additionalGames: [Game.Sapphire], ), Location( Game.FireRed, [GameRoute.Evolve], - Generation.Three, additionalGames: [Game.LeafGreen], ), - Location(Game.Emerald, [GameRoute.TradeOrMigrate], Generation.Three), + Location(Game.Emerald, [GameRoute.TradeOrMigrate]), ]; static const List Venusaur = [ Location( Game.Red, [GameRoute.Evolve], - Generation.One, additionalGames: [Game.Blue, Game.Yellow], ), Location( Game.Gold, [GameRoute.TradeOrMigrate], - Generation.Two, additionalGames: [Game.Silver, Game.Crystal], ), Location( Game.Ruby, [GameRoute.TradeOrMigrate], - Generation.Three, additionalGames: [Game.Sapphire, Game.Emerald], ), Location( Game.FireRed, [GameRoute.Evolve], - Generation.Three, additionalGames: [Game.LeafGreen], ), ]; static const List Charmander = [ - Location( - Game.Red, - [GameRoute.PalletTown], - Generation.One, - additionalGames: [Game.Blue], - ), - Location(Game.Yellow, [GameRoute.RT24], Generation.One), + Location(Game.Red, [GameRoute.PalletTown], additionalGames: [Game.Blue]), + Location(Game.Yellow, [GameRoute.RT24]), Location( Game.Gold, [GameRoute.TradeOrMigrate], - Generation.Two, additionalGames: [Game.Silver, Game.Crystal], ), Location( Game.Ruby, [GameRoute.TradeOrMigrate], - Generation.Three, additionalGames: [Game.Sapphire, Game.Emerald], ), Location( Game.FireRed, [GameRoute.PalletTown], - Generation.Three, additionalGames: [Game.LeafGreen], ), ]; @@ -115,25 +91,21 @@ class Gen1Locations { Location( Game.Red, [GameRoute.Evolve], - Generation.One, additionalGames: [Game.Blue, Game.Yellow], ), Location( Game.Gold, [GameRoute.TradeOrMigrate], - Generation.Two, additionalGames: [Game.Silver, Game.Crystal], ), Location( Game.Ruby, [GameRoute.TradeOrMigrate], - Generation.Three, additionalGames: [Game.Sapphire, Game.Emerald], ), Location( Game.FireRed, [GameRoute.Evolve], - Generation.Three, additionalGames: [Game.LeafGreen], ), ]; @@ -141,25 +113,21 @@ class Gen1Locations { Location( Game.Red, [GameRoute.Evolve], - Generation.One, additionalGames: [Game.Blue, Game.Yellow], ), Location( Game.Gold, [GameRoute.TradeOrMigrate], - Generation.Two, additionalGames: [Game.Silver, Game.Crystal], ), Location( Game.Ruby, [GameRoute.TradeOrMigrate], - Generation.Three, additionalGames: [Game.Sapphire, Game.Emerald], ), Location( Game.FireRed, [GameRoute.Evolve], - Generation.Three, additionalGames: [Game.LeafGreen], ), ];