summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkleonc <9283098+kleonc@users.noreply.github.com>2021-05-03 14:49:52 +0200
committerkleonc <9283098+kleonc@users.noreply.github.com>2021-05-03 14:49:52 +0200
commita1b903066e7b216176e3f0d646fc36c1720b5792 (patch)
tree6a6db279088eb3d901ac9beb20f29d9f29e5e276
parent015fc2ad4f23011540d84b2d513073f74619e6f3 (diff)
TileMapEditor::_bucket_fill Check autotile coordinates only if autotile is selected
-rw-r--r--editor/plugins/tile_map_editor_plugin.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/editor/plugins/tile_map_editor_plugin.cpp b/editor/plugins/tile_map_editor_plugin.cpp
index bd721244ea..bbc1666171 100644
--- a/editor/plugins/tile_map_editor_plugin.cpp
+++ b/editor/plugins/tile_map_editor_plugin.cpp
@@ -658,11 +658,15 @@ Vector<Vector2> TileMapEditor::_bucket_fill(const Point2i &p_start, bool erase,
}
// 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) {
int current = manual_palette->get_current();
- Vector2 position = manual_palette->get_item_metadata(current);
- if (prev_position == position) {
+ if (current == -1) {
+ // Same ID, no variation selected, nothing to change
+ return Vector<Vector2>();
+ }
+ Vector2 prev_autotile_coord = node->get_cell_autotile_coord(p_start.x, p_start.y);
+ Vector2 autotile_coord = manual_palette->get_item_metadata(current);
+ if (autotile_coord == prev_autotile_coord) {
// Same ID and variation, nothing to change
return Vector<Vector2>();
}