Editor now changes the map
[erdslangetjie.git] / erdslangetjie / level.py
index 8efc539e13a08d6b6ab7cafab4bd7fc1715f5197..73878aa927bf438439d6b6c08d06dabf2b021a25 100644 (file)
@@ -93,17 +93,24 @@ class Level(object):
         return self._data[pos[1]][pos[0]]
 
     def set_tile_type(self, pos, new_type):
+        print '\n'.join([''.join(x) for x in self._data])
         self._data[pos[1]][pos[0]] = new_type
-        new_tile = self._get_tile_image(new_type, pos)
+        print
+        print '\n'.join([''.join(x) for x in self._data])
+        print pos, self._in_limits(pos)
+        new_tile = self._get_tile_image(pos, new_type)
         self._tiles[pos[1]][pos[0]] = new_tile
         self._changed.append((pos, new_tile))
         # Also update neighbourhood for wall types, etc.
         for new_pos in [(pos[0] - 1, pos[1]), (pos[0] + 1, pos[1]),
-                (pos[0], pos[1] - 1), (pos[0], pos[1] + 1)]:
+                (pos[0] - 1, pos[1] - 1), (pos[0] + 1, pos[1] + 1),
+                (pos[0], pos[1] - 1), (pos[0], pos[1] + 1),
+                (pos[0] - 1, pos[1] + 1), (pos[0] + 1, pos[1] - 1)]:
             if not self._in_limits(new_pos):
                 continue
             tile = self._data[new_pos[1]][new_pos[0]]
-            new_tile = self._get_tile_image(tile, pos)
+            print new_pos, tile
+            new_tile = self._get_tile_image(new_pos, tile)
             self._tiles[new_pos[1]][new_pos[0]] = new_tile
             self._changed.append((new_pos, new_tile))
 
@@ -174,6 +181,7 @@ class Level(object):
             self._data[pos[1]][pos[0]]
         except IndexError:
             return False
+        print pos, self._data[pos[1]][pos[0]]
         return True
 
     def blocked(self, pos):