diff GeoQuiz/Controllers/CountryGameController.swift @ 30:eb23effeede7

add DatasetView
author Dennis C. M. <dennis@denniscm.com>
date Thu, 10 Nov 2022 11:51:52 +0100
parents f5a2c2dab208
children 6d574bd1644f
line wrap: on
line diff
--- a/GeoQuiz/Controllers/CountryGameController.swift	Thu Nov 10 10:27:28 2022 +0100
+++ b/GeoQuiz/Controllers/CountryGameController.swift	Thu Nov 10 11:51:52 2022 +0100
@@ -45,7 +45,14 @@
     
     init() {
         let data: CountryModel = Bundle.main.decode("countries.json")
-        self.data = data.countries
+        let shuffledCountries = data.countries.shuffled().prefix(100)
+        
+        var countries = [String: T]()
+        for shuffledCountry in shuffledCountries {
+            countries[shuffledCountry.key] = shuffledCountry.value
+        }
+        
+        self.data = countries
         
         let user = UserController()
         userLives = user.data.numberOfLives
@@ -80,9 +87,8 @@
         let randomCountryKeys = data.keys.shuffled()
         
         let correctCountryKey = randomCountryKeys.first(where: {
-            !userChoices.keys.contains($0) &&
-            !dataAsked.keys.contains($0)
-            
+            !userChoices.keys.contains($0) &&   // Avoid duplicated countries
+            !dataAsked.keys.contains($0)        // Avoid countries already asked
         })
         
         // Unwrap correct answer