Browse Source

Print every file exported with `PCKPacker.flush()`s verbose parameter

Previously, only one line per 100 files was printed.

This also refactors the print statement to use Godot methods and
make it more informative overall.

(cherry picked from commit 8e57e5dc6a22d3e114816be3806c7499824003df)
Hugo Locurcio 3 năm trước cách đây
mục cha
commit
22f50490c2
1 tập tin đã thay đổi với 5 bổ sung7 xóa
  1. 5 7
      core/io/pck_packer.cpp

+ 5 - 7
core/io/pck_packer.cpp

@@ -154,13 +154,11 @@ Error PCKPacker::flush(bool p_verbose) {
 		src->close();
 		memdelete(src);
 		count += 1;
-		if (p_verbose && files.size() > 0) {
-			if (count % 100 == 0) {
-				printf("%i/%i (%.2f)\r", count, files.size(), float(count) / files.size() * 100);
-				fflush(stdout);
-			};
-		};
-	};
+		const int file_num = files.size();
+		if (p_verbose && (file_num > 0)) {
+			print_line(vformat("[%d/%d - %d%%] PCKPacker flush: %s -> %s", count, file_num, float(count) / file_num * 100, files[i].src_path, files[i].path));
+		}
+	}
 
 	if (p_verbose) {
 		printf("\n");