Ваш вопрос относится к порядку кодов. function
по существу устанавливает значение для данного символа. Из руководства Lua :
Заявление
function f () body end
переводится как
f = function () body end
Таким образом, listener
равен nil
в то время, когда вы передаете его addEventListener
. Измените порядок, и он должен работать:
function onCollision( event )
--code--
end
local function listener( event )
timer.performWithDelay(1000, onCollision )
end
Runtime:addEventListener( "collision", listener )