обнаружил пусть и очень незначительную, но странную штуку касательно циклов по элементам массива. Я обычно старался использовать для этого стандартный lua-инструмент, вида
for i, element in table do
так вот, для примера набросал код, который печатает по-порядку все элементы некой таблицы:
test_table = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13};
for i, el in test_table do
print('i = ', i, ', el = ', el)
end
консоль выдает следующее:
i = 13, el = 13
i = 1, el = 1
i = 2, el = 2
i = 3, el = 3
i = 4, el = 4
i = 5, el = 5
i = 6, el = 6
i = 7, el = 7
i = 8, el = 8
i = 9, el = 9
i = 10, el = 10
i = 11, el = 11
i = 12, el = 12
т.е. первым идет 13 элемент, а потом все по-порядку. И самое интересное - это проявляется ТОЛЬКО при размере массива 13 элементов, все что я проверял с большим или меньшим размером перебирало нормально, начиная с 1 элемента. Такая вот lua фича. Столкнулся с этим в коде, для которого порядок перебора был важен.