Lua Gideros:使用触摸绘制直线

在使用 Lua 和 Gideros Studio 编写的游戏中,我希望玩家能够通过触摸绘制一条直线,使线段的开始点在他们触摸屏幕的地方,结束点则在他们松开手指的地方。当我运行下面的代码时,总是出现以下消息:

main.lua:66: attempt to index global 'event' (a nil value) stack traceback: main.lua:66: in main chunk

以下是我的代码:

local function onMouseDown(event)
    event.x = startx
    event.y = starty

    event:stopPropagation()
end

local function onMouseUp(event)
    event.x = endx
    event.y = endy
    event:stopPropagation()
    local line = Shape.new()
    line:setLineStyle(5, 0x0000ff, 1)
    line:beginPath()
    line:moveTo(startx,starty)
    line:lineTo(endx,endy)
    line:endPath()

end

下面这一行是我的代码中的第 66 行:

scene:addEventListener(event.MOUSE_DOWN, onMouseDown)
scene:addEventListener(event.MOUSE_UP, onMouseUp)

有人知道这是为什么吗?谢谢!

点赞
用户869951
用户869951

这是因为 Event.MOUSE_DOWN 是大小写敏感的 Lua 变量。

2014-09-29 01:15:39