public void LoadFileDataComplete(CASCHandler casc)
{
if (!casc.FileExists("DBFilesClient\\FileDataComplete.db2"))
{
return;
}
Logger.WriteLine("WowRootHandler: loading file names from FileDataComplete.db2...");
using (var s = casc.OpenFile("DBFilesClient\\FileDataComplete.db2"))
{
WDC1Reader fd = new WDC1Reader(s);
Jenkins96 hasher = new Jenkins96();
foreach (var row in fd)
{
string path = row.Value.GetField <string>(0);
string name = row.Value.GetField <string>(1);
string fullname = path + name;
ulong fileHash = hasher.ComputeHash(fullname);
// skip invalid names
if (!casc.FileExists(fileHash))
{
//Logger.WriteLine("Invalid file name: {0}", fullname);
continue;
}
CASCFile.Files[fileHash] = new CASCFile(fileHash, fullname);
}
}
}