Aller au contenu

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.

Afin de mettre en place le système de munitions pour la carabine à fléchettes paralysantes, vous devez implémenter la fonction ci-dessous qui vérifiera si le joueur possède des munitions avant de lui permettre de tirer.

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.EventHasItem, function(target, cb)
-- if true
-- Remove one munition item from inventory
-- cb(true)
-- if false
-- cb(false)
end)

Voici un exemple d’implémentation utilisant ox_inventory :

AddEventHandler(Config.EventHasItem, function(target, cb)
local src = target or source
-- Check if the player has at least 1 ammunition
local count = exports.ox_inventory:Search(src, 'count', 'ammo-dartrifle')
if count and count > 0 then
-- Remove 1 piece of ammunition
local removed = exports.ox_inventory:RemoveItem(src, 'ammo-dartrifle', 1)
if removed then
cb(true)
else
cb(false)
end
else
cb(false)
end
end)

Dans le fichier weapons.lua, ajoutez les définitions des items pour la carabine à fléchettes paralysantes et ses munitions :

['WEAPON_DARTRIFLE'] = {
label = 'Stun dart rifle',
weight = 4200,
durability = 0.5,
ammoname = 'ammo-dartrifle',
client = {
image = 'dart_rifle.png',
}
},

Dans le fichier items.lua, ajoutez la définition de l’item pour les munitions de la carabine à fléchettes paralysantes :

["ammo-dartrifle"] = {
label = 'Stun dart rifle ammunition',
weight = 20,
stack = true,
description = 'Dart for stun dart rifle.',
client = {
image = 'dart_rifle_ammo.png',
}
},

Ajoutez les images dart_rifle.png et 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.

  • Utilisez les variables locales (local) pour limiter la portée à la fonction ou au script concerné.