diff options
Diffstat (limited to 'ZAPD/ZResource.cpp')
| -rw-r--r-- | ZAPD/ZResource.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/ZAPD/ZResource.cpp b/ZAPD/ZResource.cpp index 0e8324d..768a066 100644 --- a/ZAPD/ZResource.cpp +++ b/ZAPD/ZResource.cpp @@ -335,8 +335,16 @@ std::string ZResource::GetSourceOutputHeader([[maybe_unused]] const std::string& if (StringHelper::Contains(outName, "_room_") || StringHelper::Contains(outName, "_scene") || (StringHelper::Contains(parent->GetXmlFilePath().string(), "/scenes/") || - StringHelper::Contains(parent->GetXmlFilePath().string(), "\\scenes\\"))) - prefix = "scenes/nonmq"; + StringHelper::Contains(parent->GetXmlFilePath().string(), "\\scenes\\"))) { + prefix = "scenes/shared"; + + // Regex for xml paths that are dungeons with unique MQ variants (only the main dungeon, not boss rooms) + std::regex dungeonsWithMQ(R"(((ydan)|(ddan)|(bdan)|(Bmori1)|(HIDAN)|(MIZUsin)|(jyasinzou)|(HAKAdan)|(HAKAdanCH)|(ice_doukutu)|(men)|(ganontika))\.xml)"); + + if (StringHelper::Contains(xmlPath, "dungeons/") && std::regex_search(xmlPath, dungeonsWithMQ)) { + prefix = "scenes/nonmq"; + } + } else if (StringHelper::Contains(xmlPath, "objects/")) prefix = "objects"; else if (StringHelper::Contains(xmlPath, "textures/")) |
