mirror of
https://github.com/Laupetin/OpenAssetTools.git
synced 2026-10-30 14:21:58 +00:00
refactor: generate asset code once per asset/variant combination
This commit is contained in:
12 files changed
+380
-312
No files matched your search
@@ -32,7 +32,11 @@ namespace
|
||||
|
||||
for (const auto* asset : m_env.m_assets)
|
||||
{
|
||||
LINEF("#include \"Game/{0}/XAssets/{1}/{1}_{2}_write_db.h\"", m_env.m_game, Lower(asset->m_definition->m_name), Lower(m_env.m_game))
|
||||
LINEF("#include \"Game/{0}/XAssets/{1}/{1}_{2}_{3}_write_db.h\"",
|
||||
m_env.m_game,
|
||||
Lower(asset->m_definition->m_name),
|
||||
Lower(m_env.m_game),
|
||||
Lower(m_env.m_variant->m_name))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -157,7 +161,7 @@ namespace
|
||||
{
|
||||
AddGeneratedHint();
|
||||
|
||||
LINEF("#include \"{0}_{1}_write_db.h\"", Lower(m_env.m_asset->m_definition->m_name), Lower(m_env.m_game))
|
||||
LINEF("#include \"{0}_{1}_{2}_write_db.h\"", Lower(m_env.m_asset->m_definition->m_name), Lower(m_env.m_game), Lower(m_env.m_variant->m_name))
|
||||
|
||||
if (!m_env.m_referenced_assets.empty())
|
||||
{
|
||||
@@ -165,7 +169,7 @@ namespace
|
||||
LINE("// Referenced Assets:")
|
||||
for (const auto* type : m_env.m_referenced_assets)
|
||||
{
|
||||
LINEF("#include \"../{0}/{0}_{1}_write_db.h\"", Lower(type->m_type->m_name), Lower(m_env.m_game))
|
||||
LINEF("#include \"../{0}/{0}_{1}_{2}_write_db.h\"", Lower(type->m_type->m_name), Lower(m_env.m_game), Lower(m_env.m_variant->m_name))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1666,8 +1670,11 @@ std::vector<CodeTemplateFile> ZoneWriteTemplate::GetFilesToRenderOncePerAsset(co
|
||||
auto gameName = context.m_game;
|
||||
utils::MakeStringLowerCase(gameName);
|
||||
|
||||
files.emplace_back(std::format("XAssets/{0}/{0}_{1}_write_db.h", assetName, gameName), TAG_HEADER);
|
||||
files.emplace_back(std::format("XAssets/{0}/{0}_{1}_write_db.cpp", assetName, gameName), TAG_SOURCE);
|
||||
auto variantName = context.m_variant->m_name;
|
||||
utils::MakeStringLowerCase(variantName);
|
||||
|
||||
files.emplace_back(std::format("XAssets/{0}/{0}_{1}_{2}_write_db.h", assetName, gameName, variantName), TAG_HEADER);
|
||||
files.emplace_back(std::format("XAssets/{0}/{0}_{1}_{2}_write_db.cpp", assetName, gameName, variantName), TAG_SOURCE);
|
||||
|
||||
return files;
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user