diff options
author | Niels Drost <codingdutchman@gmail.com> | 2023-02-27 11:39:30 +0100 |
---|---|---|
committer | Niels Drost <codingdutchman@gmail.com> | 2023-02-28 22:30:46 +0100 |
commit | 66374c8dcee3eab1e0878e892be32cd257b43a5b (patch) | |
tree | b73472a265ba4fa130cd14a8ed80f238c340ef0b /editor | |
parent | 15a97a2e8462ff76fe2eb44094f61320065b7dc8 (diff) | |
download | redot-engine-66374c8dcee3eab1e0878e892be32cd257b43a5b.tar.gz |
TileSet editor was out of sync with TileMap and incorrectly overwrote old selected TileSet after an edit call with a null pointer.
Diffstat (limited to 'editor')
-rw-r--r-- | editor/plugins/tiles/tiles_editor_plugin.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/editor/plugins/tiles/tiles_editor_plugin.cpp b/editor/plugins/tiles/tiles_editor_plugin.cpp index 78522dfa73..1682d07e13 100644 --- a/editor/plugins/tiles/tiles_editor_plugin.cpp +++ b/editor/plugins/tiles/tiles_editor_plugin.cpp @@ -145,7 +145,10 @@ void TilesEditorPlugin::_tile_map_changed() { void TilesEditorPlugin::_update_editors() { // If tile_map is not edited, we change the edited only if we are not editing a tile_set. - tileset_editor->edit(tile_set); + if (tile_set.is_valid()) { + tileset_editor->edit(tile_set); + } + TileMap *tile_map = Object::cast_to<TileMap>(ObjectDB::get_instance(tile_map_id)); if (tile_map) { tilemap_editor->edit(tile_map); @@ -158,6 +161,7 @@ void TilesEditorPlugin::_update_editors() { // Make sure the tile set editor is visible if we have one assigned. tileset_editor_button->set_visible(is_visible && tile_set.is_valid()); + tilemap_editor_button->set_visible(is_visible && tile_map); // Update visibility of bottom panel buttons. if (tileset_editor_button->is_pressed() && !tile_set.is_valid()) { |