<?xml version="1.0" encoding="UTF-8" ?>
<class name="PCKPacker" inherits="Reference" version="4.0">
	<brief_description>
		Creates packages that can be loaded into a running project.
	</brief_description>
	<description>
		The [PCKPacker] is used to create packages that can be loaded into a running project using [method ProjectSettings.load_resource_pack].
		[codeblocks]
		[gdscript]
		var packer = PCKPacker.new()
		packer.pck_start("test.pck")
		packer.add_file("res://text.txt", "text.txt")
		packer.flush()
		[/gdscript]
		[csharp]
		var packer = new PCKPacker();
		packer.PckStart("test.pck");
		packer.AddFile("res://text.txt", "text.txt");
		packer.Flush();
		[/csharp]
		[/codeblocks]
		The above [PCKPacker] creates package [code]test.pck[/code], then adds a file named [code]text.txt[/code] at the root of the package.
	</description>
	<tutorials>
	</tutorials>
	<methods>
		<method name="add_file">
			<return type="int" enum="Error">
			</return>
			<argument index="0" name="pck_path" type="String">
			</argument>
			<argument index="1" name="source_path" type="String">
			</argument>
			<argument index="2" name="encrypt" type="bool" default="false">
			</argument>
			<description>
				Adds the [code]source_path[/code] file to the current PCK package at the [code]pck_path[/code] internal path (should start with [code]res://[/code]).
			</description>
		</method>
		<method name="flush">
			<return type="int" enum="Error">
			</return>
			<argument index="0" name="verbose" type="bool" default="false">
			</argument>
			<description>
				Writes the files specified using all [method add_file] calls since the last flush. If [code]verbose[/code] is [code]true[/code], a list of files added will be printed to the console for easier debugging.
			</description>
		</method>
		<method name="pck_start">
			<return type="int" enum="Error">
			</return>
			<argument index="0" name="pck_name" type="String">
			</argument>
			<argument index="1" name="alignment" type="int" default="0">
			</argument>
			<argument index="2" name="key" type="String" default="&quot;&quot;">
			</argument>
			<argument index="3" name="encrypt_directory" type="bool" default="false">
			</argument>
			<description>
				Creates a new PCK file with the name [code]pck_name[/code]. The [code].pck[/code] file extension isn't added automatically, so it should be part of [code]pck_name[/code] (even though it's not required).
			</description>
		</method>
	</methods>
	<constants>
	</constants>
</class>