aboutsummaryrefslogtreecommitdiff
path: root/src/shared/Database
diff options
context:
space:
mode:
Diffstat (limited to 'src/shared/Database')
-rw-r--r--src/shared/Database/DBCStores.cpp10
-rw-r--r--src/shared/Database/DBCStores.h3
-rw-r--r--src/shared/Database/DBCStructure.h4
-rw-r--r--src/shared/Database/DBCfmt.cpp2
4 files changed, 14 insertions, 5 deletions
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";