From 642ed8a5d27734bee5ccafb3ae3646d2bee74659 Mon Sep 17 00:00:00 2001 From: Naios Date: Sat, 29 Jun 2013 15:44:32 +0200 Subject: Core/PhaseMgr: Fixed an updateleak that occured if the rewarded quest hadn't requirements * Fixed the range for phase ids in the phase_definition table * solves http://www.trinitycore.org/f/topic/8737-condition-quest-rewarded-dosnt-work-instantly/ --- src/server/game/Entities/Player/Player.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/server') diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 153f6c3da89..5f82f07234f 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -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 phaseUdateData; + phaseUdateData.AddQuestUpdate(quest_id); + phaseMgr.NotifyConditionChanged(phaseUdateData); + // 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) -- cgit v1.2.3 From fb727166681bcb1a8cfe7cdc9bd627ad159a2d7e Mon Sep 17 00:00:00 2001 From: Gacko Date: Sat, 29 Jun 2013 16:47:08 +0200 Subject: Fix typos in previous commit --- src/server/game/Entities/Player/Player.cpp | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) (limited to 'src/server') diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 5f82f07234f..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,9 +15396,9 @@ void Player::RewardQuest(Quest const* quest, uint32 reward, Object* questGiver, m_RewardedQuests.insert(quest_id); m_RewardedQuestsSave[quest_id] = true; - PhaseUpdateData phaseUdateData; - phaseUdateData.AddQuestUpdate(quest_id); - phaseMgr.NotifyConditionChanged(phaseUdateData); + 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 @@ -15977,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; @@ -16017,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; } } @@ -16033,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); } } -- cgit v1.2.3