Ir al contenido

Idiomas

El recurso funciona con idioma por perfil:

  • se guarda lang en marketplace_users
  • la UI adapta textos según profile.lang
  • cada mensaje que manda el Lua —avisos, errores, indicaciones en el mundo, el minijuego del robo, blips y notas del buzón— sale en el idioma del jugador que lo recibe (desde 1.16.0)
  • las categorías y rarezas también tienen labels bilingües
  • los números, fechas y money se formatean según idioma

Idiomas actuales:

  • en
  • es
Textos Archivo Cifrado
Interfaz html/scripts/core/i18n/en.js, es.js No
Mensajes del juego desde Lua locales/en.lua, locales/es.lua No

Cada línea de locales/*.lua es clave = 'texto',. Puedes cambiar cualquier texto; respeta sus %s / %d en el mismo orden, porque se sustituyen por nombres, importes y objetos. Una clave que falte sale en inglés, y si tampoco está ahí se muestra la propia clave, para que el hueco se vea.

Algunos textos los lee más de una persona, así que usan Config.DefaultLang: los logs de Discord, las etiquetas que el script añade a un anuncio (como el nombre de un lote o el nombre genérico de un vehículo), las notas de resolución de los reembolsos y el motivo que recibe el hook OnInPersonTradeCancelled.

  1. Copia locales/en.lua como locales/<codigo>.lua (por ejemplo locales/fr.lua).
  2. Cambia Locales['en'] por Locales['fr'] y traduce los valores.
  3. Añade el mismo idioma a la interfaz en html/scripts/core/i18n/.
  4. Los jugadores podrán elegirlo; pon Config.DefaultLang = 'fr' para que sea el de por defecto.