diff options
author | James <j.lammlein@gmail.com> | 2018-01-20 14:21:00 -0500 |
---|---|---|
committer | James <j.lammlein@gmail.com> | 2018-05-15 20:14:37 -0400 |
commit | 69ee7945d70e40c7953e9f587a8d0480db8eda86 (patch) | |
tree | 6a4d017ccc7895ec50bdc54e4293cd0a813e7019 | |
parent | c58891ff4ce9559fb1413d34159d3fb039999402 (diff) |
Fixing a bug where tilemap navigation would not be accurate after a tilemap exits and then re-enters the tree. Fixing a bug where deleting a tile and then querying navigation would result in an incorrect path if both happened within the same frame.
-rw-r--r-- | scene/2d/tile_map.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/scene/2d/tile_map.cpp b/scene/2d/tile_map.cpp index 361d765c97..52263e2a1f 100644 --- a/scene/2d/tile_map.cpp +++ b/scene/2d/tile_map.cpp @@ -61,6 +61,7 @@ void TileMap::_notification(int p_what) { } pending_update = true; + _recreate_quadrants(); _update_dirty_quadrants(); RID space = get_world_2d()->get_space(); _update_quadrant_transform(); @@ -653,7 +654,7 @@ void TileMap::_make_quadrant_dirty(Map<PosKey, Quadrant>::Element *Q) { pending_update = true; if (!is_inside_tree()) return; - call_deferred("_update_dirty_quadrants"); + _update_dirty_quadrants(); } void TileMap::set_cellv(const Vector2 &p_pos, int p_tile, bool p_flip_x, bool p_flip_y, bool p_transpose) { |