Core/Player: Split RemoveQuest into 2 separate functions

--HG--
branch : trunk
This commit is contained in:
linencloth
2010-12-26 21:34:08 +01:00
parent 07498c048c
commit efbc73d025
5 changed files with 12 additions and 6 deletions
+5 -2
View File
@@ -14641,7 +14641,7 @@ void Player::RewardQuest(Quest const *pQuest, uint32 reward, Object* questGiver,
} else if (pQuest->IsWeekly())
SetWeeklyQuestStatus(quest_id);
RemoveQuest(quest_id);
RemoveActiveQuest(quest_id);
m_RewardedQuests.insert(quest_id);
m_RewardedQuestsSave[quest_id] = true;
@@ -15210,7 +15210,7 @@ void Player::SetQuestStatus(uint32 quest_id, QuestStatus status)
UpdateForQuestWorldObjects();
}
void Player::RemoveQuest(uint32 quest_id)
void Player::RemoveActiveQuest(uint32 quest_id)
{
QuestStatusMap::iterator itr = m_QuestStatus.find(quest_id);
if (itr != m_QuestStatus.end())
@@ -15219,7 +15219,10 @@ void Player::RemoveQuest(uint32 quest_id)
m_QuestStatusSave[quest_id] = false;
return;
}
}
void Player::RemoveRewardedQuest(uint32 quest_id)
{
RewardedQuestSet::iterator rewItr = m_RewardedQuests.find(quest_id);
if (rewItr != m_RewardedQuests.end())
{
+2 -1
View File
@@ -1340,7 +1340,8 @@ class Player : public Unit, public GridObject<Player>
bool GetQuestRewardStatus(uint32 quest_id) const;
QuestStatus GetQuestStatus(uint32 quest_id) const;
void SetQuestStatus(uint32 quest_id, QuestStatus status);
void RemoveQuest(uint32 quest_id);
void RemoveActiveQuest(uint32 quest_id);
void RemoveRewardedQuest(uint32 quest_id);
void SetDailyQuestStatus(uint32 quest_id);
void SetWeeklyQuestStatus(uint32 quest_id);
@@ -409,7 +409,7 @@ void WorldSession::HandleQuestLogRemoveQuest(WorldPacket& recv_data)
}
_player->TakeQuestSourceItem(quest, true); // remove quest src item from player
_player->RemoveQuest(quest);
_player->RemoveActiveQuest(quest);
_player->GetAchievementMgr().RemoveTimedAchievement(ACHIEVEMENT_TIMED_TYPE_QUEST, quest);
sLog->outDetail("Player %u abandoned quest %u", _player->GetGUIDLow(), quest);
+2 -1
View File
@@ -6118,7 +6118,8 @@ void Spell::EffectQuestClear(SpellEffIndex effIndex)
}
}
pPlayer->RemoveQuest(quest_id);
pPlayer->RemoveActiveQuest(quest_id);
pPlayer->RemoveRewardedQuest(quest_id);
}
void Spell::EffectSendTaxi(SpellEffIndex effIndex)
+2 -1
View File
@@ -142,7 +142,8 @@ public:
}
}
player->RemoveQuest(entry);
player->RemoveActiveQuest(entry);
player->RemoveRewardedQuest(entry);
handler->SendSysMessage(LANG_COMMAND_QUEST_REMOVED);
return true;