Saltar al contenido

Funciones y variables importantes

Esta sección detalla las funciones y variables principales utilizadas o expuestas por el script.
Comprender estos elementos te ayudará a personalizar o integrar el script con otros recursos.

Para implementar el sistema de munición para el rifle de dardos paralizantes, debes añadir un nombre de evento e implementar la siguiente función, que comprobará si el jugador tiene munición antes de permitirle disparar.

Debes codificar un nombre como el del ejemplo siguiente para configurar el uso de munición:

Config.EventHaveItem = "DETECT_IF_I_HAVE_AMMO"

La variable se encuentra en la carpeta: /shared/config.lua.

Verificación de posesión de munición (lado del servidor)

Sección titulada “Verificación de posesión de munición (lado del servidor)”

La función se encuentra en la carpeta: /server/opensource.lua.

AddEventHandler(Config.EventHaveItem, function(target, cb)
-- if true
-- cb(true)
-- if false
-- cb(false)
end)

Aquí hay un ejemplo de implementación usando ox_inventory:

AddEventHandler(Config.EventHaveItem, function(src, cb)
local count = exports.ox_inventory:Search(src, 'count', 'ammo-dartrifle')
if not count or count == 0 then
if Config.Debug then
print("[ERROR] Could not retrieve ammo count for player " .. src .. ".")
end
cb(false)
return
end
if Config.Debug then
print("[INFO] Player " .. src .. " have 1 ammo or more.")
end
cb(true)
end)

En el archivo weapons.lua, añade la definición del arma y la munición para el rifle de dardos paralizantes:

Weapons = {
['WEAPON_DARTRIFLE'] = {
label = 'Stun dart rifle',
weight = 2500,
durability = 0.1,
ammoname = 'ammo-dartrifle',
client = {
image = 'stun_dart_rifle.png',
export = 'ox_inventory.giveWeaponComponent',
component = 'COMPONENT_AT_SCOPE_LARGE'
}
},
},
Ammo = {
["ammo-dartrifle"] = {
label = 'Stun dart rifle ammunition',
weight = 20,
client = {
image = 'stun_dart_rifle_ammo.png',
}
},
}

Agrega las imágenes stun_dart_rifle.png y stun_dart_rifle_ammo.png en la carpeta web/images de ox_inventory.

¡Eso es todo! Ahora tienes un sistema de municiones funcional para el rifle de dardos paralizantes.

  • Utiliza variables locales (local) para limitar el alcance a la función o script concerniente.