Луа Гидерос: Линия с прикосновением 2
В моей игре, использующей Lua и Gideros studio, я хочу, чтобы кто-то рисовал прямую линию от мыши до мыши вверх. Вот мой код, который не работает:
local function onMouseDown(event)
startx = event.x
starty = event.y
event:stopPropagation()
end
local function onMouseUp(event)
endx = event.x
endy = event.y
local line = Shape.new()
line:setLineStyle(5, 0x0000ff, 1)
line:beginPath()
line:moveTo(startx,starty)
line:lineTo(endx,endy)
line:endPath()
event:stopPropagation()
end
place:addEventListener(Event.MOUSE_DOWN, onMouseDown)
place:addEventListener(Event.MOUSE_UP, onMouseUp)
Кто-нибудь знает, почему это не работает? Спасибо!
Это часть 2 моего другого вопроса.
1 ответ
Решение
Если вы не работаете, вы имеете в виду, что ничего не происходит и ничего не рисуется на экране, то это потому, что вы не добавили свою фигуру на сцену
Должно быть так:
local line = Shape.new()
line:setLineStyle(5, 0x0000ff, 1)
--can add to stage or maybe place,
--if that's what you are using for scene
stage:addChild(line)
local function onMouseDown(event)
startx = event.x
starty = event.y
event:stopPropagation()
end
local function onMouseUp(event)
line:beginPath()
line:moveTo(startx,starty)
line:lineTo(event.x,event.y)
line:endPath()
event:stopPropagation()
end
place:addEventListener(Event.MOUSE_DOWN, onMouseDown)
place:addEventListener(Event.MOUSE_UP, onMouseUp)