fix(editor): TileMap floodfill with same tile ID and different variation

Closes https://github.com/godotengine/godot/issues/40435
This commit is contained in:
Eric Tuvesson 2020-10-21 23:56:44 +02:00
parent a4548a079b
commit cefca25796
1 changed files with 8 additions and 2 deletions

View File

@ -649,10 +649,16 @@ 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
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();