2015-12-25 87 views
1

我的雪碧套件遊戲有問題反應橫幅通知。當用戶獲得提醒通知時,由於applicationWillResignActive,遊戲按預期暫停,因此不會使用橫幅通知進行調用。當有通知時,遊戲中的投射物直接穿過牆壁,而不是在與(粗)牆接觸後從其父母移除。iOS Swift - 如何回覆橫幅通知?

我搜索了,但我找不到任何功能,我可以用來暫停遊戲,當用戶得到橫幅通知。任何人都知道我可以使用的功能?

回答

3

您有2個選項基本上

暫停的SKView在你的ViewController

self.view?.paused = true 

這裏的問題是,它會暫停所有這使得它有點棘手之後添加pauseMenus或其他節點。

更好的方法是創建一個worldNode(全球)

let worldNode = SKNode() 

其添加到現場

addChild(worldNode) 

不是添加所有你的精靈,你需要停下來,該節點

worldNode.addChild(yourSprite) 

並最終當你想暫停遊戲時你打電話

worldNode.paused = true 
self.physicsWorld.speed = 0 // call this as well when paused and reset to 1 when resuming 

這樣,您仍然可以在遊戲暫停時添加pauseMenu節點/精靈,標籤等。

要做到這一點時收到通知,我相信你需要使用一個應用程序委託的委託方法,比如這一個

application:didReceiveLocalNotification 

你可以在這裏閱讀更多

https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIApplicationDelegate_Protocol/index.html#//apple_ref/occ/intfm/UIApplicationDelegate/application:didReceiveLocalNotification

+0

我知道,當我收到警報通知時,我已經暫停了遊戲。當我收到** banner **通知時,我想暫停遊戲。 – Deeyennay

+0

哈哈,對不起,我會更新我的答案 – crashoverride777

+0

謝謝。我嘗試過'應用程序:didReceiveLocalNotification',但它沒有與一個橫幅=/ – Deeyennay