Проблема на стороне клиента код (ЦСИ: cl_hob.lua)Использование для в парах, чтобы обновить таблицу на основе другой таблицы в Lua
net.Receive("HobNetMsg", function(len)
local Queue = {}
Queue = net.ReadTable()
for I = 1 , #Queue do
local index = Queue[I]["index"]
for Key , Value in pairs(Queue[I]) do
HBeamTable[index][Key] = Value
end
end
end)
код предполагается принять чистые сообщения от моего сервера кода на стороне hob.lua который содержит таблицу всех обновлений, которые я хочу сделать для таблицы HBeamTable на стороне клиента. то, что должен сделать вышеприведенный код, - это посмотреть на полученную таблицу, а затем на основе того, что там обновляет таблицы с соответствующими таблицами в основной таблице с новыми данными.
Новые данные не должны содержать информацию для каждого отдельного поля, но основная таблица Должен иметь полный набор данных для каждого индекса, иначе функция рендеринга прерывается.
однако выше код выдает ошибку:
/cl_hob.lua:16: attempt to index a nil value
Я не вижу каких-либо очевидных проблем с кодом выше, так что ошибка действительно сбивает с толку ...
Эта ошибка означает, что один из 'Queue [I]' или 'HBeamTable [index]' возвратил 'nil' для некоторого значения' I' или 'index'. Вы можете добавить отладку в этот цикл, чтобы узнать, какой из них. –