chore: generalize IAssetDumper interface

This commit is contained in:
Jan Laupetin
2025-10-15 20:06:01 +01:00
parent c6e9cbedda
commit 6a84d1ea68
152 changed files with 1051 additions and 586 deletions
@@ -4,8 +4,13 @@ using namespace IW5;
namespace script
{
DumperIW5::DumperIW5(const AssetPool<AssetScript::Type>& pool)
: AbstractAssetDumper(pool)
{
}
// See https://github.com/xensik/gsc-tool#file-format for an in-depth explanation about the .gscbin format
void DumperIW5::DumpAsset(AssetDumpingContext& context, const XAssetInfo<ScriptFile>& asset)
void DumperIW5::DumpAsset(AssetDumpingContext& context, const XAssetInfo<AssetScript::Type>& asset)
{
auto* scriptFile = asset.Asset();
const auto assetFile = context.OpenAssetFile(asset.m_name + ".gscbin");
@@ -5,9 +5,12 @@
namespace script
{
class DumperIW5 final : public AbstractAssetDumper<IW5::ScriptFile>
class DumperIW5 final : public AbstractAssetDumper<IW5::AssetScript>
{
public:
explicit DumperIW5(const AssetPool<IW5::AssetScript::Type>& pool);
protected:
void DumpAsset(AssetDumpingContext& context, const XAssetInfo<IW5::ScriptFile>& asset) override;
void DumpAsset(AssetDumpingContext& context, const XAssetInfo<IW5::AssetScript::Type>& asset) override;
};
} // namespace script