#lua #fivem
#lua #пять
Вопрос:
Я довольно новичок в lua и хотел создать клиентский скрипт, который рисует маркер на определенных координатах. к сожалению, когда я перезагружаю ресурс, он говорит
попытка индексировать нулевое значение (глобальная конфигурация) Это мой конфигурационный файл:
Config = {} Config.MarkerType=1
И это метод, с которым я пытаюсь работать:
Citizen.CreateThread(function() while true do Citizen.Wait(1) DrawMarker(Config.MarkerType, 400.3, -1157.4, 28.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 4.0, 4.0, 4.0, 255, 0, 0, 170, false, true, 2, nil, nil," ", false) end end)
Кто-нибудь может мне помочь? У меня есть 2 папки в папке ресурсов с именами «клиент» и «сервер». Оба содержат файл с именем «main.lua». __resource.lua содержит:
shared_script 'client/config.lua' server_scripts { 'server/main.lua' } client_scripts { 'client/main.lua' }
У меня ESX=ноль в начале моего клиентского сценария, поэтому я не совсем понимаю проблему здесь.
Комментарии:
1. был ли ваш конфигурационный файл выполнен в какой-то момент? ошибка указывает на то, что это не так.
Ответ №1:
Ошибка указывает на то, что сценарии пытаются индексировать что-то, что не было определено ( Config.MarkerType
), это может означать несколько вещей :
- Файл, содержащий
Config
массив, не был загружен - В файле, содержащем определение
Config
массива, есть ошибка - Файл, содержащий
Config
массив, загружается после файла клиента
Поэтому, похоже, это не последние два, :
У меня есть 2 папки в папке ресурсов с именами «клиент» и «сервер». Оба содержат файл с именем «main.lua». __resource.lua содержит:
Где вы config.lua
находитесь ?
Если это рядом __resource.lua
, то вам следует отредактировать свой файл следующим образом
shared_script 'config.lua' server_scripts { 'server/main.lua' } client_scripts { 'client/main.lua' }