summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ZAPD/Globals.h3
-rw-r--r--ZAPD/Main.cpp15
2 files changed, 17 insertions, 1 deletions
diff --git a/ZAPD/Globals.h b/ZAPD/Globals.h
index e0cf1d1..629a5d3 100644
--- a/ZAPD/Globals.h
+++ b/ZAPD/Globals.h
@@ -54,7 +54,7 @@ public:
bool useLegacyZDList;
bool singleThreaded;
VerbosityLevel verbosity; // ZAPD outputs additional information
- ZFileMode fileMode;
+ ZFileMode fileMode = ZFileMode::Invalid;
fs::path baseRomPath, inputPath, outputPath, sourceOutputPath, cfgPath, fileListPath;
TextureType texType;
ZGame game;
@@ -65,6 +65,7 @@ public:
bool forceUnaccountedStatic = false;
bool otrMode = true;
bool buildRawTexture = false;
+ bool onlyGenSohOtr = false;
ZRom* rom;
std::vector<ZFile*> files;
diff --git a/ZAPD/Main.cpp b/ZAPD/Main.cpp
index d596d05..38b0f15 100644
--- a/ZAPD/Main.cpp
+++ b/ZAPD/Main.cpp
@@ -260,10 +260,23 @@ int main(int argc, char* argv[])
{
Globals::Instance->buildRawTexture = true;
}
+ else if (arg == "--norom")
+ {
+ Globals::Instance->onlyGenSohOtr = true;
+ }
}
+
// Parse File Mode
ExporterSet* exporterSet = Globals::Instance->GetExporterSet();
+
+ if(Globals::Instance->onlyGenSohOtr) {
+ exporterSet->endProgramFunc();
+
+ delete g;
+ return 0;
+ }
+
std::string buildMode = argv[1];
ZFileMode fileMode = ZFileMode::Invalid;
@@ -420,6 +433,8 @@ int main(int argc, char* argv[])
if (exporterSet != nullptr && exporterSet->endProgramFunc != nullptr)
exporterSet->endProgramFunc();
+end:
+
delete g;
return 0;
}