所以我想要做的是将过滤器应用于对象,然后过一段时间将其删除,而我所做的就是:
local function _filter(n)
local function reset_filter(n)
_zombieTable[n].fill.effect = ""
end
_zombieTable[n].fill.effect = "filter.crystallize"
transition.to( _zombieTable[n].fill.effect , {time = 200,numTiles = 100} )
timer.performWithDelay( 300, reset_filter(n),1 )
end
问题在于,只有在我之后不删除过滤器时,它才会应用,我不理解,因为我在300毫秒后删除了它,因此它应该应用然后消失。我还尝试了transition.to的“ onComplete”属性,但其作用相同。
答案 0 :(得分:0)
这是问题所在:timer.performWithDelay( 300, reset_filter(n),1 )
reset_filter(n)
被立即调用,而不是经过300次延迟!
它应该是:timer.performWithDelay(300, function() reset_filter(n) end, 1)