> For the complete documentation index, see [llms.txt](https://realisticnode.gitbook.io/rnsetups/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://realisticnode.gitbook.io/rnsetups/es/rnkoth/configuration/languages.md).

# Idiomas y textos

Inglés y español, un idioma para cada jugador, añadir un idioma y cambiar cualquier texto.

Todos los textos que ven los jugadores están en `plugins/rnKoth/languages/`: mensajes del chat, títulos, boss bars, action bars, el holograma, la barra lateral, los menús, el editor y las publicaciones de Discord.

| Archivo            | Idioma           |
| ------------------ | ---------------- |
| `languages/en.yml` | Inglés (English) |
| `languages/es.yml` | Español          |

Elige el idioma del servidor en `config.yml`:

```yaml
language: es
```

## Un idioma para cada jugador

```yaml
per-player-language: true
```

Así cada jugador ve los mensajes, los menús y las boss bars en el idioma de su Minecraft, si hay un archivo para él. Un jugador con el juego en `es_mx` o `es_es` recibe `es.yml`; un jugador cuyo idioma no tiene archivo recibe el `language` del servidor.

Los textos que todos comparten, como el holograma, la consola y las publicaciones de Discord, siempre usan el `language` del servidor.

## Cambiar un texto

Abre el archivo de idioma, cambia el texto y guarda. Se aplica a los pocos segundos (con `auto-reload` activado) o con `/koth reload`.

```yaml
capture:
  started: '{prefix}¡<yellow>{holder} <gray>está capturando {koth_name}<gray>!'
```

* **Colores**: MiniMessage (`<gold>`, `<#ff8800>`, `<gradient:#ffb000:#ffe066>`, `<bold>`) y códigos `&` (`&6`, `&l`, `&#ff8800`), mezclados como quieras.
* **Varias líneas**: un mensaje puede ser una línea o una lista de líneas.
* **Desactivar un mensaje**: ponlo en `''` o `[]`.
* **Centrar una línea del chat**: empiézala con `<center>`.
* **Clics y hovers**: `<click:run_command:/koth info {koth}>`, `<hover:show_text:"...">`.
* **`{prefix}`** es el `prefix` del principio del archivo.
* Los placeholders que puede usar cada mensaje están junto a él en el archivo. Ver [Placeholders](/rnsetups/es/rnkoth/reference/placeholders.md#placeholders-dentro-de-los-mensajes).
* Con PlaceholderAPI, los placeholders `%...%` del jugador funcionan en los mensajes que se envían a un jugador.

{% hint style="warning" %}
YAML necesita espacios, nunca tabulaciones. Cuando un texto tiene una `'`, escríbela dos veces: `'Rock''n''Roll'`. Si te equivocas, la consola muestra la línea exacta y el archivo usa los textos por defecto hasta que lo arregles.
{% endhint %}

## Tus cambios nunca se sobrescriben

* Las actualizaciones **añaden** los textos nuevos a tus archivos, antes con una copia en `backups/`. Los textos que cambiaste se quedan como están.
* Si borras `en.yml` o `es.yml`, se vuelve a crear con los textos por defecto en el próximo inicio o recarga.

## Palabras del idioma

`{@ruta}` en un texto se cambia por el texto de esa ruta del archivo de idioma, **en el idioma del jugador que lo lee**. Por ejemplo:

```yaml
# languages/es.yml
rewards:
  victory-title: '<gold><bold>¡VICTORIA!'
```

```yaml
# koths/spawn.yml
rewards:
  winner:
    - '[title] {@rewards.victory-title};{@rewards.victory-subtitle}'
```

Un jugador en inglés ve `VICTORY` y un jugador en español ve `¡VICTORIA!`. Usa esto en los textos de los premios (`[message]`, `[broadcast]`, `[title]`, `[actionbar]`, nombres de objetos) para que un solo archivo de KOTH sirva para todos los idiomas. Puedes añadir tus propias rutas a los archivos de idioma y usarlas igual. (Esta línea `[title]` es solo un ejemplo: los premios por defecto no tienen ninguna, porque los ganadores ya reciben el título integrado `¡VICTORIA!`.)

En los comandos (líneas de premio `[console]` y `[player]`, `commands.on-start` y `on-end`) no hay un lector, así que `{@ruta}` usa el idioma del **servidor** (`language` en `config.yml`).

La sección `words` tiene las palabras cortas que el plugin usa en todas partes: `Nadie`, los nombres de los modos (`Captura`, `Puntos`), los estados (`Libre`, `Capturando`, `En disputa`), las unidades de tiempo (`d`, `h`, `m`, `s`), los nombres de las estadísticas y las palabras de los horarios (`cada`, `diario`, `lun`...).

## Añadir un idioma

1. Copia `languages/en.yml` en un archivo nuevo con el nombre del idioma, por ejemplo `languages/de.yml` o `languages/pt.yml`.
2. Traduce los textos y guarda.
3. Pon `language: de` en `config.yml`, o usa `per-player-language: true`.

Usa la parte del idioma del locale de Minecraft como nombre del archivo (`de` para `de_de`, `pt` para `pt_br`). También puedes crear un archivo para un solo locale, como `pt_br.yml`.

Los textos que faltan en tu archivo se añaden en inglés al cargarlo, así el plugin nunca muestra un mensaje vacío. El idioma nuevo también aparece en `/koth editor` → Ajustes generales → **Idioma**.

{% hint style="success" %}
¿Hiciste una traducción? Compártela en nuestro [Discord](https://discord.gg/GzxW2FANPB) para que otros dueños de servidores también puedan usarla.
{% endhint %}
