mirror of
https://github.com/Laupetin/OpenAssetTools.git
synced 2025-10-26 08:15:54 +00:00
feat: report on unlinking progress
This commit is contained in:
@@ -4,16 +4,11 @@ using namespace IW5;
|
||||
|
||||
namespace script
|
||||
{
|
||||
bool DumperIW5::ShouldDump(XAssetInfo<IW5::ScriptFile>* asset)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
// See https://github.com/xensik/gsc-tool#file-format for an in-depth explanation about the .gscbin format
|
||||
void DumperIW5::DumpAsset(AssetDumpingContext& context, XAssetInfo<IW5::ScriptFile>* asset)
|
||||
void DumperIW5::DumpAsset(AssetDumpingContext& context, const XAssetInfo<ScriptFile>& asset)
|
||||
{
|
||||
auto* scriptFile = asset->Asset();
|
||||
const auto assetFile = context.OpenAssetFile(asset->m_name + ".gscbin");
|
||||
auto* scriptFile = asset.Asset();
|
||||
const auto assetFile = context.OpenAssetFile(asset.m_name + ".gscbin");
|
||||
|
||||
if (!assetFile)
|
||||
return;
|
||||
@@ -21,10 +16,10 @@ namespace script
|
||||
auto& stream = *assetFile;
|
||||
|
||||
// Dump the name and the numeric fields
|
||||
stream.write(asset->m_name.c_str(), asset->m_name.size() + 1);
|
||||
stream.write(reinterpret_cast<char*>(&scriptFile->compressedLen), sizeof(scriptFile->compressedLen));
|
||||
stream.write(reinterpret_cast<char*>(&scriptFile->len), sizeof(scriptFile->len));
|
||||
stream.write(reinterpret_cast<char*>(&scriptFile->bytecodeLen), sizeof(scriptFile->bytecodeLen));
|
||||
stream.write(asset.m_name.c_str(), asset.m_name.size() + 1);
|
||||
stream.write(reinterpret_cast<const char*>(&scriptFile->compressedLen), sizeof(scriptFile->compressedLen));
|
||||
stream.write(reinterpret_cast<const char*>(&scriptFile->len), sizeof(scriptFile->len));
|
||||
stream.write(reinterpret_cast<const char*>(&scriptFile->bytecodeLen), sizeof(scriptFile->bytecodeLen));
|
||||
|
||||
// Dump the buffers
|
||||
stream.write(scriptFile->buffer, scriptFile->compressedLen);
|
||||
|
||||
@@ -8,7 +8,6 @@ namespace script
|
||||
class DumperIW5 final : public AbstractAssetDumper<IW5::ScriptFile>
|
||||
{
|
||||
protected:
|
||||
bool ShouldDump(XAssetInfo<IW5::ScriptFile>* asset) override;
|
||||
void DumpAsset(AssetDumpingContext& context, XAssetInfo<IW5::ScriptFile>* asset) override;
|
||||
void DumpAsset(AssetDumpingContext& context, const XAssetInfo<IW5::ScriptFile>& asset) override;
|
||||
};
|
||||
} // namespace script
|
||||
|
||||
Reference in New Issue
Block a user