diff --git a/src/db/Db.cpp b/src/db/Db.cpp index ca1e2ea..71a9419 100644 --- a/src/db/Db.cpp +++ b/src/db/Db.cpp @@ -15,6 +15,7 @@ WowClientDB g_creatureModelDataDB; WowClientDB g_itemDisplayInfoDB; WowClientDB g_itemVisualsDB; WowClientDB g_mapDB; +WowClientDB g_soundEntriesDB; void LoadDB(WowClientDB_Base* db, const char* filename, int32_t linenumber) { db->Load(filename, linenumber); @@ -35,6 +36,7 @@ void StaticDBLoadAll(void (*loadFn)(WowClientDB_Base*, const char*, int32_t)) { loadFn(&g_itemDisplayInfoDB, __FILE__, __LINE__); loadFn(&g_itemVisualsDB, __FILE__, __LINE__); loadFn(&g_mapDB, __FILE__, __LINE__); + loadFn(&g_soundEntriesDB, __FILE__, __LINE__); }; void ClientDBInitialize() { diff --git a/src/db/Db.hpp b/src/db/Db.hpp index fb08b67..9e681a9 100644 --- a/src/db/Db.hpp +++ b/src/db/Db.hpp @@ -16,6 +16,7 @@ #include "db/rec/ItemDisplayInfoRec.hpp" #include "db/rec/ItemVisualsRec.hpp" #include "db/rec/MapRec.hpp" +#include "db/rec/SoundEntriesRec.hpp" extern WowClientDB g_achievementDB; extern WowClientDB g_areaTableDB; @@ -31,6 +32,7 @@ extern WowClientDB g_creatureModelDataDB; extern WowClientDB g_itemDisplayInfoDB; extern WowClientDB g_itemVisualsDB; extern WowClientDB g_mapDB; +extern WowClientDB g_soundEntriesDB; void ClientDBInitialize(); diff --git a/src/db/rec/SoundEntriesRec.cpp b/src/db/rec/SoundEntriesRec.cpp new file mode 100644 index 0000000..e0ebc91 --- /dev/null +++ b/src/db/rec/SoundEntriesRec.cpp @@ -0,0 +1,99 @@ +// DO NOT EDIT: generated by whoa-autocode +#include "db/rec/SoundEntriesRec.hpp" +#include "util/Locale.hpp" +#include "util/SFile.hpp" + +const char* SoundEntriesRec::GetFilename() { + return "DBFilesClient\\SoundEntries.dbc"; +} + +uint32_t SoundEntriesRec::GetNumColumns() { + return 30; +} + +uint32_t SoundEntriesRec::GetRowSize() { + return 120; +} + +bool SoundEntriesRec::NeedIDAssigned() { + return false; +} + +int32_t SoundEntriesRec::GetID() { + return this->m_ID; +} + +void SoundEntriesRec::SetID(int32_t id) { + this->m_ID = id; +} + +bool SoundEntriesRec::Read(SFile* f, const char* stringBuffer) { + uint32_t nameOfs; + uint32_t fileOfs[10]; + uint32_t directoryBaseOfs; + + if ( + !SFile::Read(f, &this->m_ID, sizeof(this->m_ID), nullptr, nullptr, nullptr) + || !SFile::Read(f, &this->m_soundType, sizeof(this->m_soundType), nullptr, nullptr, nullptr) + || !SFile::Read(f, &nameOfs, sizeof(uint32_t), nullptr, nullptr, nullptr) + || !SFile::Read(f, &fileOfs[0], sizeof(uint32_t), nullptr, nullptr, nullptr) + || !SFile::Read(f, &fileOfs[1], sizeof(uint32_t), nullptr, nullptr, nullptr) + || !SFile::Read(f, &fileOfs[2], sizeof(uint32_t), nullptr, nullptr, nullptr) + || !SFile::Read(f, &fileOfs[3], sizeof(uint32_t), nullptr, nullptr, nullptr) + || !SFile::Read(f, &fileOfs[4], sizeof(uint32_t), nullptr, nullptr, nullptr) + || !SFile::Read(f, &fileOfs[5], sizeof(uint32_t), nullptr, nullptr, nullptr) + || !SFile::Read(f, &fileOfs[6], sizeof(uint32_t), nullptr, nullptr, nullptr) + || !SFile::Read(f, &fileOfs[7], sizeof(uint32_t), nullptr, nullptr, nullptr) + || !SFile::Read(f, &fileOfs[8], sizeof(uint32_t), nullptr, nullptr, nullptr) + || !SFile::Read(f, &fileOfs[9], sizeof(uint32_t), nullptr, nullptr, nullptr) + || !SFile::Read(f, &this->m_freq[0], sizeof(m_freq[0]), nullptr, nullptr, nullptr) + || !SFile::Read(f, &this->m_freq[1], sizeof(m_freq[0]), nullptr, nullptr, nullptr) + || !SFile::Read(f, &this->m_freq[2], sizeof(m_freq[0]), nullptr, nullptr, nullptr) + || !SFile::Read(f, &this->m_freq[3], sizeof(m_freq[0]), nullptr, nullptr, nullptr) + || !SFile::Read(f, &this->m_freq[4], sizeof(m_freq[0]), nullptr, nullptr, nullptr) + || !SFile::Read(f, &this->m_freq[5], sizeof(m_freq[0]), nullptr, nullptr, nullptr) + || !SFile::Read(f, &this->m_freq[6], sizeof(m_freq[0]), nullptr, nullptr, nullptr) + || !SFile::Read(f, &this->m_freq[7], sizeof(m_freq[0]), nullptr, nullptr, nullptr) + || !SFile::Read(f, &this->m_freq[8], sizeof(m_freq[0]), nullptr, nullptr, nullptr) + || !SFile::Read(f, &this->m_freq[9], sizeof(m_freq[0]), nullptr, nullptr, nullptr) + || !SFile::Read(f, &directoryBaseOfs, sizeof(uint32_t), nullptr, nullptr, nullptr) + || !SFile::Read(f, &this->m_volumeFloat, sizeof(this->m_volumeFloat), nullptr, nullptr, nullptr) + || !SFile::Read(f, &this->m_flags, sizeof(this->m_flags), nullptr, nullptr, nullptr) + || !SFile::Read(f, &this->m_minDistance, sizeof(this->m_minDistance), nullptr, nullptr, nullptr) + || !SFile::Read(f, &this->m_distanceCutoff, sizeof(this->m_distanceCutoff), nullptr, nullptr, nullptr) + || !SFile::Read(f, &this->m_eaxdef, sizeof(this->m_eaxdef), nullptr, nullptr, nullptr) + || !SFile::Read(f, &this->m_soundEntriesAdvancedID, sizeof(this->m_soundEntriesAdvancedID), nullptr, nullptr, nullptr) + ) { + return false; + } + + if (stringBuffer) { + this->m_name = &stringBuffer[nameOfs]; + this->m_file[0] = &stringBuffer[fileOfs[0]]; + this->m_file[1] = &stringBuffer[fileOfs[1]]; + this->m_file[2] = &stringBuffer[fileOfs[2]]; + this->m_file[3] = &stringBuffer[fileOfs[3]]; + this->m_file[4] = &stringBuffer[fileOfs[4]]; + this->m_file[5] = &stringBuffer[fileOfs[5]]; + this->m_file[6] = &stringBuffer[fileOfs[6]]; + this->m_file[7] = &stringBuffer[fileOfs[7]]; + this->m_file[8] = &stringBuffer[fileOfs[8]]; + this->m_file[9] = &stringBuffer[fileOfs[9]]; + this->m_directoryBase = &stringBuffer[directoryBaseOfs]; + } else { + this->m_name = ""; + this->m_file[0] = ""; + this->m_file[1] = ""; + this->m_file[2] = ""; + this->m_file[3] = ""; + this->m_file[4] = ""; + this->m_file[5] = ""; + this->m_file[6] = ""; + this->m_file[7] = ""; + this->m_file[8] = ""; + this->m_file[9] = ""; + this->m_directoryBase = ""; + } + + return true; +} diff --git a/src/db/rec/SoundEntriesRec.hpp b/src/db/rec/SoundEntriesRec.hpp new file mode 100644 index 0000000..b5bd3fa --- /dev/null +++ b/src/db/rec/SoundEntriesRec.hpp @@ -0,0 +1,33 @@ +// DO NOT EDIT: generated by whoa-autocode +#ifndef DB_REC_SOUND_ENTRIES_REC_HPP +#define DB_REC_SOUND_ENTRIES_REC_HPP + +#include + +class SFile; + +class SoundEntriesRec { + public: + int32_t m_ID; + int32_t m_soundType; + const char* m_name; + const char* m_file[10]; + int32_t m_freq[10]; + const char* m_directoryBase; + float m_volumeFloat; + int32_t m_flags; + float m_minDistance; + float m_distanceCutoff; + int32_t m_eaxdef; + int32_t m_soundEntriesAdvancedID; + + static const char* GetFilename(); + static uint32_t GetNumColumns(); + static uint32_t GetRowSize(); + static bool NeedIDAssigned(); + int32_t GetID(); + void SetID(int32_t id); + bool Read(SFile* f, const char* stringBuffer); +}; + +#endif