Love2D如何使用字符串添加纹理

时间:2019-06-10 01:38:04

标签: lua love2d

这不是最好的标题,但是我不知道该如何总结问题。我试图“导出”纹理,使其类似于“污垢”之类的东西,然后一旦输入,它将被添加到屏幕上。我已经有了那里的纹理,我需要知道如何使用字符串来添加纹理。我希望这不会太难阅读和理解。

1 个答案:

答案 0 :(得分:1)

“导出”的含义有点令人困惑。以下代码段将可重用的纹理图像存储在textures中,并将要绘制的纹理存储在onScreen中。请注意,我们将textures表用作键值字典,而将onScreen表用作有序列表。

function love.load()
    textures = {} -- creates a table to store textures
    textures['dirt'] = love.graphics.newImage('dirt.png') -- adds the 'dirt' texture, with a dictionary-like key

    onScreen = {} -- creates a table to store what's drawn on screen
    onScreen[#onScreen + 1] = {'dirt', 0, 0} -- appends the 'dirt' name and coords for drawing to the list of textures being drawn
end

function love.draw()
    for ind, val in pairs(onScreen) do -- for all textures onScreen
        love.graphics.draw(textures[val[1]], val[2], val[3]) -- get the image for the texture name and draw at coords
    end
end