А если передавать функцию, которая уже вернет метатаблицу, вот пример
Имеем 2 ресурса, главный main и побочный test из main экспортируем.
-- main.lua
addEventHandler("onResourceStart" , getRootElement(),
function()
local resource = getResourceFromName('test')
startResource(resource)
end
)
function func()
local Obj = {
getString = function()
local var = "Hello World"
return var
end,
}
return Obj
end
-- test.lua
addEventHandler("onPlayerJoin" , getRootElement(),
function()
local Obj = exports.main:func()
local var = Obj.getString()
outputChatBox(var)
end
)
Данный пример у меня не работает(кто бы сомнивался, ведь ты так и сказал) но может я просто не правильно делаю, ведь по сути я просто функцию вызываю, которая передает метатаблицу. Если например вызвать функцию передающую строку, то все работает
P.S. Поверхносный гугл показал, что я передаю вообще просто таблицу, их получается тоже нельзя передавать http://habrahabr.ru/post/228001/
P.P.S. Попробывал передать просто таблицу, все получилось. В ней значением ключа была не функция, строка. Какой то сыр бор в голове))