Перейти к содержанию

Важные функции и переменные

В этом разделе подробно описаны основные функции и переменные, используемые или предоставляемые скриптом.
Понимание этих элементов поможет вам настроить или интегрировать скрипт с другими ресурсами.

Чтобы настроить систему боеприпасов для винтовки с парализующими дротиками, необходимо добавить имя события и реализовать функцию ниже, которая будет проверять, есть ли у игрока боеприпасы, прежде чем разрешить ему стрелять.

Чтобы настроить использование боеприпасов, необходимо ввести имя, как в примере ниже:

Config.EventHaveItem = "DETECT_IF_I_HAVE_AMMO"

Переменная находится в папке: /shared/config.lua.

Проверка наличия боеприпасов (серверная сторона)

Раздел с заголовком «Проверка наличия боеприпасов (серверная сторона)»

Функция находится в папке: /server/opensource.lua.

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

Вот пример реализации с использованием 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)

В файле weapons.lua добавьте определение оружия и боеприпасов для винтовки с парализующими дротиками:

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',
}
},
}

Добавьте изображения stun_dart_rifle.png и stun_dart_rifle_ammo.png в папку web/images ox_inventory.

Готово! Теперь у вас есть функциональная система боеприпасов для оглушающего дротика.

  • Используйте локальные переменные (local), чтобы ограничить область действия целевой функцией или скриптом.