From 2ecb9eec8b8bbd118431c4f799e3253f0aaefd75 Mon Sep 17 00:00:00 2001 From: linencloth Date: Tue, 28 Dec 2010 04:26:25 +0100 Subject: Core/CharacterDatabaseCleaner: Implement CLEANING_FLAG_QUESTSTATUS flag for queststatus cleaning (most of the deleted rows are abandoned quests) --HG-- branch : trunk --- src/server/game/Tools/CharacterDatabaseCleaner.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/server/game/Tools/CharacterDatabaseCleaner.cpp') diff --git a/src/server/game/Tools/CharacterDatabaseCleaner.cpp b/src/server/game/Tools/CharacterDatabaseCleaner.cpp index fff3fce0ad6..75fe2fb18fd 100644 --- a/src/server/game/Tools/CharacterDatabaseCleaner.cpp +++ b/src/server/game/Tools/CharacterDatabaseCleaner.cpp @@ -52,6 +52,9 @@ void CharacterDatabaseCleaner::CleanDatabase() if (flags & CLEANING_FLAG_TALENTS) CleanCharacterTalent(); + if (flags & CLEANING_FLAG_QUESTSTATUS) + CleanCharacterQuestStatus(); + CharacterDatabase.DirectExecute("UPDATE worldstates SET value = 0 WHERE entry = 20004"); sLog->outString(">> Cleaned character database in %u ms", GetMSTimeDiffToNow(oldMSTime)); @@ -143,3 +146,8 @@ void CharacterDatabaseCleaner::CleanCharacterTalent() CheckUnique("spell", "character_talent", &TalentCheck); } +void CharacterDatabaseCleaner::CleanCharacterQuestStatus() +{ + CharacterDatabase.DirectExecute("DELETE FROM character_queststatus WHERE status = 0"); +} + -- cgit v1.2.3