2017-01-10 18 views
1

При попытке распаковать эту таблицу, чтобы позвонить на изображение, программа возвращает ошибку «неверный аргумент для распаковки (таблица ожидается получил пользовательские данные)»love2D ошибка: распаковывать ожидаемый стол был UserData

textures = {love.graphics.newImage("image.png"), 
     love.graphics.newImage("image.png"), 
     love.graphics.newImage("image.png"), 
     love.graphics.newImage("image.png"), 
     } 

Это таблица Я использую

drawScreenLineTexture[x] = {unpack(textures[map[mapX][mapY]])} 
if side == 1 then 
    drawScreenLineTexture[x][1] = drawScreenLineTexture[x][1]/2 
    drawScreenLineTexture[x][2] = drawScreenLineTexture[x][2]/2 
    drawScreenLineTexture[x][3] = drawScreenLineTexture[x][3]/2 
end 

Здесь я пытаюсь распаковать таблицу

+0

'love.graphics.newImage()' возвращает пользовательские данные. Почему вы ожидаете, что загруженное изображение станет таблицей? –

ответ

2

Если вы хотите распаковать текстуры таблицы:

textures = {love.graphics.newImage("image.png"), 
     love.graphics.newImage("image.png"), 
     love.graphics.newImage("image.png"), 
     love.graphics.newImage("image.png"), 
     } 

вы должны написать unpack(textures), не unpack(textures[map[mapX][mapY]), как textures[map[mapX][mapY], очевидно, не таблица textures, но одна из его вспомогательных элементов, которые happes к типу UserData.