瀏覽代碼

Fix Redundant Navigation Polygons

When adjusting the vertices of a navigation polygon, the tile editor would create a duplicate navigation polygon.  So each time you made an adjustment, another copy of the polygon would be created.

(cherry picked from commit 6c83550dfca4e38a6bb87bf12ff950ca3ab8f285)
Emmanuel Barroga 6 年之前
父節點
當前提交
53b44aacad
共有 1 個文件被更改,包括 2 次插入0 次删除
  1. 2 0
      editor/plugins/tile_set_editor_plugin.cpp

+ 2 - 0
editor/plugins/tile_set_editor_plugin.cpp

@@ -1450,6 +1450,8 @@ void TileSetEditor::_on_workspace_input(const Ref<InputEvent> &p_ie) {
 										undo_redo->create_action(TTR("Edit Navigation Polygon"));
 										undo_redo->add_do_method(edited_navigation_shape.ptr(), "set_vertices", polygon);
 										undo_redo->add_undo_method(edited_navigation_shape.ptr(), "set_vertices", edited_navigation_shape->get_vertices());
+										undo_redo->add_do_method(edited_navigation_shape.ptr(), "clear_polygons");
+										undo_redo->add_undo_method(edited_navigation_shape.ptr(), "clear_polygons");
 										undo_redo->add_do_method(edited_navigation_shape.ptr(), "add_polygon", indices);
 										undo_redo->add_undo_method(edited_navigation_shape.ptr(), "add_polygon", edited_navigation_shape->get_polygon(0));
 										undo_redo->add_do_method(this, "_select_edited_shape_coord");