X-Git-Url: https://git.ctpug.org.za/?a=blobdiff_plain;f=erdslangetjie%2Feditor%2Feditor.py;h=3cf3d6d9ca6de4da6adb28f52a9af7b924006d70;hb=ec61c4e13ee1495884112c543eadccae9220e8f5;hp=a8737e14f9d9017ebf469c3ccd446ccc41282a92;hpb=63175dcbda9c34613c18cc3d0828f2ddafbc4278;p=erdslangetjie.git diff --git a/erdslangetjie/editor/editor.py b/erdslangetjie/editor/editor.py index a8737e1..3cf3d6d 100644 --- a/erdslangetjie/editor/editor.py +++ b/erdslangetjie/editor/editor.py @@ -49,7 +49,7 @@ class EditorWindow(FloatLayout): self.level = level else: self.level = 'levels/' + level - self.level_obj = Level(level_data) + self.level_obj = Level(level_data, self.level) level_data.close() self.level_obj.load_tiles() @@ -76,6 +76,8 @@ class EditorWindow(FloatLayout): self.draw_save_button() def _draw_tile(self, tile_pos, tile): + if tile_pos in self.nodes: + self.remove_widget(self.nodes[tile_pos]) node = Widget(size=(TILE_SIZE, TILE_SIZE), pos=tile_pos) node.bind(on_touch_down=self.change_node) node.bind(on_touch_move=self.change_node) @@ -114,7 +116,6 @@ class EditorWindow(FloatLayout): try: self.level_obj.validate() except RuntimeError as err: - print err popup = Popup(title='Error', content=Label(text='Level not valid: %s' % err), size_hint=(.5, .5)) @@ -130,7 +131,6 @@ class EditorWindow(FloatLayout): size_hint=(.5, .5)) popup.open() - def change_tool(self, label, ref): self.tool = ref self.draw_toolbar() @@ -150,13 +150,13 @@ class EditorWindow(FloatLayout): self.level_obj.set_tile_type(tile_pos, action) for map_pos, new_tile in self.level_obj.get_changed_tiles(): node_pos = (map_pos[0] * TILE_SIZE, map_pos[1] * TILE_SIZE) - old_node = self.nodes[node_pos] - self.remove_widget(old_node) self._draw_tile(node_pos, new_tile) class EditorApp(App): + title = "Bane's Befuddlement Level Editor" + def __init__(self, level): self.level = level super(EditorApp, self).__init__()