Как я могу отложить или приостановить функцию в короне Анскы? (LUA) - PullRequest
3 голосов
/ 21 августа 2011

Я не могу найти это нигде в документации: /

(вопрос к названию)

найдено это , но не могу заставить его работать.

function onCollision( event )
   --code-- 
end

Runtime:addEventListener( "collision", listener )

 local function listener( event )
     timer.performWithDelay(
1000, onCollision )
end

1 Ответ

3 голосов
/ 21 августа 2011

Ваш вопрос относится к порядку кодов. 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 )
...