> For the complete documentation index, see [llms.txt](https://docs.cuxial.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.cuxial.com/scripts/es/nucleo/cuxial-interactions/commands.md).

# Comandos y permisos

Teclas del diálogo y de la tienda de Cuxial Interactions, y quién puede hablar con cada NPC.

Cuxial Interactions no registra comandos. Los jugadores lo usan apuntando a un NPC; quién puede hacerlo lo deciden las condiciones de cada punto.

## Comandos

No hay ninguno, ni para jugadores ni para el staff.

## Teclas

| Tecla                       | Qué hace                                                                                                      |
| --------------------------- | ------------------------------------------------------------------------------------------------------------- |
| Tecla del target            | Muestra la opción de hablar al apuntar al NPC. Es la tecla de tu recurso de target.                           |
| <kbd>E</kbd>                | Abre la conversación en modo sprite. Valor por defecto de `sprite.key` y `sprite.control`.                    |
| <kbd>1</kbd> a <kbd>9</kbd> | Elige el botón del diálogo que está en esa posición. A partir del décimo botón solo funciona el ratón.        |
| Clic del ratón              | Selecciona un botón. Un clic en cualquier parte muestra el texto entero mientras todavía se está escribiendo. |
| <kbd>Esc</kbd>              | Cierra el diálogo o la tienda.                                                                                |

El recurso no registra ninguna asignación de tecla propia, así que no aparece nada en los ajustes de teclas de GTA.

## En la tienda

| Acción          | Qué ocurre                                                                             |
| --------------- | -------------------------------------------------------------------------------------- |
| Elegir cantidad | Hasta las unidades que lleva el jugador, y nunca más de `shop.maxQuantity` por venta.  |
| Vender          | El servidor quita los objetos y paga `precio × cantidad` en la cuenta de la tienda.    |
| Volver          | Regresa al diálogo. Solo aparece cuando la tienda se abrió desde un botón del diálogo. |

Una venta se rechaza cuando el jugador está más lejos que la distancia de la tienda, no lleva las unidades, o vende otra vez antes de que pase `shop.cooldown`. Cada caso muestra su propia notificación.

## Permisos

Cuxial Interactions no añade permisos ACE. El acceso depende de las condiciones escritas en cada punto y en cada botón:

| Condición                             | Requisito                                     |
| ------------------------------------- | --------------------------------------------- |
| `job = 'police'`                      | Tener ese trabajo.                            |
| `job = { 'police', 'ambulance' }`     | Tener cualquiera de los trabajos de la lista. |
| `job = { police = 2 }`                | Tener ese trabajo con ese grado o superior.   |
| `item = 'lockpick'`                   | Llevar al menos una unidad del objeto.        |
| `item = { 'lockpick', 'phone' }`      | Llevar todos los objetos de la lista.         |
| `item = { lockpick = 3 }`             | Llevar al menos esas unidades.                |
| `canInteract = function(ctx) ... end` | Tu propia comprobación. Debe devolver `true`. |

Cuando un punto tiene varias condiciones, deben cumplirse todas. Un punto que no las cumple no muestra la opción de hablar. Un botón que no las cumple no se muestra ni se puede ejecutar.

{% hint style="info" %}
El campo `job` de una página de diálogo es otra cosa: es el cargo que aparece en la cabecera junto al nombre del NPC, no una condición.
{% endhint %}

## Depuración

Pon `debug = true` en `shared/config.lua`, o la convar de abajo, para ver en consola los puntos y tiendas registrados y cada venta.

{% code title="server.cfg" %}

```cfg
setr cuxial_interactions_debug "1"
```

{% endcode %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.cuxial.com/scripts/es/nucleo/cuxial-interactions/commands.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
