1

我在电晕制作游戏。我正在寻找可以在我的代码中停止 5 秒的东西。我发现 timer.performwith delay,但它不工作,我需要一些东西来停止所有代码 5 秒。有人可以帮我吗?

我想在此转换后等待 5 秒并继续使用代码。

transition.to(block[old], {time=tranTime, x=block[new].x, y=block[new].y})
transition.to(block[new], {time=tranTime, x=block[old].x, y=block[old].y})
4

2 回答 2

2
local function yourFunction()
  print("This will get called 5seconds after block[old] transition...")
end

local function transitionFinished()
  print("Transition of block[old] is completed...")
  timer.performWithDelay(5000,yourFunction,1) --[[ If you want, you can use this 
                                                   line to call 'yourFunction' 
                                                   after desired time(here 5seconds) 
                                              --]]
end

transition.to(block[old], {time=tranTime, x=block[new].x, y=block[new].y, onComplete=transitionFinished})
transition.to(block[new], {time=tranTime, x=block[old].x, y=block[old].y})

或者,如果你想暂停所有的转换,有很多自定义类,你可以使用 DevfaR 所说的类似的东西。

或者,如果您想在延迟后执行转换,您还可以使用:

transition.to(block[old], {delay=1000,time=tranTime, x=block[new].x, y=block[new].y}) 
-- this will get called after a delay of 1000ms --

继续编码............ :)

于 2013-06-28T04:36:10.287 回答
0

没有办法在一定时间内停止代码,但您可以做的是在转换中使用 onComplete 事件。例如:

local function1 = function()
    print("This will show after the transition finishes.")
end

transition.to(block[old], {time=tranTime, x=block[new].x, y=block[new].y, onComplete=function1})
transition.to(block[new], {time=tranTime, x=block[old].x, y=block[old].y})
于 2013-06-27T19:14:36.153 回答