Hook up some stuff to the settings options
[erdslangetjie.git] / erdslangetjie / __main__.py
index 93b39f531918045ee60bc0e75a2d3ba8386d0ab0..dd96a96be8e6d983319d46de1662234e77aa0460 100644 (file)
@@ -343,8 +343,40 @@ class GameApp(App):
         self.levels = LevelList()
         self.game = None
 
+    def build_config(self, config):
+        config.setdefaults('bane', {
+            'start_level': 'levels/level1.txt',
+            'sound': 'True'
+            })
+
+    def build_settings(self, settings):
+        config_json = """[
+            { "type": "title",
+              "title": "Bane's Befuddlement"
+            },
+
+            { "type": "options",
+              "title": "Start Level",
+              "desc": "Level to start at",
+              "section": "bane",
+              "key": "start_level",
+              "options": ["%s"] },
+
+            { "type": "bool",
+              "title": "Sound",
+              "desc": "Enable sound",
+              "section": "bane",
+              "key": "sound"
+             }
+             ]""" % '", "'.join(self.levels.get_level_names())
+        settings.add_json_panel("Bane's Befuddlement",
+                self.config, data=config_json)
+
     def build(self):
         root = ScrollView(size_hint=(None, None))
+        level_name = self.config.getdefault('bane', 'start_level', None)
+        if level_name:
+            self.levels.set_level_to(level_name)
         return root
 
     def on_start(self):