mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-04-17 09:33:51 +00:00
Enrich zone music from AreaTable/ZoneMusic/SoundEntries DBC chain
Add ZoneManager::enrichFromDBC() which walks AreaTable.dbc (field 8 = ZoneMusicId) → ZoneMusic.dbc (fields 6/7 = day/night SoundEntryIds) → SoundEntries.dbc (fields 3-12 = files, field 23 = DirectoryBase) and appends MPQ music paths for all zones in the DBC, covering ~2300+ areas vs the previous ~15 hardcoded entries. Existing hardcoded paths are preserved as the primary pool; DBC paths are added only if not already present. Called from Renderer::init() after initialize().
This commit is contained in:
parent
46f2c0df85
commit
43b9ecd857
3 changed files with 93 additions and 1 deletions
|
|
@ -6,6 +6,7 @@
|
|||
#include <vector>
|
||||
|
||||
namespace wowee {
|
||||
namespace pipeline { class AssetManager; }
|
||||
namespace game {
|
||||
|
||||
struct ZoneInfo {
|
||||
|
|
@ -18,6 +19,10 @@ class ZoneManager {
|
|||
public:
|
||||
void initialize();
|
||||
|
||||
// Supplement zone music paths using AreaTable → ZoneMusic → SoundEntries DBC chain.
|
||||
// Safe to call after initialize(); idempotent and additive (does not remove existing paths).
|
||||
void enrichFromDBC(pipeline::AssetManager* assets);
|
||||
|
||||
uint32_t getZoneId(int tileX, int tileY) const;
|
||||
const ZoneInfo* getZoneInfo(uint32_t zoneId) const;
|
||||
std::string getRandomMusic(uint32_t zoneId);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue