瀏覽代碼

Merge pull request #71630 from groud/fix_tilemap_layer_delete_undo

Fixes TileMap undo not restoring tiles
Rémi Verschelde 2 年之前
父節點
當前提交
4abbc0c3fb
共有 2 個文件被更改,包括 2 次插入2 次删除
  1. 1 1
      scene/2d/tile_map.cpp
  2. 1 1
      scene/2d/tile_map.h

+ 1 - 1
scene/2d/tile_map.cpp

@@ -2841,7 +2841,7 @@ void TileMap::_set_tile_data(int p_layer, const Vector<int> &p_data) {
 	const int *r = p_data.ptr();
 
 	int offset = (format >= FORMAT_2) ? 3 : 2;
-	ERR_FAIL_COND_MSG(c % offset != 0, "Corrupted tile data.");
+	ERR_FAIL_COND_MSG(c % offset != 0, vformat("Corrupted tile data. Got size: %s. Expected modulo: %s", offset));
 
 	clear_layer(p_layer);
 

+ 1 - 1
scene/2d/tile_map.h

@@ -179,7 +179,7 @@ private:
 		FORMAT_2,
 		FORMAT_3
 	};
-	mutable DataFormat format = FORMAT_1; // Assume lowest possible format if none is present;
+	mutable DataFormat format = FORMAT_3;
 
 	static constexpr float FP_ADJUST = 0.00001;