aboutsummaryrefslogtreecommitdiff
path: root/src/server/game
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2021-01-17 14:32:06 +0100
committerShauren <shauren.trinity@gmail.com>2022-10-04 00:19:38 +0200
commitcedf09f93c44be2abf1c2b40e0e4c51f95f2975c (patch)
tree1ced904f172acd663982fa13ba1c8b86add7e914 /src/server/game
parent0be72f68c33617d78a4139f3e667b03d0a22a435 (diff)
Core/Instances: Add new config options to control the time when both daily and weekly resets occur (will not be restricted to instances only)
Diffstat (limited to 'src/server/game')
-rw-r--r--src/server/game/Instances/InstanceLockMgr.cpp6
-rw-r--r--src/server/game/World/World.cpp3
-rw-r--r--src/server/game/World/World.h3
3 files changed, 6 insertions, 6 deletions
diff --git a/src/server/game/Instances/InstanceLockMgr.cpp b/src/server/game/Instances/InstanceLockMgr.cpp
index 1e2eb22cbe6..3b66f39eadc 100644
--- a/src/server/game/Instances/InstanceLockMgr.cpp
+++ b/src/server/game/Instances/InstanceLockMgr.cpp
@@ -455,14 +455,12 @@ std::pair<InstanceResetTimePoint, InstanceResetTimePoint> InstanceLockMgr::Updat
return { InstanceResetTimePoint::min(), InstanceResetTimePoint::min() };
}
-#include "Config.h"
-
InstanceResetTimePoint InstanceLockMgr::GetNextResetTime(MapDb2Entries const& entries)
{
tm dateTime = *GameTime::GetDateAndTime();
dateTime.tm_sec = 0;
dateTime.tm_min = 0;
- int32 resetHour = sConfigMgr->GetIntDefault("ResetSchedule.DailyHour", 9);
+ int32 resetHour = sWorld->getIntConfig(CONFIG_RESET_SCHEDULE_HOUR);
switch (entries.MapDifficulty->ResetInterval)
{
case MAP_DIFFICULTY_RESET_DAILY:
@@ -475,7 +473,7 @@ InstanceResetTimePoint InstanceLockMgr::GetNextResetTime(MapDb2Entries const& en
}
case MAP_DIFFICULTY_RESET_WEEKLY:
{
- int32 resetDay = sConfigMgr->GetIntDefault("ResetSchedule.WeeklyDay", 2);
+ int32 resetDay = sWorld->getIntConfig(CONFIG_RESET_SCHEDULE_WEEK_DAY);
int32 daysAdjust = resetDay - dateTime.tm_wday;
if (dateTime.tm_wday > resetDay || (dateTime.tm_wday == resetDay && dateTime.tm_hour >= resetHour))
daysAdjust += 7; // passed it for current week, grab time from next week
diff --git a/src/server/game/World/World.cpp b/src/server/game/World/World.cpp
index 21960dc7b0a..097590d2300 100644
--- a/src/server/game/World/World.cpp
+++ b/src/server/game/World/World.cpp
@@ -1111,7 +1111,8 @@ void World::LoadConfigSettings(bool reload)
m_bool_configs[CONFIG_INSTANCE_IGNORE_RAID] = sConfigMgr->GetBoolDefault("Instance.IgnoreRaid", false);
m_bool_configs[CONFIG_CAST_UNSTUCK] = sConfigMgr->GetBoolDefault("CastUnstuck", true);
- m_int_configs[CONFIG_INSTANCE_RESET_TIME_HOUR] = sConfigMgr->GetIntDefault("Instance.ResetTimeHour", 4);
+ m_int_configs[CONFIG_RESET_SCHEDULE_WEEK_DAY] = sConfigMgr->GetIntDefault("ResetSchedule.WeekDay", 2);
+ m_int_configs[CONFIG_RESET_SCHEDULE_HOUR] = sConfigMgr->GetIntDefault("ResetSchedule.Hour", 8);
m_int_configs[CONFIG_INSTANCE_UNLOAD_DELAY] = sConfigMgr->GetIntDefault("Instance.UnloadDelay", 30 * MINUTE * IN_MILLISECONDS);
m_int_configs[CONFIG_DAILY_QUEST_RESET_TIME_HOUR] = sConfigMgr->GetIntDefault("Quests.DailyResetTime", 3);
diff --git a/src/server/game/World/World.h b/src/server/game/World/World.h
index 044990acecd..1d390fc2c08 100644
--- a/src/server/game/World/World.h
+++ b/src/server/game/World/World.h
@@ -267,7 +267,8 @@ enum WorldIntConfigs
CONFIG_CURRENCY_RESET_INTERVAL,
CONFIG_MAX_RECRUIT_A_FRIEND_BONUS_PLAYER_LEVEL,
CONFIG_MAX_RECRUIT_A_FRIEND_BONUS_PLAYER_LEVEL_DIFFERENCE,
- CONFIG_INSTANCE_RESET_TIME_HOUR,
+ CONFIG_RESET_SCHEDULE_WEEK_DAY,
+ CONFIG_RESET_SCHEDULE_HOUR,
CONFIG_INSTANCE_UNLOAD_DELAY,
CONFIG_DAILY_QUEST_RESET_TIME_HOUR,
CONFIG_WEEKLY_QUEST_RESET_TIME_WDAY,