The first steps towards enemy generators
[koperkapel.git] / koperkapel / gamelib / level.py
index a8fe447494f64a6c7e3e5b04f046696f3cb90036..8b275b1911f2c1f9d0ab012d355c1ecae4824d56 100644 (file)
@@ -14,6 +14,10 @@ class Level(object):
         self.grates = []
         self.tileset = None
         self.start_pos = (0, 0)
+        self.exit = None
+        self.enemies = []
+        self.enemy_generators = []
+        self.friends = []
 
     def get_neighbors(self, x, y):
         # 4 -connected neighbors
@@ -59,3 +63,22 @@ class Level(object):
         for keypad in self.keypads:
             if (x, y) == keypad.game_pos:
                 keypad.activate(roaches)
+
+    def get_friends(self):
+        return self._friends[:]
+
+    def is_on_friend(self, x, y):
+        return (x, y) in [x.game_pos for x in self.friends]
+
+    def remove_friend(self, x, y):
+        for friend in self.friends[:]:
+            if friend.game_pos == (x, y):
+                self.friends.remove(friend)
+                return friend
+        return None
+
+    def is_exit(self, x, y):
+        return self.exit and (x, y) == tuple(self.exit["pos"])
+
+    def get_exit_level(self):
+        return self.exit["next level"]