             }
             
             for achievement in achievements {
-                if let id = achievement.identifier {
-                    self.achievements[id] = achievement
-                }
+                self.achievements[achievement.identifier] = achievement
             }
             
             completion?()

        }
        
        switch state {
        case .stateConnected where !matchStarted && theMatch.expectedPlayerCount == 0:
            lookupPlayers()
        case .stateDisconnected:
            matchStarted = false
            delegate?.matchEnded()
            match = nil

    public func authenticateLocalUser() {
        print("Authenticating local user...")
        
        if GKLocalPlayer.local.isAuthenticated == false {
            GKLocalPlayer.local.authenticateHandler = { (view, error) in
                guard error == nil else {
                    print("Authentication error: \(String(describing: error?.localizedDescription))")
                    return
