I had a block of code that basically went like this:
lua Code:
local Tables = {
[1] = CharacterTable,
[2] = GlobalTable,
}
local TableEntry = {
name = MyName
}
for k, v in ipairs(Tables) do
table.insert(v, 1, TableEntry)
end
Now, what happened was TableEntry was getting inserted twice, into both Tables, if both Tables contained the same data. So I'd end up with:
Code:
CharacterTable = {
{
["name"] = "Me",
}
{
["name"] = "Me",
}
}
GlobalTable = {
{
["name"] = "Me",
}
{
["name"] = "Me",
}
}
(If CharacterTable and GlobalTable contained a slightly different set of data before I inserted, then inserting would work fine.)
However, if I hotwire my code to this, it works fine:
lua Code:
local Tables = {
[1] = CharacterTable,
[2] = GlobalTable,
}
local TableEntry1 = {
name = MyName
}
local TableEntry2 = {
name = MyName
}
for k, v in ipairs(Tables) do
if k == 1 then
table.insert(v, 1, TableEntry1)
else
table.insert(v, 1, TableEntry2)
end
end
Am I missing something obvious?