summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--editor/plugins/tile_map_editor_plugin.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/editor/plugins/tile_map_editor_plugin.cpp b/editor/plugins/tile_map_editor_plugin.cpp
index e43b8c4b7f..7b516175b2 100644
--- a/editor/plugins/tile_map_editor_plugin.cpp
+++ b/editor/plugins/tile_map_editor_plugin.cpp
@@ -651,9 +651,15 @@ Vector<Vector2> TileMapEditor::_bucket_fill(const Point2i &p_start, bool erase,
return Vector<Vector2>();
}
+ // Check if the tile variation is the same
+ Vector2 prev_position = node->get_cell_autotile_coord(p_start.x, p_start.y);
if (ids.size() == 1 && ids[0] == prev_id) {
- // Same ID, nothing to change
- return Vector<Vector2>();
+ int current = manual_palette->get_current();
+ Vector2 position = manual_palette->get_item_metadata(current);
+ if (prev_position == position) {
+ // Same ID and variation, nothing to change
+ return Vector<Vector2>();
+ }
}
Rect2i r = node->get_used_rect();