Un ítem es una lista de funciones, que se ejecutan de arriba abajo cuando el jugador lo usa, y un conjunto de restricciones que se comprueban antes de que se ejecute ninguna.
- El jugador usa el ítem desde su inventario.
- En el servidor se comprueban las restricciones de cooldown, ítem requerido y trabajo. Si falla una, se le dice al jugador por qué y no pasa nada.
- Se ejecutan las funciones del lado del servidor (Bundle).
- Se ejecutan las funciones del lado del cliente en el orden en que las pusiste. Cada una puede tener un retraso en milisegundos, que se espera antes de que empiece. Así es como se monta una secuencia: animación, 3 segundos después una notificación, y luego un prop.
- Si Remove on Use está activado, se retira esa cantidad del ítem.
Las funciones que duran (animaciones, escenarios, estilos de andar, velocidad, superpoderes, props enganchados) el jugador las puede detener con la tecla de cancelar (X por defecto).
| Función | Qué hace |
|---|
| Animation | Reproduce una animación de un diccionario. Loop la mantiene hasta que se cancela; si no, se repite durante el tiempo que pongas. Movable deja las piernas libres (solo la parte superior del cuerpo); static la reproduce con todo el cuerpo. No se reproduce dentro de un vehículo |
| Scenario | Inicia un escenario de GTA en el sitio, durante un tiempo |
| Walking Style | Cambia la forma de andar del jugador, durante un tiempo (15 segundos si lo dejas vacío) |
| Speed | Acelera (o ralentiza) lo rápido que se mueve el jugador, con un multiplicador, durante un tiempo o hasta que se cancela |
| Superpower | Cualquiera de Teleport (al punto de ruta del mapa), Invisibility, Invincibility, Superjump y Stamina (sprint infinito), cada uno con su propia duración |
| Clothes | Pone prendas y props de ropa, configurados por separado para los modelos freemode masculino y femenino, con una animación de ponérselos de data/clothing.lua |
| Función | Qué hace |
|---|
| Attach Prop | Pone un objeto en un hueso del jugador, colocado con el editor en vivo. Todos los de alrededor lo ven. Loop lo mantiene hasta que se cancela; si no, se quita al acabar la duración. No se usa dentro de un vehículo |
| Placeable Prop | El jugador coloca un objeto en el mundo: una vista previa sigue a donde mira, la rueda del ratón la gira, ↑ / ↓ la suben y la bajan, E la coloca y X cancela. El objeto colocado se puede volver a recoger; mira más abajo |
| Particles | Un efecto de partículas sobre el jugador, a partir de un asset y un nombre de efecto, con una escala y una duración |
| Visual Effect | Un efecto a pantalla completa durante un tiempo |
| Sound | Un sonido de GTA, a partir de un nombre y un sound set, a un volumen |
| Función | Qué hace |
|---|
| Health/Armor | Añade vida y armadura, con el máximo como tope |
| Food/Thirst | Añade hambre y sed, mediante esx_status en ESX o los eventos de consumibles en QBCore |
| Stress | Añade estrés, o lo quita con un número negativo |
| Función | Qué hace |
|---|
| Notification | Una notificación a través de tu framework, con un tipo (success por defecto) |
| Progress Bar | Una barra de progreso con una etiqueta, durante un tiempo: la integrada o la de ox_lib, según Config.ProgressBar |
| Webhook | Publica en un webhook de Discord: tu mensaje, los identificadores del jugador y, opcionalmente, una captura de pantalla (necesita screenshot-basic). Solo se aceptan URLs de webhooks de Discord |
| Función | Qué hace |
|---|
| Command | Ejecuta un comando como el jugador. No pasa nada si empieza por / |
| Trigger | Lanza un evento de cliente, un evento de servidor o un export escrito como resourceName:exportName. Cada uno recibe el nombre del ítem |
| Car | Saca un modelo de vehículo donde está el jugador, mirando hacia donde mira él, y opcionalmente lo sienta en el asiento del conductor |
| Bundle | Da varios ítems a la vez: una caja de seis cervezas, un botiquín. Se ejecuta en el servidor. Combínalo con Remove on Use para que la propia caja se gaste; un bundle nunca da el ítem al que pertenece |
Cuando un jugador coloca un Placeable Prop, el objeto se crea para todo el mundo. El jugador que lo colocó puede volver a recogerlo: con texto 3D y E, o mediante ox_target / qb-target si así lo indica Config.Interaction. Al recogerlo se devuelven tantas unidades del ítem como retiró Remove on Use, así que un cono colocado vuelve al bolsillo del que salió.
Abre los ajustes de un ítem para encontrarlas. Cada una tiene su propio interruptor.
| Restricción | Qué hace |
|---|
| Cooldown | Tiempo que el jugador tiene que esperar entre usos de este ítem, en milisegundos (60000 es un minuto). Se recuerda hasta que se reinicia el servidor |
| Job Restriction | Solo pueden usarlo los jugadores con uno de los trabajos de la lista, con el rango mínimo de ese trabajo o superior |
| Required Item | El jugador tiene que llevar esta cantidad de otro ítem: un mechero para un cigarro |
| Remove on Use | Cuántas unidades del ítem se retiran cada vez que se usa |
| Always Attached Prop | Mientras el ítem esté en el inventario, el Attach Prop del ítem se queda en el jugador; desaparece cuando sale la última unidad. Solo el jugador que lo lleva ve este prop |
- Save guarda el ítem en la tabla
mic_itemcreator y lo hace usable al momento, para todo el mundo.
- El menú puede darte el ítem, de uno en uno, para probarlo.
- Delete elimina la configuración: a partir de entonces, usar el ítem no hace nada. El framework lo mantiene registrado como usable hasta el siguiente reinicio, lo cual no causa ningún problema.