我正在尝试制作一款游戏,类似于Simon Says。我目前正在使用电晕sdk,如果你能帮助我,我将非常感激! 我已经用图像定义了我的box1变量。我试图这样做,当我点击框的图像,另一盒不同的颜色显示在它上面。我想它,所以当我放开鼠标时,出现的盒子就消失了。以下是我的代码的一部分:
local function lightbox(event)
if event.phase == "began" then
local clickedbox1 = display.newImage("clickedbox.png")
clickedbox1.x = display.contentWidth/5
clickedbox1.y = display.contentWidth/2
end
if event.phase == "ended" then
clickedbox1: removeself()
clickedbox1 = nil
end
end
-->Add the listener to our boxes
box1:addEventListener("touch", lightbox)
谢谢你的时间!
答案 0 :(得分:1)
您可以在触摸功能中使用 event.target.x ,以便弹出框将显示在触摸的图像上方。
注意:更改为图片资源提供的图片资源
local popupImage
local onTouchListener = function(event)
if (event.phase == "began" ) then
popupImage = display.newImageRect("images/btn_cancel_reset.png", 55,18)
popupImage.x = event.target.x
popupImage.y = event.target.y
elseif(event.phase == "ended" or event.phase == "moved") then
--ADD EVENT.PHASE == "MOVED" SINCE THE IMAGE WILL NOT BE REMOVED
--WHEN YOU TOUCH AND DRAG YOUR MOUSE. YOU CAN REMOVE IT IF YOU WANT
if (popupImage ~= nil) then
popupImage:removeSelf()
popupImage = nil
end
end
end
local btnclick = display.newImageRect("images/btn_buy_more_error.png", 126,18)
btnclick.x = display.contentWidth/2
btnclick.y = display.contentHeight/2
btnclick:addEventListener( "touch", onTouchListener)