Fonctions et variables importantes
Cette section détaille les principales fonctions et variables utilisées ou exposées par le script.
Comprendre ces éléments vous aidera à personnaliser ou à intégrer le script à d’autres ressources.
Fonctions principales
Section intitulée « Fonctions principales »Afin de mettre en place le système de munitions pour la carabine à fléchettes paralysantes, vous devez ajouter un nom d’event et implémenter la fonction ci-dessous qui vérifiera si le joueur possède des munitions avant de lui permettre de tirer.
Dans le fichier de configuration
Section intitulée « Dans le fichier de configuration »Il faut encoder un nom comme l’exemple ci-dessous afin de mettre en place l’utilisation des munitions :
Config.EventHaveItem = "DETECT_IF_I_HAVE_AMMO"La variable se situe dans le dossier : /shared/config.lua.
Vérification de la possession des munitions (côté server)
Section intitulée « Vérification de la possession des munitions (côté server) »La fonction se situe dans le dossier : /server/opensource.lua.
AddEventHandler(Config.EventHaveItem, function(target, cb) -- if true -- cb(true)
-- if false -- cb(false)end)Exemple d’implémentation avec ox_inventory
Section intitulée « Exemple d’implémentation avec ox_inventory »Voici un exemple d’implémentation utilisant 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)Dans le fichier weapons.lua, ajoutez la définition de l’arme et de la munition pour la carabine à fléchettes paralysantes :
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', } }, }Ajoutez les images stun_dart_rifle.png et stun_dart_rifle_ammo.png dans le dossier web/images de ox_inventory.
C’est tout ! Vous avez maintenant un système de munitions fonctionnel pour la carabine à fléchettes paralysantes.
Bonnes pratiques
Section intitulée « Bonnes pratiques »- Utilisez les variables locales (
local) pour limiter la portée à la fonction ou au script concerné.