28 if (fname.length() < 4)
31 std::string extension = fname.substr(fname.length() - 4, 4);
32 if (extension ==
".mdx" || extension ==
".MDX" || extension ==
".mdl" || extension ==
".MDL")
34 fname.erase(fname.length() - 2, 2);
38 std::string originalName = fname;
51 Model mdl(originalName);
60 printf(
"Extracting GameObject models...");
61 DBCFile dbc(
"DBFilesClient\\GameObjectDisplayInfo.dbc");
64 printf(
"Fatal error: Invalid GameObjectDisplayInfo.dbc file format!\n");
72 std::string modelListPath = basepath +
"temp_gameobject_models";
73 FILE*
model_list = fopen(modelListPath.c_str(),
"wb");
76 printf(
"Fatal error: Could not open file %s\n", modelListPath.c_str());
84 path = it->getString(1);
86 if (path.length() < 4)
101 if (!strcmp(ch_ext,
".wmo"))
106 else if (!strcmp(ch_ext,
".mdl"))
113 uint32 displayId = it->getUInt(0);
114 uint32 path_length = strlen(name);
118 fwrite(name,
sizeof(
char), path_length,
model_list);
void strToLower(std::string &str)
char const * GetPlainName(char const *FileName)
void FixNameCase(char *name, size_t len)
char * GetExtension(char *FileName)
void FixNameSpaces(char *name, size_t len)
Iterator end()
Get begin iterator over records.
Iterator begin()
Get begin iterator over records.
bool ConvertToVMAPModel(char const *outfilename)
const char RAW_VMAP_MAGIC[]
bool FileExists(char const *file)
char const * szWorkDirWmo
bool ExtractSingleWmo(std::string &fname)