diff options
Diffstat (limited to 'src/shared')
-rw-r--r-- | src/shared/ByteBuffer.h | 8 | ||||
-rw-r--r-- | src/shared/Database/DBCStores.cpp | 10 | ||||
-rw-r--r-- | src/shared/Database/DBCStores.h | 3 | ||||
-rw-r--r-- | src/shared/Database/DBCStructure.h | 4 | ||||
-rw-r--r-- | src/shared/Database/DBCfmt.cpp | 2 |
5 files changed, 18 insertions, 9 deletions
diff --git a/src/shared/ByteBuffer.h b/src/shared/ByteBuffer.h index f2f6f45acbd..e7a28d739ba 100644 --- a/src/shared/ByteBuffer.h +++ b/src/shared/ByteBuffer.h @@ -201,7 +201,7 @@ class ByteBuffer return *this; } - uint8 operator[](size_t pos) + uint8 operator[](size_t pos) const { return read<uint8>(pos); } @@ -309,7 +309,7 @@ class ByteBuffer ASSERT(pos + cnt <= size() || PrintPosError(true,pos,cnt)); memcpy(&_storage[pos], src, cnt); } - void print_storage() + void print_storage() const { if(!sLog.IsOutDebug()) // optimize disabled debug output return; @@ -320,7 +320,7 @@ class ByteBuffer sLog.outDebug(" "); } - void textlike() + void textlike() const { if(!sLog.IsOutDebug()) // optimize disabled debug output return; @@ -331,7 +331,7 @@ class ByteBuffer sLog.outDebug(" "); } - void hexlike() + void hexlike() const { if(!sLog.IsOutDebug()) // optimize disabled debug output return; diff --git a/src/shared/Database/DBCStores.cpp b/src/shared/Database/DBCStores.cpp index 685f9c893ce..0bcc177e500 100644 --- a/src/shared/Database/DBCStores.cpp +++ b/src/shared/Database/DBCStores.cpp @@ -554,7 +554,15 @@ ContentLevels GetContentLevelsForMapAndZone(uint32 mapid, uint32 zoneId) return CONTENT_1_60; MapEntry const* mapEntry = sMapStore.LookupEntry(mapid); - return (!mapEntry || !mapEntry->IsExpansionMap()) ? CONTENT_1_60 : CONTENT_61_70; + if(!mapEntry) + return CONTENT_1_60; + + switch(mapEntry->Expansion()) + { + default: return CONTENT_1_60; + case 1: return CONTENT_61_70; + case 2: return CONTENT_71_80; + } } ChatChannelsEntry const* GetChannelEntryFor(uint32 channel_id) diff --git a/src/shared/Database/DBCStores.h b/src/shared/Database/DBCStores.h index 5d2d60bd117..73c718b4971 100644 --- a/src/shared/Database/DBCStores.h +++ b/src/shared/Database/DBCStores.h @@ -44,7 +44,8 @@ uint32 GetVirtualMapForMapAndZone(uint32 mapid, uint32 zoneId); enum ContentLevels { CONTENT_1_60 = 0, - CONTENT_61_70 + CONTENT_61_70, + CONTENT_71_80 }; ContentLevels GetContentLevelsForMapAndZone(uint32 mapid, uint32 zoneId); diff --git a/src/shared/Database/DBCStructure.h b/src/shared/Database/DBCStructure.h index fa8048b96a4..68ade69dfe9 100644 --- a/src/shared/Database/DBCStructure.h +++ b/src/shared/Database/DBCStructure.h @@ -179,7 +179,7 @@ struct ChrRacesEntry //char* string2[16]; // 48-63 used for DBC language detection/selection // 64 string flags, unused // 65-67 unused - //uint32 addon // 68 (0 - original race, 1 - tbc addon, ...) unused + uint32 addon; // 68 (0 - original race, 1 - tbc addon, ...) }; struct CreatureDisplayInfoEntry @@ -473,7 +473,7 @@ struct MapEntry uint32 addon; // 124 (0-original maps,1-tbc addon) // Helpers - bool IsExpansionMap() const { return addon != 0; } + uint32 Expansion() const { return addon; } bool IsDungeon() const { return map_type == MAP_INSTANCE || map_type == MAP_RAID; } diff --git a/src/shared/Database/DBCfmt.cpp b/src/shared/Database/DBCfmt.cpp index 52b5e5faf47..c2a6c1e4b33 100644 --- a/src/shared/Database/DBCfmt.cpp +++ b/src/shared/Database/DBCfmt.cpp @@ -27,7 +27,7 @@ const char ChatChannelsEntryfmt[]="iixssssssssssssssssxxxxxxxxxxxxxxxxxx"; // ChatChannelsEntryfmt, index not used (more compact store) //const char ChrClassesEntryfmt[]="nxixxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxix"; const char ChrClassesEntryfmt[]="nxixssssssssssssssssxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxix"; -const char ChrRacesEntryfmt[]="nxixiixxixxxxissssssssssssssssxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"; +const char ChrRacesEntryfmt[]="nxixiixxixxxxissssssssssssssssxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxi"; const char CreatureDisplayInfofmt[]="nxxxfxxxxxxxxx"; const char CreatureFamilyfmt[]="nfifiiiissssssssssssssssxx"; const char CreatureSpellDatafmt[]="nxxxxxxxx"; |