diff skaapsteker/gamestate.py @ 632:0675f390653c

Initial port to Python 3 and Pygame 2.
author Simon Cross <hodgestar@gmail.com>
date Fri, 20 Jan 2023 20:01:06 +0100
parents a91b2e4400a5
children
line wrap: on
line diff
--- a/skaapsteker/gamestate.py	Tue Mar 17 22:40:45 2020 +0200
+++ b/skaapsteker/gamestate.py	Fri Jan 20 20:01:06 2023 +0100
@@ -30,7 +30,7 @@
         self._data[key] = value
 
     def __iter__(self):
-        return self._data.iterkeys()
+        return self._data.keys()
 
     def __contains__(self, key):
         return key in self._data
@@ -55,7 +55,7 @@
         if game_file is None:
             game_file = self._game_file
         raw_data = open(game_file, "rb").read()
-        self.data = json.loads(raw_data, encoding='utf-8')
+        self.data = json.loads(raw_data)
         self.world = StateProxy(self.data, self)
 
     def new_game(self):
@@ -80,13 +80,14 @@
         if not os.path.exists(save_dir):
             try:
                 os.makedirs(save_dir)
-            except:
-                print "Cannot create save game directory."
+            except Exception:
+                print("Cannot create save game directory.")
                 return
         try:
-            json.dump(self.data, open(self._game_file, "wb"), indent=4)
-        except:
-            print "Cannot create save game file."
+            with open(self._game_file, "w") as f:
+                json.dump(self.data, f, indent=4)
+        except Exception:
+            print("Cannot create save game file.")
 
     def create_sprites(self, level):
         sprites = []