Add version groups to share routes and boss battles across games
Routes and boss battles now belong to a version_group instead of individual games, so paired versions (e.g. Red/Blue, Gold/Silver) share the same route structure and boss battles. Route encounters gain a game_id column to support game-specific encounter tables within a shared route. Includes migration, updated seeds, API changes, and frontend type updates. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -64,6 +64,7 @@ export interface PaginatedPokemon {
|
||||
|
||||
export interface CreateRouteEncounterInput {
|
||||
pokemonId: number
|
||||
gameId: number
|
||||
encounterMethod: string
|
||||
encounterRate: number
|
||||
minLevel: number
|
||||
|
||||
@@ -7,12 +7,13 @@ export interface Game {
|
||||
boxArtUrl: string | null
|
||||
releaseYear: number | null
|
||||
color: string | null
|
||||
versionGroupId: number | null
|
||||
}
|
||||
|
||||
export interface Route {
|
||||
id: number
|
||||
name: string
|
||||
gameId: number
|
||||
versionGroupId: number
|
||||
order: number
|
||||
parentRouteId: number | null
|
||||
pinwheelZone: number | null
|
||||
@@ -36,6 +37,7 @@ export interface RouteEncounter {
|
||||
id: number
|
||||
routeId: number
|
||||
pokemonId: number
|
||||
gameId: number
|
||||
encounterMethod: string
|
||||
encounterRate: number
|
||||
minLevel: number
|
||||
@@ -140,7 +142,7 @@ export interface BossPokemon {
|
||||
|
||||
export interface BossBattle {
|
||||
id: number
|
||||
gameId: number
|
||||
versionGroupId: number
|
||||
name: string
|
||||
bossType: BossType
|
||||
badgeName: string | null
|
||||
|
||||
Reference in New Issue
Block a user