Add genlocke transfer UI with transfer selection modal and backend support

When advancing to the next genlocke leg, users can now select surviving
Pokemon to transfer. Transferred Pokemon are bred down to their base
evolutionary form and appear as level-1 egg encounters in the next leg.
A GenlockeTransfer record links source and target encounters for lineage tracking.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Julian Tabel
2026-02-09 11:20:49 +01:00
parent 3bd4250305
commit c5910ec75c
15 changed files with 470 additions and 29 deletions

View File

@@ -285,6 +285,22 @@ export interface GenlockeDetail {
retiredPokemon: Record<number, RetiredPokemon>
}
// Transfer types
export interface SurvivorEncounter {
id: number
pokemon: Pokemon
currentPokemon: Pokemon | null
nickname: string | null
catchLevel: number | null
isShiny: boolean
routeName: string
}
export interface AdvanceLegInput {
transferEncounterIds: number[]
}
// Graveyard types
export interface GraveyardEntry {