2
0
mirror of https://github.com/AxioDL/metaforce.git synced 2025-12-09 08:27:42 +00:00

Ensure directories are created late in extract

This commit is contained in:
Jack Andersen
2017-01-16 15:23:19 -10:00
parent d66d9a24f4
commit 56b24c39f0
50 changed files with 402 additions and 177 deletions

View File

@@ -17,6 +17,7 @@ namespace DataSpec
static logvisor::Module Log("urde::SpecMP3");
extern hecl::Database::DataSpecEntry SpecEntMP3;
extern hecl::Database::DataSpecEntry SpecEntMP3ORIG;
struct SpecMP3 : SpecBase
{
@@ -340,9 +341,6 @@ struct SpecMP3 : SpecBase
if (doMP3)
{
m_workPath.makeDir();
const hecl::ProjectPath& cookPath = m_project.getProjectCookedPath(SpecEntMP3);
cookPath.makeDir();
m_cookPath.makeDir();
progress(_S("Indexing PAKs"), _S(""), compIdx, 0.0);
m_pakRouter.build(m_paks, [&progress, &compIdx](float factor)
@@ -404,9 +402,6 @@ struct SpecMP3 : SpecBase
if (doMPTFE)
{
m_feWorkPath.makeDir();
const hecl::ProjectPath& cookPath = m_project.getProjectCookedPath(SpecEntMP3);
cookPath.makeDir();
m_feCookPath.makeDir();
progress(_S("Indexing PAKs"), _S(""), compIdx, 0.0);
m_fePakRouter.build(m_fePaks, [&progress, &compIdx](float factor)
@@ -465,9 +460,14 @@ struct SpecMP3 : SpecBase
return true;
}
const hecl::Database::DataSpecEntry* getOriginalSpec() const
const hecl::Database::DataSpecEntry& getOriginalSpec() const
{
return &SpecEntMP3;
return SpecEntMP3;
}
const hecl::Database::DataSpecEntry& getUnmodifiedSpec() const
{
return SpecEntMP3ORIG;
}
hecl::ProjectPath getWorking(class UniqueID64& id)
@@ -520,6 +520,12 @@ struct SpecMP3 : SpecBase
{
}
void cookGuiFrame(const hecl::ProjectPath& out, const hecl::ProjectPath& in,
BlendStream& ds, hecl::BlenderToken& btok,
FCookProgress progress)
{
}
void cookYAML(const hecl::ProjectPath& out, const hecl::ProjectPath& in,
athena::io::IStreamReader& fin, FCookProgress progress)
{
@@ -561,4 +567,11 @@ hecl::Database::DataSpecEntry SpecEntMP3PC =
}
};
hecl::Database::DataSpecEntry SpecEntMP3ORIG =
{
_S("MP3-ORIG"),
_S("Data specification for unmodified Metroid Prime 3 resources"),
{}
};
}