aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorclick <click@gonnamakeyou.com>2012-03-28 19:31:06 +0200
committerclick <click@gonnamakeyou.com>2012-03-28 19:31:06 +0200
commit6237ddac34fe40e851dbf052d5911aa8ef076be1 (patch)
treed4b1bf001f4a601deb5cf49673dbd7b1a09afbe0 /src
parent007e9269fe91807de6974092eee4f9e87e33e1e6 (diff)
Partially revert a36a0a77ef75e66933ac5b8802a9ec7906acfd0b.
Cleaning databases for old/deprecated and expired quests should never be a developers choice specifically. This should be done by admins, not developers, through the use of the already existing paramters found in the worldserver config : CleanCharacterDB / PersistentCharacterCleanFlags An adjustment to the respective questloader prepared statement has been done to accomodate for the earlier change (by not loading such quests into memory at all). Documentation for how this cleanup-procedures work already exists in the core : doc/CharacterDBCleanup.txt.
Diffstat (limited to 'src')
-rwxr-xr-xsrc/server/game/Entities/Player/Player.cpp8
-rw-r--r--src/server/shared/Database/Implementation/CharacterDatabase.cpp2
2 files changed, 2 insertions, 8 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index 4b57e8e8fc0..1961d5dc452 100755
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -17962,14 +17962,8 @@ void Player::_LoadQuestStatus(PreparedQueryResult result)
QuestStatusData& questStatusData = m_QuestStatus[quest_id];
uint8 qstatus = fields[1].GetUInt8();
- if (qstatus < MAX_QUEST_STATUS && qstatus > QUEST_STATUS_NONE)
+ if (qstatus < MAX_QUEST_STATUS)
questStatusData.Status = QuestStatus(qstatus);
- else if (qstatus == QUEST_STATUS_NONE)
- {
- sLog->outError("Player %s (GUID: %u) has QUEST_STATUS_NONE for quest %u and should be removed from character_queststatus.",
- GetName(), GetGUIDLow(), quest_id);
- continue;
- }
else
{
questStatusData.Status = QUEST_STATUS_INCOMPLETE;
diff --git a/src/server/shared/Database/Implementation/CharacterDatabase.cpp b/src/server/shared/Database/Implementation/CharacterDatabase.cpp
index 3d30e97544a..a9754cfc73d 100644
--- a/src/server/shared/Database/Implementation/CharacterDatabase.cpp
+++ b/src/server/shared/Database/Implementation/CharacterDatabase.cpp
@@ -71,7 +71,7 @@ void CharacterDatabaseConnection::DoPrepareStatements()
"base_amount0, base_amount1, base_amount2, maxduration, remaintime, remaincharges FROM character_aura WHERE guid = ?", CONNECTION_ASYNC)
PREPARE_STATEMENT(CHAR_SEL_CHARACTER_SPELL, "SELECT spell, active, disabled FROM character_spell WHERE guid = ?", CONNECTION_ASYNC)
PREPARE_STATEMENT(CHAR_SEL_CHARACTER_QUESTSTATUS, "SELECT quest, status, explored, timer, mobcount1, mobcount2, mobcount3, mobcount4, "
- "itemcount1, itemcount2, itemcount3, itemcount4, playercount FROM character_queststatus WHERE guid = ?", CONNECTION_ASYNC)
+ "itemcount1, itemcount2, itemcount3, itemcount4, playercount FROM character_queststatus WHERE guid = ? AND status <> 0", CONNECTION_ASYNC)
PREPARE_STATEMENT(CHAR_SEL_CHARACTER_DAILYQUESTSTATUS, "SELECT quest, time FROM character_queststatus_daily WHERE guid = ?", CONNECTION_ASYNC)
PREPARE_STATEMENT(CHAR_SEL_CHARACTER_WEEKLYQUESTSTATUS, "SELECT quest FROM character_queststatus_weekly WHERE guid = ?", CONNECTION_ASYNC)
PREPARE_STATEMENT(CHAR_SEL_CHARACTER_SEASONALQUESTSTATUS, "SELECT quest, event FROM character_queststatus_seasonal WHERE guid = ?", CONNECTION_ASYNC)