'Fix' crash bug on android
[erdslangetjie.git] / erdslangetjie / __main__.py
index dd96a96be8e6d983319d46de1662234e77aa0460..885885ae7dfc4ba5e3eb78bbf03ae506b5ee17fe 100644 (file)
@@ -12,7 +12,7 @@ from kivy.clock import Clock
 from kivy.config import Config
 
 from erdslangetjie.level import LevelList
-from erdslangetjie.data import load_image
+from erdslangetjie.data import load_image, load_sound
 from erdslangetjie.player import ThePlayer, Nemesis
 
 
@@ -42,8 +42,10 @@ class GameWindow(RelativeLayout):
 
         self.mouse_move = False
 
+        self.caught = load_sound('sounds/caught.ogg')
+
         self.player = ThePlayer()
-        self.nemesis = Nemesis()
+        self.nemesis = Nemesis(self.app.config)
         if not self.level_obj.enter_pos:
             raise RuntimeError('No entry point')
         self.player_tile = None
@@ -160,7 +162,8 @@ class GameWindow(RelativeLayout):
         self.add_widget(self.nemesis_tile)
 
     def _closed(self):
-        self.keyboard.unbind(on_key_down=self._on_key_down)
+        if platform() != 'android':
+            self.keyboard.unbind(on_key_down=self._on_key_down)
 
     def _on_key_down(self, keyboard, keycode, text, modifiers):
         direction = None
@@ -248,6 +251,8 @@ class GameWindow(RelativeLayout):
             return
         elif self.check_caught():
             # Caught
+            if self.app.config.getdefault('bane', 'sound', '0') != '0':
+                self.caught.play()
             self.reset_level()
             app = self.app
             self.app = None