diff options
| author | Jeod <47716344+JeodC@users.noreply.github.com> | 2026-07-11 22:05:48 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-07-11 20:05:48 -0600 |
| commit | d2ac4a4500217ed31b7705cfb92b4255860521d9 (patch) | |
| tree | c33596e8f29673e75452d06b7eb035fe758e6402 | |
| parent | b62fa5db1540d565dad4ffb6985bd5f7e74da10e (diff) | |
BK: Honor runtime dialog-pack flag in addition to modder flag (#226)
| -rw-r--r-- | src/factories/bk64/BKAssetFactory.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/factories/bk64/BKAssetFactory.cpp b/src/factories/bk64/BKAssetFactory.cpp index 6a0d903..ff346cc 100644 --- a/src/factories/bk64/BKAssetFactory.cpp +++ b/src/factories/bk64/BKAssetFactory.cpp @@ -704,12 +704,16 @@ std::optional<std::shared_ptr<IParsedData>> BKAssetFactory::parse(std::vector<ui } // Route a dialog-pack build to mods/lang/bk<region>.o2r when no explicit binary name is -// given. Inert unless the rom config sets dialog_pack, so it's safe to call for any rom. +// given. Inert unless dialog-pack mode is requested, so it's safe to call for any rom. void BKAssetFactory::PreprocessConfig(YAML::Node& cfg, N64::Cartridge* cart) { - if (!cfg || !cfg["dialog_pack"] || !cfg["dialog_pack"].as<bool>()) { + const bool requested = (cfg && cfg["dialog_pack"] && cfg["dialog_pack"].as<bool>()) || + (Companion::Instance != nullptr && Companion::Instance->GetConfig().dialogPack); + if (!cfg || !requested) { return; } + cfg["dialog_pack"] = true; + std::string name; if (cfg["output"] && cfg["output"]["binary"]) { name = fs::path(cfg["output"]["binary"].as<std::string>()).filename().string(); |
