下面是在点击“重新启动”按钮时运行的代码。游戏重置比分,播放和间隙广告,然后回到游戏现场。
现在,它不等待间隙退出,然后改变游戏场景。
if restartButton.contains(pointOfTouch) {
score = 0
displayAd()
let sceneToMoveTo = GameScene(size: self.size)
sceneToMoveTo.scaleMode = self.scaleMode
let myTransition = SKTransition.fade(withDuration: 0.5)
self.view!.presentScene(sceneToMoveTo, transition: myTransition)
}发布于 2017-05-14 05:09:18
所以我可以做的是包括一个等待功能,这样广告就会在屏幕上显示,甚至在场景转换之前。
func delay(_ delay:Double, closure:@escaping ()->()) {
let when = DispatchTime.now() + delay
DispatchQueue.main.asyncAfter(deadline: when, execute: closure)
}然后在延迟函数中放置场景改变器,如下所示
delay(2.0) {
self.changeScene()
}2.0是以秒为单位的时间,因此这意味着代码将等待2秒,然后运行更改场景函数。当广告退出时,场景就改变了。
https://stackoverflow.com/questions/43948649
复制相似问题