我正在尝试用 Lua 制作一款类似于 Candy Crush 的游戏。这是代码:
local images = {
"images/beer.png",
"images/beef.png",
"images/canned_food.png",
"images/cup_ice_cream.png",
"images/french_fries.png",
"images/pepper.png"
}
local rowcount = 8
local colcount = 4
local blockWidth = display.contentWidth / (colcount*4)
local blockHeight = display.contentWidth / (rowcount*2)
local row
local col
local pan = 3
for row = 1, rowcount do
for col = 1, colcount do
local x = (col - 1) * blockWidth + pan
local y = (row + 1) * blockHeight + pan
local block = display.newImage(images[math.random(1, 6)], x, y)
block:addEventListener("touch", blockTouch)
end
end
我需要知道哪个图像在移动,以知道他们是否在新位置上将 3 个图像排成一行。
所以我的问题是,我怎样才能有一个 id 或标识符来知道用户正在表中移动哪个图像?
感谢您的帮助
最佳答案
您必须将 ID 放入您创建的每个对象中,例如:
local function getID(event)
t = event.target
print(t.id)
end
local beef = display.newImage("images/beef.png",)
beef.id = "beef"
local canned_food= display.newImage("images/canned_foods.png",)
canned_food.id = "cannedfoods"
local fries = display.newImage("images/fench_fries.png",)
fries.id = "fries"
beef:addEventListener("tap", getID())
canned_food:addEventListener("tap", getID())
fries:addEventLister("tap", getID())
希望这有帮助:)
关于lua - 在 Lua 中为图像提供 ID(Corona SDK),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16951958/