mirror of
https://github.com/bryanthaboi/gen1recomp.git
synced 2026-08-25 15:01:11 +02:00
3470e3c4ae
src/ui/gen2/NamingScreen.lua had zero Strings() calls: every prompt (YOUR NAME?/RIVAL'S NAME?/MOTHER'S NAME?/BOX NAME?/NICKNAME?), the on-screen keyboard's own letters, and the lower/UPPER/DEL/END bottom row were bare literals, invisible to a translation mod's `strings` registry (reported against a real Gold build, gen1recomp#1642). The Gen 1 naming screen (src/ui/NamingScreen.lua) already routes its title and every keyboard cell through Strings(); this mirrors that. NamingScreen.TYPES and the bottom-row label tables are built once at require time, before any mod's Strings.load has a catalog to answer from, so their literals are wrapped in Strings.source -- an identity marker that keeps the catalog generator's harvest of them -- and drawPanel resolves them live through plain Strings() calls, the same split used for Gold's OPTION screen and PR #1450's clock screens. The nickname header ("<MON>'S" then "NICKNAME?", two lines because Chrome.printThrough draws one row at a time) folds the mon name into the first line's own format string, Strings("%s'S", self.monName), rather than translating just the "'S" suffix: a language whose possessive is not a bare suffix appended to the name can restructure that whole line instead of being stuck splicing one on.