Core/CharacterDatabaseCleaner: Implement CLEANING_FLAG_QUESTSTATUS flag for queststatus cleaning (most of the deleted rows are abandoned quests)
--HG-- branch : trunk
This commit is contained in:
1 parent
1d9a75c338
commit
2ecb9eec8b
3 files changed
+12
-1
No files matched your search
@@ -9,6 +9,7 @@ from characters in the database.
|
|||||||
CLEANING_FLAG_SKILLS = 0x2
|
CLEANING_FLAG_SKILLS = 0x2
|
||||||
CLEANING_FLAG_SPELLS = 0x4
|
CLEANING_FLAG_SPELLS = 0x4
|
||||||
CLEANING_FLAG_TALENTS = 0x8
|
CLEANING_FLAG_TALENTS = 0x8
|
||||||
|
CLEANING_FLAG_QUESTSTATUS = 0x10
|
||||||
|
|
||||||
Example:
|
Example:
|
||||||
We want to clean up old talents, spells and skills, but leave
|
We want to clean up old talents, spells and skills, but leave
|
||||||
|
|||||||
@@ -52,6 +52,9 @@ void CharacterDatabaseCleaner::CleanDatabase()
|
|||||||
if (flags & CLEANING_FLAG_TALENTS)
|
if (flags & CLEANING_FLAG_TALENTS)
|
||||||
CleanCharacterTalent();
|
CleanCharacterTalent();
|
||||||
|
|
||||||
|
if (flags & CLEANING_FLAG_QUESTSTATUS)
|
||||||
|
CleanCharacterQuestStatus();
|
||||||
|
|
||||||
CharacterDatabase.DirectExecute("UPDATE worldstates SET value = 0 WHERE entry = 20004");
|
CharacterDatabase.DirectExecute("UPDATE worldstates SET value = 0 WHERE entry = 20004");
|
||||||
|
|
||||||
sLog->outString(">> Cleaned character database in %u ms", GetMSTimeDiffToNow(oldMSTime));
|
sLog->outString(">> Cleaned character database in %u ms", GetMSTimeDiffToNow(oldMSTime));
|
||||||
@@ -143,3 +146,8 @@ void CharacterDatabaseCleaner::CleanCharacterTalent()
|
|||||||
CheckUnique("spell", "character_talent", &TalentCheck);
|
CheckUnique("spell", "character_talent", &TalentCheck);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CharacterDatabaseCleaner::CleanCharacterQuestStatus()
|
||||||
|
{
|
||||||
|
CharacterDatabase.DirectExecute("DELETE FROM character_queststatus WHERE status = 0");
|
||||||
|
}
|
||||||
|
|
||||||
@@ -26,7 +26,8 @@ namespace CharacterDatabaseCleaner
|
|||||||
CLEANING_FLAG_ACHIEVEMENT_PROGRESS = 0x1,
|
CLEANING_FLAG_ACHIEVEMENT_PROGRESS = 0x1,
|
||||||
CLEANING_FLAG_SKILLS = 0x2,
|
CLEANING_FLAG_SKILLS = 0x2,
|
||||||
CLEANING_FLAG_SPELLS = 0x4,
|
CLEANING_FLAG_SPELLS = 0x4,
|
||||||
CLEANING_FLAG_TALENTS = 0x8
|
CLEANING_FLAG_TALENTS = 0x8,
|
||||||
|
CLEANING_FLAG_QUESTSTATUS = 0x10
|
||||||
};
|
};
|
||||||
|
|
||||||
void CleanDatabase();
|
void CleanDatabase();
|
||||||
@@ -42,6 +43,7 @@ namespace CharacterDatabaseCleaner
|
|||||||
void CleanCharacterSkills();
|
void CleanCharacterSkills();
|
||||||
void CleanCharacterSpell();
|
void CleanCharacterSpell();
|
||||||
void CleanCharacterTalent();
|
void CleanCharacterTalent();
|
||||||
|
void CleanCharacterQuestStatus();
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
Reference in new issue
Block a user