diff skaapsteker/engine.py @ 447:4bec05fed6c7

Load and save.
author Jeremy Thurgood <firxen@gmail.com>
date Sat, 09 Apr 2011 20:03:18 +0200
parents 87246b84a851
children 95527fd29872
line wrap: on
line diff
--- a/skaapsteker/engine.py	Sat Apr 09 19:58:06 2011 +0200
+++ b/skaapsteker/engine.py	Sat Apr 09 20:03:18 2011 +0200
@@ -1,10 +1,14 @@
 """Top-level engine for switching scenes."""
 
+import os
+
 import pygame.display
 import pygame.time
 import pygame.event
 from pygame.locals import QUIT, USEREVENT
 
+from . import options
+
 
 class Engine(object):
 
@@ -15,10 +19,15 @@
         self._current_scene = None
         self._fpss = [self._framerate] * 100
         self._cur_frame = 0
-        self.game_state = GameState("game.json")
+        self.game_state = GameState(os.path.join(options['save_location'], 'savegame.json'))
+        if self.game_state.can_resume():
+            self.game_state.load_game()
+        else:
+            self.game_state.new_game()
         self.soundsystem = soundsystem
 
     def change_scene(self, next_scene):
+        self.game_state.save_game()
         self.soundsystem.stop_music()
         if self._current_scene is not None:
             self._current_scene.leave()