Я пытаюсь сделать: function objects:add(namespace, x, y, w, h, mode, density, r)
затем создайте новую таблицу. objects.namespace = {}
затем возвращает таблицу: return objects.namespace
, но я хочу, чтобы «пространство имен» на самом деле быть определены в функции ... как бы я идти о выполнении этого? и когда я пытаюсь вызвать что-то внутри таблицы IE: print(objects.newBox.x)
это дает мне «NIL»Как добавить таблицы внутри функции в Lua
Даже если я стараюсь:
function test(name)
print(name)
[name] = {"yo"}
end
test(doit)
Это дает мне ошибку: «попытка индексировать ноль значение ' я должен делать что-то не так ...
table = {}
function table:add(name, x, y)
table.[name] = {}
table.[name].x = x
table.[name].y = y
return table.[name]
end
table:add(box1, 300, 100)
print("table.box1.x: " ..table.box1.x)
print("table.box1.y: " ..table.box1.y)
-- [name] is to be defined in the function arg.
-- then i want to return the table and use it's contents for other uses I.E line 10 and 11
-- gets the following error: '<name>' expected near '['
'объектов [имена] = {}' –
Всякий раз, когда я пытаюсь '\t объектов [пространство имен] = {} \t объектов [пространство имен]. x = x' i получает ошибку: «index index is nil» в строке «objects [namespace] = {}» – MTadder
Как вы называете 'objects: add'? – lhf