Files
nuzlocke-tracker/backend/src/app/schemas/run.py
Julian Tabel 48b56f9360 Implement Retire HoF (Gauntlet) rule enforcement for genlockes
When retireHoF is enabled, surviving HoF Pokemon and their evolutionary
families are retired at leg advancement and treated as duplicates in all
subsequent legs — both in the encounter modal and bulk randomize.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-09 10:05:03 +01:00

43 lines
887 B
Python

from datetime import datetime
from app.schemas.base import CamelModel
from app.schemas.encounter import EncounterDetailResponse
from app.schemas.game import GameResponse
class RunCreate(CamelModel):
game_id: int
name: str
rules: dict = {}
class RunUpdate(CamelModel):
name: str | None = None
status: str | None = None
rules: dict | None = None
class RunResponse(CamelModel):
id: int
game_id: int
name: str
status: str
rules: dict
started_at: datetime
completed_at: datetime | None
class RunGenlockeContext(CamelModel):
genlocke_id: int
genlocke_name: str
leg_order: int
total_legs: int
is_final_leg: bool
retired_pokemon_ids: list[int] = []
class RunDetailResponse(RunResponse):
game: GameResponse
encounters: list[EncounterDetailResponse] = []
genlocke: RunGenlockeContext | None = None