feat(wom): tryLoadByGamePath accepts extraPrefixes for per-zone search roots

The shared helper only probed custom_zones/models/ + output/models/, but
the editor's exportZone writes to output/<map>/models/. Added an
extraPrefixes parameter that's tried before the defaults — main game's
terrain_manager now passes ['output/<map>/models/', 'custom_zones/<map>/
models/'] so per-zone WOM exports override globals. Also removes the
last duplicate WOM-loading code from terrain_manager.
This commit is contained in:
Kelsi 2026-05-06 04:07:16 -07:00
parent 99aaab3aa8
commit f36309a96f
3 changed files with 34 additions and 23 deletions

View file

@ -90,7 +90,12 @@ public:
// Convenience: try loading <path-without-ext>.wom from the standard editor
// search paths (custom_zones/models/, output/models/). Returns valid model on hit.
static WoweeModel tryLoadByGamePath(const std::string& gamePath);
// `extraPrefixes` are tried before the defaults — pass per-zone roots like
// {"output/<map>/models/", "custom_zones/<map>/models/"} when the caller
// knows the active zone.
static WoweeModel tryLoadByGamePath(
const std::string& gamePath,
const std::vector<std::string>& extraPrefixes = {});
};
} // namespace pipeline