Skip to content
Snippets Groups Projects
Commit a604ef4f authored by lukasWoyke's avatar lukasWoyke
Browse files

Fix end up in spinning views during set up process.

parent f4c03640
No related branches found
No related tags found
2 merge requests!62Fix master,!60Code cleanup lukas fix
...@@ -59,19 +59,19 @@ class LocalTeamPlayManager: NSObject, MCNearbyServiceAdvertiserDelegate, MCBrows ...@@ -59,19 +59,19 @@ class LocalTeamPlayManager: NSObject, MCNearbyServiceAdvertiserDelegate, MCBrows
let action = try decoder.decode(SessionAction.self, from: data) let action = try decoder.decode(SessionAction.self, from: data)
switch action { switch action {
case .setup(.selectedLevel(let level)): case .setup(.selectedLevel(let level)):
NotificationCenter.default.post(name: .levelSelectedFromHost, object: nil, userInfo: ["level": level]) DispatchQueue.main.async{ NotificationCenter.default.post(name: .levelSelectedFromHost, object: nil, userInfo: ["level": level]) }
case .setup(.responseForLevelSetting( _)): case .setup(.responseForLevelSetting( _)):
self.delegate?.receivedLevelConfirmation(for: peerID) DispatchQueue.main.async{ self.delegate?.receivedLevelConfirmation(for: peerID) }
case .setup(.syncCharacterIndexForGameScene(let playersInfo)): case .setup(.syncCharacterIndexForGameScene(let playersInfo)):
self.delegate?.syncCharacterIndexForGameScene(playersInfo: playersInfo) DispatchQueue.main.async{ self.delegate?.syncCharacterIndexForGameScene(playersInfo: playersInfo) }
case .setup(.responseForCharacterInfoSyncDone(let done)): case .setup(.responseForCharacterInfoSyncDone(let done)):
self.delegate?.playerSyncDoneReceived(for: peerID, isDone: done) DispatchQueue.main.async{ self.delegate?.playerSyncDoneReceived(for: peerID, isDone: done) }
case .setup(.startGame(let start)): case .setup(.startGame(let start)):
NotificationCenter.default.post(name: .startGame, object: nil, userInfo: ["playerInfoSync": start]) DispatchQueue.main.async{ NotificationCenter.default.post(name: .startGame, object: nil, userInfo: ["playerInfoSync": start]) }
case .setup(.gameOver(_)): case .setup(.gameOver(_)):
NotificationCenter.default.post(name: .gameResultReceived, object: nil, userInfo: ["result": "fail"]) NotificationCenter.default.post(name: .gameResultReceived, object: nil, userInfo: ["result": "fail"])
case .setup(.gameSceneLoaded(let isReady)): case .setup(.gameSceneLoaded(let isReady)):
self.delegate?.playersGameSceneLoadStateReceived(for: peerID, isReady: isReady) DispatchQueue.main.async{ self.delegate?.playersGameSceneLoadStateReceived(for: peerID, isReady: isReady)}
case .setup(.gameSuccess(_)): case .setup(.gameSuccess(_)):
NotificationCenter.default.post(name: .gameResultReceived, object: nil, userInfo: ["result": "success"]) NotificationCenter.default.post(name: .gameResultReceived, object: nil, userInfo: ["result": "success"])
case .gamePhysics(let characterActionData): case .gamePhysics(let characterActionData):
...@@ -79,12 +79,16 @@ class LocalTeamPlayManager: NSObject, MCNearbyServiceAdvertiserDelegate, MCBrows ...@@ -79,12 +79,16 @@ class LocalTeamPlayManager: NSObject, MCNearbyServiceAdvertiserDelegate, MCBrows
case .syncAllCharacters(let syncData): case .syncAllCharacters(let syncData):
delegate?.allChracterActionsReceived(charactersActions: syncData.data) delegate?.allChracterActionsReceived(charactersActions: syncData.data)
case .setup(.clientsConfiguration(let config)): case .setup(.clientsConfiguration(let config)):
let index = allPlayersPeerIDs!.firstIndex(of: peerID)! DispatchQueue.main.async{
let index = self.allPlayersPeerIDs!.firstIndex(of: peerID)!
CharacterManager.sharedInstance.addNewConfigurationServer(config: config, for: peerID, for: index) CharacterManager.sharedInstance.addNewConfigurationServer(config: config, for: peerID, for: index)
delegate?.receivedNewCustomization(config: config, for: peerID) self.delegate?.receivedNewCustomization(config: config, for: peerID)
}
case .setup(.dismissedInvitation(let value)): case .setup(.dismissedInvitation(let value)):
DispatchQueue.main.async {
NotificationCenter.default.post(name: .dimissedInvitationBrowserClient , object: nil, userInfo: ["value": value]) NotificationCenter.default.post(name: .dimissedInvitationBrowserClient , object: nil, userInfo: ["value": value])
} }
}
} catch { } catch {
debugPrint("receive - decoding error: \(error)") debugPrint("receive - decoding error: \(error)")
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment