PCKPacker
继承: RefCounted < Object
创建可以加载到正在运行的项目中的包。
描述
PCKPacker 可以创建打包文件,项目运行时可以使用 ProjectSettings.load_resource_pack() 来加载打包文件。
var packer = PCKPacker.new()
packer.pck_start("test.pck")
packer.add_file("res://text.txt", "text.txt")
packer.flush()
var packer = new PckPacker();
packer.PckStart("test.pck");
packer.AddFile("res://text.txt", "text.txt");
packer.Flush();
上面的例子中,PCKPacker 创建了打包文件 test.pck,但后将名为 text.txt 的文件添加到了包的根目录。
注意:PCK 是 Godot 自有的打包文件格式。要创建任何程序都能够读取的 ZIP 压缩包,请改用 ZIPPacker。
方法
add_file(target_path: String, source_path: String, encrypt: bool = false) |
|
add_file_removal(target_path: String) |
|
pck_start(pck_path: String, alignment: int = 32, key: String = "0000000000000000000000000000000000000000000000000000000000000000", encrypt_directory: bool = false) |
方法说明
Error add_file(target_path: String, source_path: String, encrypt: bool = false) 🔗
将 source_path 文件添加到当前 PCK 包的内部路径 target_path 处。target_path 不必写 res:// 前缀,内部会将其去除。文件内容会立即写入到 PCK 中。
Error add_file_removal(target_path: String) 🔗
注册移除 PCK 内部路径 target_path 处的文件。主要用于补丁。如果位于该路径的文件已从之前的 PCK 加载,则会被移除。target_path 不必写 res:// 前缀,内部会将其去除。
Error flush(verbose: bool = false) 🔗
写入文件目录并关闭 PCK。如果 verbose 为 true,则会将文件列表输出在控制台,方便调试。
注意:PCKPacker 被释放时会自动刷新,释放发生在离开作用域或被赋值为 null 时。在 C# 中,使用完后必须弃置该引用,可以使用 using 语句或直接调用 Dispose 方法。
Error pck_start(pck_path: String, alignment: int = 32, key: String = "0000000000000000000000000000000000000000000000000000000000000000", encrypt_directory: bool = false) 🔗
在文件路径 pck_path 处新建 PCK 文件。不会自动添加 .pck 文件扩展名,因此 pck_path 中应包含该扩展名(即使扩展名不是必需的)。