Add (ugly) countdown timer to tile.
[naja.git] / naja / __main__.py
index a4f4aa3204b90ca06b21cfe7af6aca09f4a13ae1..5b76b2d1e6aff75e73e39f1c05c38f9e99c2c62f 100644 (file)
@@ -1,14 +1,46 @@
 import sys
 
 import pygame
+import pygame.locals as pgl
 
-from naja.options import parse_args
+from naja.constants import SCREEN
+from naja.engine import Engine
+from naja.sound import sound
+from naja.options import parse_args, options
+from naja.resources.loader import Loader
+from naja.scenes.menu import MenuScene
+from naja.utils import warp_to_game_state
 
 
 def main():
-    '''Launch the nagslang'''
+    '''Launch the naja'''
     parse_args(sys.argv)
     pygame.display.init()
     pygame.font.init()
 
-    raise NotImplementedError("Sorry, we haven't written a game yet.")
+    # set_icon needs to be called before set_mode on some platforms, but we
+    # can't use convert_alpha until we've created a window with set_mode
+    r = Loader('data')
+    r.CONVERT_ALPHA = False
+    icon_filename = 'robot_24.png'
+    # OSX accepts big icons, but scales up small icons smoothly
+    if sys.platform == 'darwin':
+        icon_filename = 'robot_512.png'
+    pygame.display.set_icon(r.get_image(icon_filename, basedir='icons'))
+
+    pygame.display.set_mode(SCREEN, pgl.SWSURFACE)
+    pygame.display.set_caption('Robolock II')
+    sound.init()
+
+    screen = pygame.display.get_surface()
+    scene = MenuScene(None)
+    engine = Engine(screen, scene, None)
+
+    if options.game_state is not None:
+        warp_to_game_state(options.game_state)
+
+    engine.run()
+
+
+if __name__ == '__main__':
+    main()