summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEstelle Linkpy Reid <linkpydev@gmail.com>2022-07-02 14:50:25 +0200
committerEstelle Linkpy Reid <linkpydev@gmail.com>2022-07-02 15:01:07 +0200
commit3a37053aac4aa29b653aea7c303f69f367a71f6c (patch)
treee1d2b6959dd93ac7efa303cc50d423026426e951
parent2b31c88982e4fdcbc8f0d7ba5d02cfd451a1df88 (diff)
Make sure the tile data clears its `terrain` field when said terrain is removed from the tileset.
-rw-r--r--scene/resources/tile_set.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/scene/resources/tile_set.cpp b/scene/resources/tile_set.cpp
index 13b671e562..1e961e870c 100644
--- a/scene/resources/tile_set.cpp
+++ b/scene/resources/tile_set.cpp
@@ -4924,6 +4924,10 @@ void TileData::move_terrain(int p_terrain_set, int p_from_index, int p_to_pos) {
void TileData::remove_terrain(int p_terrain_set, int p_index) {
if (terrain_set == p_terrain_set) {
+ if (terrain == p_index) {
+ terrain = -1;
+ }
+
for (int i = 0; i < 16; i++) {
if (terrain_peering_bits[i] == p_index) {
terrain_peering_bits[i] = -1;