aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/World
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/World')
-rw-r--r--src/server/game/World/World.cpp12
-rw-r--r--src/server/game/World/World.h14
2 files changed, 16 insertions, 10 deletions
diff --git a/src/server/game/World/World.cpp b/src/server/game/World/World.cpp
index 4484e3c1f87..cde18f19ffe 100644
--- a/src/server/game/World/World.cpp
+++ b/src/server/game/World/World.cpp
@@ -145,6 +145,7 @@ World::World()
memset(rate_values, 0, sizeof(rate_values));
memset(m_int_configs, 0, sizeof(m_int_configs));
+ memset(m_int64_configs, 0, sizeof(m_int64_configs));
memset(m_bool_configs, 0, sizeof(m_bool_configs));
memset(m_float_configs, 0, sizeof(m_float_configs));
}
@@ -805,7 +806,7 @@ void World::LoadConfigSettings(bool reload)
m_int_configs[CONFIG_CHARTER_COST_ARENA_5v5] = sConfigMgr->GetIntDefault("ArenaTeam.CharterCost.5v5", 2000000);
m_int_configs[CONFIG_CHARACTER_CREATING_DISABLED] = sConfigMgr->GetIntDefault("CharacterCreating.Disabled", 0);
- m_int_configs[CONFIG_CHARACTER_CREATING_DISABLED_RACEMASK] = sConfigMgr->GetIntDefault("CharacterCreating.Disabled.RaceMask", 0);
+ m_int64_configs[CONFIG_CHARACTER_CREATING_DISABLED_RACEMASK] = sConfigMgr->GetInt64Default("CharacterCreating.Disabled.RaceMask", 0);
m_int_configs[CONFIG_CHARACTER_CREATING_DISABLED_CLASSMASK] = sConfigMgr->GetIntDefault("CharacterCreating.Disabled.ClassMask", 0);
m_int_configs[CONFIG_CHARACTERS_PER_REALM] = sConfigMgr->GetIntDefault("CharactersPerRealm", MAX_CHARACTERS_PER_REALM);
@@ -956,13 +957,6 @@ void World::LoadConfigSettings(bool reload)
}
m_int_configs[CONFIG_CURRENCY_MAX_JUSTICE_POINTS] *= 100; //precision mod
- m_int_configs[CONFIG_CURRENCY_START_ARTIFACT_KNOWLEDGE] = sConfigMgr->GetIntDefault("Currency.StartArtifactKnowledge", 55);
- if (int32(m_int_configs[CONFIG_CURRENCY_START_ARTIFACT_KNOWLEDGE]) < 0)
- {
- TC_LOG_ERROR("server.loading", "Currency.StartArtifactKnowledge (%i) must be >= 0, set to default 0.", m_int_configs[CONFIG_CURRENCY_START_ARTIFACT_KNOWLEDGE]);
- m_int_configs[CONFIG_CURRENCY_START_ARTIFACT_KNOWLEDGE] = 0;
- }
-
m_int_configs[CONFIG_MAX_RECRUIT_A_FRIEND_BONUS_PLAYER_LEVEL] = sConfigMgr->GetIntDefault("RecruitAFriend.MaxLevel", 85);
if (m_int_configs[CONFIG_MAX_RECRUIT_A_FRIEND_BONUS_PLAYER_LEVEL] > m_int_configs[CONFIG_MAX_PLAYER_LEVEL])
{
@@ -1573,6 +1567,8 @@ void World::SetInitialWorldSettings()
TC_LOG_INFO("server.loading", "Initialize data stores...");
///- Load DB2s
sDB2Manager.LoadStores(m_dataPath, m_defaultDbcLocale);
+ TC_LOG_INFO("misc", "Loading hotfix blobs...");
+ sDB2Manager.LoadHotfixBlob();
TC_LOG_INFO("misc", "Loading hotfix info...");
sDB2Manager.LoadHotfixData();
///- Close hotfix database - it is only used during DB2 loading
diff --git a/src/server/game/World/World.h b/src/server/game/World/World.h
index 0959309b641..1d0d01f4b1f 100644
--- a/src/server/game/World/World.h
+++ b/src/server/game/World/World.h
@@ -238,7 +238,6 @@ enum WorldIntConfigs
CONFIG_MIN_CHARTER_NAME,
CONFIG_MIN_PET_NAME,
CONFIG_CHARACTER_CREATING_DISABLED,
- CONFIG_CHARACTER_CREATING_DISABLED_RACEMASK,
CONFIG_CHARACTER_CREATING_DISABLED_CLASSMASK,
CONFIG_CHARACTERS_PER_ACCOUNT,
CONFIG_CHARACTERS_PER_REALM,
@@ -254,7 +253,6 @@ enum WorldIntConfigs
CONFIG_CURRENCY_START_APEXIS_CRYSTALS,
CONFIG_CURRENCY_MAX_APEXIS_CRYSTALS,
CONFIG_CURRENCY_START_JUSTICE_POINTS,
- CONFIG_CURRENCY_START_ARTIFACT_KNOWLEDGE,
CONFIG_CURRENCY_MAX_JUSTICE_POINTS,
CONFIG_CURRENCY_RESET_HOUR,
CONFIG_CURRENCY_RESET_DAY,
@@ -407,6 +405,12 @@ enum WorldIntConfigs
INT_CONFIG_VALUE_COUNT
};
+enum WorldInt64Configs
+{
+ CONFIG_CHARACTER_CREATING_DISABLED_RACEMASK,
+ INT64_CONFIT_VALUE_COUNT
+};
+
/// Server rates
enum Rates
{
@@ -744,6 +748,11 @@ class TC_GAME_API World
return index < INT_CONFIG_VALUE_COUNT ? m_int_configs[index] : 0;
}
+ uint64 GetUInt64Config(WorldInt64Configs index) const
+ {
+ return index < INT64_CONFIT_VALUE_COUNT ? m_int64_configs[index] : 0;
+ }
+
void setWorldState(uint32 index, uint32 value);
uint32 getWorldState(uint32 index) const;
void LoadWorldStates();
@@ -858,6 +867,7 @@ class TC_GAME_API World
float rate_values[MAX_RATES];
uint32 m_int_configs[INT_CONFIG_VALUE_COUNT];
+ uint64 m_int64_configs[INT64_CONFIT_VALUE_COUNT];
bool m_bool_configs[BOOL_CONFIG_VALUE_COUNT];
float m_float_configs[FLOAT_CONFIG_VALUE_COUNT];
typedef std::map<uint32, uint32> WorldStatesMap;