aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGacko <gacko28@gmx.de>2013-06-29 10:56:58 -0700
committerGacko <gacko28@gmx.de>2013-06-29 10:56:58 -0700
commit83066a200202d7a487d11389e73173c1db0c391e (patch)
treeaad25b6796cafeb8c8ee621c9c4c7b8bd71f43e3 /src
parent13bd999b7dda6726f9741f708f0865343da4d7a4 (diff)
parentfb727166681bcb1a8cfe7cdc9bd627ad159a2d7e (diff)
Merge pull request #10148 from Naios/pd_u2
Core/PhaseMgr: Fixed an updateleak that occured if the rewarded quest hadn't requirements
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Entities/Player/Player.cpp28
1 files changed, 16 insertions, 12 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index 153f6c3da89..c335a180e43 100644
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -3177,10 +3177,10 @@ void Player::GiveLevel(uint8 level)
UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_REACH_LEVEL);
- PhaseUpdateData phaseUdateData;
- phaseUdateData.AddConditionType(CONDITION_LEVEL);
+ PhaseUpdateData phaseUpdateData;
+ phaseUpdateData.AddConditionType(CONDITION_LEVEL);
- phaseMgr.NotifyConditionChanged(phaseUdateData);
+ phaseMgr.NotifyConditionChanged(phaseUpdateData);
// Refer-A-Friend
if (GetSession()->GetRecruiterId())
@@ -15396,6 +15396,10 @@ void Player::RewardQuest(Quest const* quest, uint32 reward, Object* questGiver,
m_RewardedQuests.insert(quest_id);
m_RewardedQuestsSave[quest_id] = true;
+ PhaseUpdateData phaseUpdateData;
+ phaseUpdateData.AddQuestUpdate(quest_id);
+ phaseMgr.NotifyConditionChanged(phaseUpdateData);
+
// StoreNewItem, mail reward, etc. save data directly to the database
// to prevent exploitable data desynchronisation we save the quest status to the database too
// (to prevent rewarding this quest another time while rewards were already given out)
@@ -15973,10 +15977,10 @@ void Player::SetQuestStatus(uint32 quest_id, QuestStatus status)
m_QuestStatusSave[quest_id] = true;
}
- PhaseUpdateData phaseUdateData;
- phaseUdateData.AddQuestUpdate(quest_id);
+ PhaseUpdateData phaseUpdateData;
+ phaseUpdateData.AddQuestUpdate(quest_id);
- phaseMgr.NotifyConditionChanged(phaseUdateData);
+ phaseMgr.NotifyConditionChanged(phaseUpdateData);
uint32 zone = 0, area = 0;
@@ -16013,10 +16017,10 @@ void Player::RemoveActiveQuest(uint32 quest_id)
m_QuestStatus.erase(itr);
m_QuestStatusSave[quest_id] = false;
- PhaseUpdateData phaseUdateData;
- phaseUdateData.AddQuestUpdate(quest_id);
+ PhaseUpdateData phaseUpdateData;
+ phaseUpdateData.AddQuestUpdate(quest_id);
- phaseMgr.NotifyConditionChanged(phaseUdateData);
+ phaseMgr.NotifyConditionChanged(phaseUpdateData);
return;
}
}
@@ -16029,10 +16033,10 @@ void Player::RemoveRewardedQuest(uint32 quest_id)
m_RewardedQuests.erase(rewItr);
m_RewardedQuestsSave[quest_id] = false;
- PhaseUpdateData phaseUdateData;
- phaseUdateData.AddQuestUpdate(quest_id);
+ PhaseUpdateData phaseUpdateData;
+ phaseUpdateData.AddQuestUpdate(quest_id);
- phaseMgr.NotifyConditionChanged(phaseUdateData);
+ phaseMgr.NotifyConditionChanged(phaseUpdateData);
}
}