Funciones y variables importantes
Esta sección detalla las principales funciones y variables utilizadas o expuestas por el script.
Entender estos elementos te ayudará a personalizar el script o a integrarlo con otros recursos.
Funciones modificables (cliente)
Sección titulada “Funciones modificables (cliente)”Estas funciones se encuentran en el archivo: /client/opensource.lua. Puedes modificarlas libremente para adaptar el script a tu servidor.
Mostrar una notificación
Sección titulada “Mostrar una notificación”function OS_Notify(msg, kind) -- msg : texto traducido -- kind : 'info' | 'success' | 'error'endSustituye el contenido de esta función para usar tu propio sistema de notificaciones.
Reproducir un sonido de interfaz
Sección titulada “Reproducir un sonido de interfaz”function OS_PlaySound(name) -- name : 'Place' o 'Detonate' (ver Config.Sounds)endMostrar la tecla de un comando
Sección titulada “Mostrar la tecla de un comando”function OS_KeyLabel(command) -- Devuelve el icono de la tecla asociada a un comando (p. ej. en las notificaciones)endExports del servidor
Sección titulada “Exports del servidor”Estos exports permiten integrar el script con cualquier inventario o sistema de tienda.
Añadir bombas al stock de un jugador
Sección titulada “Añadir bombas al stock de un jugador”exports['intense_smoke_grenade']:AddBombs(source, amount)Consultar el stock de un jugador
Sección titulada “Consultar el stock de un jugador”local count = exports['intense_smoke_grenade']:GetBombs(source)Iniciar la colocación de una bomba
Sección titulada “Iniciar la colocación de una bomba”exports['intense_smoke_grenade']:StartPlacing(source)Útil para un inventario distinto de ox_inventory: llama a este export cuando el jugador use el ítem. Recuerda poner Config.Inventory.enabled en false y Config.Stock.enabled en true o false según tu lógica de retirada del ítem.
Callback de ox_inventory
Sección titulada “Callback de ox_inventory”El script expone automáticamente un export con el nombre del ítem (Config.Inventory.item), utilizado por ox_inventory:
server = { export = 'intense_smoke_grenade.intense_smoke_grenade' }El ítem solo se retira del inventario si el servidor valida la colocación.
Buenas prácticas
Sección titulada “Buenas prácticas”- Usa variables locales (
local) para limitar el alcance a la función o al script correspondiente. - Solo puedes modificar los archivos
client/opensource.lua,shared/config.luay los archivos delocales/: los demás archivos pueden sobrescribirse durante una actualización.