getScriptPath() - Как присвоить переменную

Страницы: 1
RSS
getScriptPath() - Как присвоить переменную, Нужна помощь новичку
 
Помогите разобраться. FileStart = (getScriptPath().."\\".."D:\5.1\lua\setka_start.txt"), не пойму как правильно записать чтоб не ругался компилятор.

Выводит такую ошибку - lua: moi bot.lua:32: attempt to call global 'getScriptPath' (a nil value)
stack traceback:
moi bot.lua:32: in main chunk
[C]: ?

Как я понимаю он не поймет на какой диск сохранить файл. Вариантов много перебрал, но логику не пойму, знающие подскажите как правильно записать и если не сложно объясните логику записи.
 
"D:\\5.1\\lua\\....“
Короче все обратные слеши надо по 2 раза писать

Правда это не обьясняет приведенную ошибку
 
С другой стороны, если вы получаете путь к скрипту через getScriptPath, то зачем потом добавляете полный путь?? В итоге у вас получится некорректный путь к файлу
 
"D:\\5.1\\lua\\....“ - в этой конструкции как робот поймет с какого файла брать инфу? Думаю хвост прописывать нужно. Возможно если папка пуста, то этот вариант подходит.

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

Так это меня самого смущает, но человек в обучении показывает что можно так делать, хотя я изучаю материалы в интернете и не нашел не у кого что можно к этой функции присвоить переменную
 
Код
function OnInit(script_path)
  _G.script_path = tostring(script_path) -- полное имя файла скрипта с путем
  TRANSACTION_COMPLETED= {} -- таблица выполненных трензакций
end  


_G.ScriptName = script_path:match("(.+)%..+$"):sub(#script_path-script_path:reverse():find("\\")+2) -- сокращенное название торгового скрипта
  local ScriptFolder     = getScriptPath()                                            -- папка скрипта
  local DataScriptFolder = ScriptFolder.."\\"..ScriptName                             -- папка данных скрипта
  local ScreenFolder     = DataScriptFolder.."\\".."screenshots"                      -- папка скриншотов скрипта
     _G.LabelFolder      = DataScriptFolder.."\\".."labels"                           -- папка меток скрипта
  local LogFile          = DataScriptFolder.."\\"..ScriptName.."_log.txt"             -- лог файл
  local DataFile         = DataScriptFolder.."\\"..ScriptName.."_data.txt"            -- файл с результатами
  ----------------------------------------------------------------------------------------------------------------------
  package.path = package.cpath..";"..ScriptFolder..";"..DataScriptFolder..";"..ScriptFolder.."\\module.lua"..";"..ScriptFolder.."\\module.luac";
  require "module"
  mes("Версия ".._VERSION,1)
  mes("Запуск скрипта "..script_path,1)
 
Цитата
АндрейС написал:
Помогите разобраться. FileStart = (getScriptPath().."\\".."D:\5.1\lua\setka_start.txt"), не пойму как правильно записать чтоб не ругался компилятор.
Абсолютные пути желательно никогда не использовать.
Страницы: 1
Читают тему
Наверх