diff gamelib/engine.py @ 469:e0b11d684ee8

Reference gameboard.level rather than game.level where appropriate. Saving and restoring games appears to largely work now (even if the level of the restored game is different to the current one).
author Simon Cross <hodgestar@gmail.com>
date Tue, 24 Nov 2009 22:19:53 +0000
parents 2b4cd86dfcaf
children 393e30ea0165
line wrap: on
line diff
--- a/gamelib/engine.py	Tue Nov 24 21:20:38 2009 +0000
+++ b/gamelib/engine.py	Tue Nov 24 22:19:53 2009 +0000
@@ -61,8 +61,9 @@
 
     def create_game_over(self):
         """Create and open the Game Over window"""
+        level = self.gameboard.level
         game_over = gameover.create_game_over(self.gameboard,
-                self.scoreboard[self.level.level_name], self.level)
+                self.scoreboard[level.level_name], level)
         self.gameboard = None
         self.open_window(game_over)
 
@@ -233,7 +234,7 @@
             self.dialog=None
             return
         if events_equal(e, START_DAY):
-            if self.game.level.is_game_over(self.game.gameboard):
+            if self.game.gameboard.level.is_game_over(self.game.gameboard):
                 return GameOver(self.game)
             return DayState(self.game)
         elif (e.type is KEYDOWN and e.key == K_d) or \