Я новичок в Lua, и я пытаюсь создать видеоигру с использованием LOVE2D, в которой игрок украшает пиццу, движущуюся по конвейерной ленте. После того, как игрок успешно построит пиццу, он получит новый заказ и автоматически приступит к работе над следующей пиццей.
Проблема, с которой я столкнулся, заключается в отслеживании объектов пиццы, с которыми взаимодействует игрок. Я создал таблицу для хранения пиццы, где элемент с первым индексом - это текущая пицца - та, к которой игрок может добавлять начинку. Чтобы сэкономить память, я подумал об удалении пиццы по первому индексу (table.remove (pizzas, 1)), когда она покидает экран. Однако это приводит к ошибке «попытка проиндексировать нулевое значение», что, как я предполагаю, связано с тем, что у меня есть несколько ссылок на элемент по первому индексу (например, для отслеживания позиции, пиццы [1] .x или чтобы следить за сыром, у меня есть пицца [1] .cheeseCount). Как мне этого избежать? Огромное спасибо!
table.remove
, он переупорядочивает ваш массив за вас. не нужно устанавливатьpizzas[1] = pizzas[2]
lua.org/pil/19.2.html - person Nifim   schedule 27.05.2020