Имя пользователя:
Пароль:
 

Название темы: [решено] Язык LUA
Показать сообщение отдельно
pva pva вне форума

Аватара для pva

Ветеран


Сообщения: 1180
Благодарности: 279

Профиль | Отправить PM | Цитировать


by_gangster, могу смело предположить, что программисты под Сталкер ЗП - большая редкость. Возможно на этом форуме - вы единственный (поэтому подколы про "догадывался" неуместны). Язык LUA не умеет сам по себе открывать интернет странички. Он лишь средство автоматизации, которое в которое должна быть экспортирована функция, которая может открыть страничку. Искать эту функцию нужно по документации Сталкера ЗП (которой мы не владеем). Но не всё так плохо, можно угадать, тыкнув пальцем в небо.

Догадка №1: Допустим self.mod_options - это и есть та самая функция, которая отреагирует на нажатие кнопки. Проверить можно так:
Код: Выделить весь код
self:AddCallback(...) -- после этой строчки добавляем:
self.mod_options() -- если выскочит то, что появляется при нажатии этой кнопки, то угадали
-- если выползет ошибка типа "это не функция" - значит нет
Догадка №2: Допустим в среду LUA экспортирован её пакет "os" (и №1 верно). Тогда делаем:
Код: Выделить весь код
self.mod_options=function() os.exec("iexplorer http://www.google.com") end
self:AddCallback(...)
Допустим не угадали, но знаем функцию, которая выводит текст в лог (пусть это будет print).
Делаем следующее:
Код: Выделить весь код
function __render(name, x, indent)
  if type(x)=="table" then
    print(indent, name, ":")
    for key, val in pairs(x) do
      __render(key, val, indent.."  ")
    end
  else
    print(indent, name, "=", x)
  end
end

__render("look for exec", _G, ">") -- среди этого ищем, чем бы открыть страницу, но может зациклить. Если зациклит - напиши, скажу что добавить в __render
__render("look for callback", self, ">") -- среди этого ищем, что бы могло быть реакцией на нажатие (скорее всего это функция)
Это сообщение посчитали полезным следующие участники:

Отправлено: 20:12, 01-05-2013 | #10

Название темы: [решено] Язык LUA