> 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/rnpsmenu/guides/flags.md).

# Flags y plantillas

Qué flags pueden cambiar los jugadores, los flags propios de rnPsMenu, los flags reservados para mejores bloques, las plantillas y el bloqueo anti-trampas.

## Qué flags aparecen

El menú de flags muestra **una sola lista** con todos los flags que el jugador puede cambiar en la región:

* los **`allowed_flags` del tipo de bloque de la región** en ProtectionStones (`plugins/ProtectionStones/blocks/*.toml`);
* más los flags de **`flags.extra-allowed`** en `config.yml`, en todas las regiones. Por defecto: los [flags propios de rnPsMenu](#los-flags-propios-de-rnpsmenu) y los flags de WorldGuard de siempre (build, chest-access, entry, tnt, greeting...).

rnPsMenu conoce **124 flags** (85 de WorldGuard y sus 39 propios), cada uno con icono, nombre y descripción en inglés y español. Por defecto 105 se pueden cambiar en todas las regiones; los otros 19 (pvp, game-mode, exit, curación y comida, flags de chat y comandos...) aparecen cuando el tipo de bloque los permite o los añades a `extra-allowed`. La lista sigue el orden de `flags.yml`; los flags que no están ahí van al final.

```toml
allowed_flags = [
    "-g all pvp",          # pvp, only for everyone
    "greeting",
    "entry",
    "-g members,nonmembers build",
    "game-mode",
]
```

`-g` limita a qué grupos se puede aplicar un flag. Los flags de `extra-allowed` se pueden aplicar a cualquier grupo, salvo que el tipo de bloque también los tenga con `-g`. Un jugador también necesita `protectionstones.flags.edit.<flag>` (ProtectionStones se lo da a todos por defecto).

```yaml
flags:
  extra-allowed:
    - crafting-table-use
    - villager-trade
    - build
    - greeting
    # [] = only ProtectionStones' allowed_flags
```

Los flags que no existen en tu versión de WorldGuard se saltan. Se dejaron fuera a propósito exit, invincible, game-mode, heal/feed y los flags de chat y comandos, porque pueden atrapar a los visitantes o dar ventajas. Si los quieres, añádelos.

{% hint style="info" %}
Los flags de `extra-allowed` se cambian desde los menús. El `/ps flag <flag> <valor>` de ProtectionStones solo conoce los `allowed_flags` del tipo de bloque.
{% endhint %}

Los saludos, las despedidas, sus títulos y barras de acción, y `deny-message` se colorean igual desde el menú que con `/ps flag greeting <texto>`: los códigos `&`, el hex (`&#3fd0ff`) y MiniMessage (`<gold>`) se convierten en colores de verdad.

`time-lock`, `weather-lock`, `game-mode`, `invincible` y las barras de acción de saludo y despedida se aplican al momento a los jugadores que ya están dentro, tanto si los cambias desde el menú como con `/ps flag` o `/rg flag` (también desde la consola). WorldGuard solo, en cambio, los aplica la próxima vez que alguien cruza el borde. Si quitas la hora o el clima fijos, quien esté dentro vuelve a ver la hora y el clima del mundo.

`wither-damage` en denegar también impide que los cráneos de wither rompan bloques en la región (WorldGuard solo los deja pasar).

Para ocultar un flag del menú sin tocar ProtectionStones, pon `hidden: true` en ese flag dentro de `flags.yml`, o haz clic en él en `/psmenu editor > Flags`. Ahí también se elige el icono de cada flag; con `icon: CRAFTER|DISPENSER` se usa el segundo ítem si el primero no existe en tu versión de Minecraft. Los nombres y descripciones están en los archivos de idioma, en `flags`.

## Los flags propios de rnPsMenu

rnPsMenu añade **39 flags** a WorldGuard para cosas que WorldGuard no controla. Son flags normales de WorldGuard: también funcionan en los `allowed_flags` de ProtectionStones y con `/rg flag`.

* **Denegar**: se bloquea para quien no es miembro (el grupo por defecto). **A los dueños y miembros nunca se les bloquea**, salvo que el dueño cambie el grupo con clic derecho.
* **Permitir**: en los flags de usar un bloque (mesas de crafteo, hornos, tocadiscos, compostadores, calderos con cubos, fogatas...), en los de mobs (`villager-trade`, `leash-use`...) y en `bone-meal-use` y `spawn-egg-use`, los visitantes pueden hacerlo **aunque la protección de WorldGuard lo impediría**. Solo eso: colocar y romper bloques siguen bloqueados, y un huevo o el polvo de hueso nunca valen sobre un generador ni sobre un bloque que se usa (un cofre sigue siendo un cofre). Ideal para una tienda con una mesa de crafteo libre. Permitir solo levanta la protección del propio WorldGuard: si un plugin de candados (LWC, Bolt...), un plugin de tiendas o cualquier otro plugin rechaza el clic, ese plugin sigue mandando.
* **Sin valor**: no cambia nada; se aplica la protección normal de WorldGuard.
* A los jugadores que se saltan WorldGuard (`worldguard.region.bypass.<mundo>`) nunca se les bloquea.
* Los flags del mundo (`phantom-spawn`, `wither-spawn`, `mob-crop-trample`, `map-marker`) se aplican a todos, porque no hay ningún jugador de por medio.
* Los bloques, ítems y mobs que no existen en tu versión de Minecraft (crafters, bóvedas, estantes, cofres de cobre...) simplemente se saltan, así que la misma lista sirve de la 1.21.1 a la 26.3.

**Jugadores**

| Flag                | Qué controla                                                                                       |
| ------------------- | -------------------------------------------------------------------------------------------------- |
| `elytra-glide`      | Volar con élitros, también entrar planeando desde fuera                                            |
| `nether-portal-use` | Los portales del Nether dentro de la región (no los portales ni accesos del End), también en Folia |

**Qué pueden usar los visitantes**

| Flag                     | Qué controla                                                                    |
| ------------------------ | ------------------------------------------------------------------------------- |
| `ender-chest-use`        | Abrir cofres de ender                                                           |
| `crafting-table-use`     | Mesas de crafteo                                                                |
| `furnace-use`            | Hornos, ahumadores y altos hornos                                               |
| `enchanting-table-use`   | Mesas de encantamientos                                                         |
| `brewing-stand-use`      | Soportes para pociones                                                          |
| `beacon-use`             | Cambiar los efectos de los faros                                                |
| `workstation-use`        | Cortapiedras, telares, afiladores y mesas de cartografía, herrería y de flechas |
| `crafter-use`            | Crafters                                                                        |
| `vault-use`              | Bóvedas de las cámaras de desafío                                               |
| `lectern-use`            | Leer y coger libros de los atriles                                              |
| `chiseled-bookshelf-use` | Poner y sacar libros                                                            |
| `shelf-use`              | Poner y sacar objetos de los estantes                                           |
| `copper-chest-use`       | Cofres de cobre                                                                 |
| `decorated-pot-use`      | Meter objetos en vasijas decoradas                                              |
| `jukebox-use`            | Poner y sacar discos                                                            |
| `note-block-use`         | Cambiar la nota de los bloques musicales                                        |
| `bell-use`               | Tocar campanas                                                                  |
| `composter-use`          | Compostadores                                                                   |
| `cauldron-use`           | Llenar y vaciar calderos                                                        |
| `campfire-use`           | Cocinar en fogatas                                                              |
| `flower-pot-use`         | Poner y quitar plantas de las macetas                                           |
| `bone-meal-use`          | Usar polvo de hueso en bloques                                                  |
| `spawn-egg-use`          | Usar huevos de aparición: en bloques, en el agua, en el aire y sobre mobs       |

**Animales y entidades**

| Flag                 | Qué controla                                                  |
| -------------------- | ------------------------------------------------------------- |
| `villager-trade`     | Comerciar con aldeanos y vendedores ambulantes                |
| `animal-breed`       | Dar de comer a los animales para criarlos                     |
| `mount-chest-access` | Cofres de burros, mulas, llamas y barcos                      |
| `leash-use`          | Poner y quitar riendas a los animales (también de las vallas) |
| `name-tag-use`       | Ponerles nombre a los mobs                                    |
| `shear-use`          | Esquilar ovejas y otros mobs                                  |
| `mob-bucket-use`     | Atrapar peces y ajolotes en cubos                             |
| `fishing-hook`       | Atraer mobs y jugadores con la caña de pescar                 |
| `armor-stand-use`    | Poner o quitar objetos de los soportes de armadura            |

**Mobs**

| Flag               | Qué controla                           |
| ------------------ | -------------------------------------- |
| `phantom-spawn`    | Aparición de phantoms                  |
| `wither-spawn`     | Construir el wither                    |
| `raid-trigger`     | El Mal presagio inicia asaltos         |
| `mob-crop-trample` | Los mobs pisotean la tierra de cultivo |

**Mapa**

| Flag         | Qué controla                                                                                                |
| ------------ | ----------------------------------------------------------------------------------------------------------- |
| `map-marker` | La región se ve en el mapa web; denegarlo la oculta. Mira [Mapas web](/rnsetups/es/rnpsmenu/guides/maps.md) |

## Flags reservados para mejores bloques o rangos

En `flags.yml` puedes reservar un flag para algunos tipos de bloque o para un permiso:

<figure><img src="https://i.imgur.com/YkPAO0d.png" alt="Un flag bloqueado para este tipo de bloque, con un enlace a la tienda"><figcaption><p>Un flag bloqueado para este tipo de bloque, con un enlace a la tienda</p></figcaption></figure>

```yaml
flags:
  villager-trade:
    icon: EMERALD
    types: [diamond, emerald]        # only regions of these block types
  greeting-title:
    icon: NAME_TAG
    permission: myserver.vip         # any permission you choose
```

* `types`: tipos de bloque de ProtectionStones, por alias o por bloque (como `diamond_block`).
* `permission`: el permiso necesario para cambiar el flag. Es un permiso tuyo (dalo con tu plugin de permisos, por ejemplo a un rango VIP).
* Los demás ven el flag **bloqueado**: el lore dice con qué bloques se desbloquea, o que hace falta un rango superior.
* Al hacer clic en un flag bloqueado por `types` **se abre la tienda de protecciones**, para que el jugador pueda comprar un bloque mejor (si la tienda está activa, el servidor tiene economía y el jugador tiene `rnpsmenu.shop`). Si no, un mensaje explica por qué está bloqueado.
* Las plantillas y **Copiar de otra región** se saltan los flags bloqueados, y el propio `/ps flag <flag> <valor>` de ProtectionStones también los rechaza.

`types` y `permission` se configuran en `flags.yml` (el editor del juego solo cambia iconos y flags ocultos).

## Bloqueo anti-trampas

```yaml
flags:
  cooldown-seconds: 2
  lock-while-visitors-inside: [pvp, entry, exit, invincible, fall-damage, lava-flow]
  notify-players-inside: false
  lock-pvp-group: true
```

* Los flags de `lock-while-visitors-inside` no se pueden cambiar mientras haya dentro de la región alguien que no sea dueño ni miembro, así nadie puede atraer jugadores y activarles el pvp encima. `rnpsmenu.bypass.lock` se lo salta.
* `cooldown-seconds`: tiempo antes de que el mismo flag de la misma región pueda cambiar otra vez (`0` = sin espera). El staff con `rnpsmenu.bypass.cooldown` nunca espera.
* `entry` y `exit` nunca se pueden denegar a un grupo con los dueños (todos, miembros, dueños): el dueño se quedaría fuera de su propia región. Al denegarlos se aplican a los no miembros; quien ya no puede estar dentro se saca justo fuera, con un aviso.
* `notify-players-inside`: avisa a los jugadores de dentro cuando cambia un flag.
* `lock-pvp-group`: el pvp nunca cambia de grupo (miembros, no miembros...), igual que en `/ps flag`. Además, el pvp no se puede quitar cuando el tipo de bloque le da un valor.

## Plantillas

**Menú de la región > Plantillas de flags** aplica varios flags de una vez. Las que vienen por defecto son Privada, Pública, Tienda, Granja y Pacífica (`presets.yml`):

<figure><img src="https://i.imgur.com/V1QqHBB.png" alt="Plantillas: cada una muestra los flags que pone"><figcaption><p>Plantillas: cada una muestra los flags que pone</p></figcaption></figure>

```yaml
presets:
  private:
    icon: IRON_DOOR
    permission: ''
    flags:
      - "pvp deny"
      - "-g nonmembers entry deny"
      - "-g nonmembers use deny"
      - "-g nonmembers chest-access deny"
      - "creeper-explosion deny"
      - "tnt deny"
```

Cada línea se escribe como los `flags` de ProtectionStones: `flag valor`, `-g grupo flag valor`, o `flag none` para quitar el valor. `permission` es el permiso necesario para usar la plantilla (`''` = todos los que tienen `rnpsmenu.presets`).

Las plantillas necesitan `rnpsmenu.presets` y `protectionstones.flags`, y las usan los dueños y los [operadores](/rnsetups/es/rnpsmenu/guides/players.md#operadores) con el permiso de Flags. Solo se aplican los flags que la región permite y que el jugador puede editar (se saltan los flags bloqueados y los del bloqueo anti-trampas si hay visitantes dentro); el mensaje dice cuántos se saltaron.

* **Copiar de otra región** copia los flags de una de tus regiones.
* **Guardar como plantilla** (jugadores con `rnpsmenu.admin`) guarda los flags de la región como una plantilla nueva.

Los nombres y descripciones de las plantillas que ven los jugadores están en los archivos de idioma, en `presets` (por ejemplo `presets.private.name: 'Privada'` en `languages/es.yml`).
