mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2024-11-21 21:17:25 +00:00
Merge pull request #44 from yuwui/patch/zone_path_casing
Try to load from original zone path before a lowercased one
This commit is contained in:
commit
af05371c09
@ -42,7 +42,15 @@ void Zone::LoadZoneIntoMemory() {
|
||||
m_ZonePath = m_ZoneFilePath.substr(0, m_ZoneFilePath.rfind('/') + 1);
|
||||
if (m_ZoneFilePath == "ERR") return;
|
||||
|
||||
// try to open with regular cased path first
|
||||
std::ifstream file(m_ZoneFilePath, std::ios::binary);
|
||||
if (!file) {
|
||||
// if that fails try the path in lowercase
|
||||
std::transform(m_ZoneFilePath.begin(), m_ZoneFilePath.end(), m_ZoneFilePath.begin(), ::tolower);
|
||||
|
||||
file.open(m_ZoneFilePath, std::ios::binary);
|
||||
}
|
||||
|
||||
if (file) {
|
||||
BinaryIO::BinaryRead(file, m_ZoneFileFormatVersion);
|
||||
|
||||
@ -171,8 +179,7 @@ std::string Zone::GetFilePathForZoneID() {
|
||||
CDZoneTableTable * zoneTable = CDClientManager::Instance()->GetTable<CDZoneTableTable>("ZoneTable");
|
||||
const CDZoneTable* zone = zoneTable->Query(this->GetZoneID().GetMapID());
|
||||
if (zone != nullptr) {
|
||||
std::string toReturn = "./res/maps/" + zone->zoneName;
|
||||
std::transform(toReturn.begin(), toReturn.end(), toReturn.begin(), ::tolower);
|
||||
std::string toReturn = "./res/maps/" + zone->zoneName;
|
||||
return toReturn;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user