如何在Corona SDK中检查函数是否正在进行

如何检查函数是否正在进行中?如果它没有在运行,我希望它重复执行。

  local function move(event)
    ball.x = 100
     ball.y = 200
  transition.to(ball, {x=0, y=600, time = 5000})
  end

local function check(event)
  if( --另一个函数正在进行中)then
    --做某事
  end
end

ball:addEventListener("touch", move)
点赞
用户1208078
用户1208078

我没有用过 corona,但这是一个常见的 JavaScript 习语,通常也是你在那里完成它的方式:

local currentlyMoving = false

local function move(event)
    ball.x = 100
    ball.y = 200
    currentlyMoving = true
    transition.to(
        ball,
        {
            x=0,
            y=600,
            time = 5000,
            onComplete = function(obj)
                currentlyMoving = false
            end
        })
end

local function check(event)
  if (not currentlyMoving) then
    --do something
  end
end

ball:addEventListener("touch", move)

您可以在此处找到有关 onComplete 方法的更多详细信息。

2017-07-03 16:37:03