Core/Quests: Reset seasonal quests based on saved completion time and intended holiday start time
This commit is contained in:
1 parent
e7f8a0e086
commit
3ae02de71b
9 files changed
+63
-22
No files matched your search
@@ -3513,17 +3513,18 @@ void World::SetPlayerSecurityLimit(AccountTypes _sec)
|
||||
KickAllLess(m_allowedSecurityLevel);
|
||||
}
|
||||
|
||||
void World::ResetEventSeasonalQuests(uint16 event_id)
|
||||
void World::ResetEventSeasonalQuests(uint16 event_id, time_t eventStartTime)
|
||||
{
|
||||
TC_LOG_INFO("misc", "Seasonal quests reset for all characters.");
|
||||
|
||||
CharacterDatabasePreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_RESET_CHARACTER_QUESTSTATUS_SEASONAL_BY_EVENT);
|
||||
stmt->setUInt16(0, event_id);
|
||||
stmt->setInt64(1, eventStartTime);
|
||||
CharacterDatabase.Execute(stmt);
|
||||
|
||||
for (SessionMap::const_iterator itr = m_sessions.begin(); itr != m_sessions.end(); ++itr)
|
||||
if (itr->second->GetPlayer())
|
||||
itr->second->GetPlayer()->ResetSeasonalQuestStatus(event_id);
|
||||
itr->second->GetPlayer()->ResetSeasonalQuestStatus(event_id, eventStartTime);
|
||||
}
|
||||
|
||||
void World::ResetRandomBG()
|
||||
|
||||
@@ -787,8 +787,8 @@ class TC_GAME_API World
|
||||
void UpdateAreaDependentAuras();
|
||||
|
||||
uint32 GetCleaningFlags() const { return m_CleaningFlags; }
|
||||
void SetCleaningFlags(uint32 flags) { m_CleaningFlags = flags; }
|
||||
void ResetEventSeasonalQuests(uint16 event_id);
|
||||
void SetCleaningFlags(uint32 flags) { m_CleaningFlags = flags; }
|
||||
void ResetEventSeasonalQuests(uint16 event_id, time_t eventStartTime);
|
||||
|
||||
void ReloadRBAC();
|
||||
|
||||
|
||||
Reference in new issue
Block a user