[英]Restart skaction sequence
在我的游戲中,我有一個動作序列,在該序列中,我先使用waitForDuration,然后再進行其他操作。 問題是,當用戶迷路時,我需要使用waitForDuration從頭開始重新啟動序列。 有誰知道重置didMoveToView內部序列的方法嗎?
override func didMoveToView(view: SKView) {
var wait = SKAction.waitForDuration(15)
let secondAction = SKAction.sequence([wait, SKAction.runBlock({() in self.addSecond(0.8)})])
self.runAction(secondAction, completion: {println("second done")})
}
func addSecond(waitDuration: NSTimeInterval) {
var move = SKAction.runBlock({() in self.createTargets()})
var wait = SKAction.waitForDuration(waitDuration)
var moveAndWait = SKAction.repeatActionForever(SKAction.sequence([move, wait]))
self.runAction(moveAndWait, withKey: "movingAction2")
}
通過調用以下命令從對象中刪除所有操作:
[object removeAllActions]
然后再次開始動畫。 理想情況下,您可以將動畫存儲在屬性中,並在需要時運行它,而不必每次都重新生成它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.