![]() |
TrinityCore
|
#include <QuestObjectiveCriteriaMgr.h>
Inheritance diagram for QuestObjectiveCriteriaMgr:Public Member Functions | |
| QuestObjectiveCriteriaMgr (Player *owner) | |
| ~QuestObjectiveCriteriaMgr () | |
| void | CheckAllQuestObjectiveCriteria (Player *referencePlayer) |
| void | Reset () override |
| void | LoadFromDB (PreparedQueryResult objectiveResult, PreparedQueryResult criteriaResult) |
| void | SaveToDB (CharacterDatabaseTransaction trans) |
| void | ResetCriteriaTree (QuestObjective const *questObjective) |
| void | SendAllData (Player const *receiver) const override |
| void | CompletedObjective (QuestObjective const *questObjective, Player *referencePlayer) |
| bool | HasCompletedObjective (QuestObjective const *questObjective) const |
Public Member Functions inherited from CriteriaHandler | |
| CriteriaHandler () | |
| virtual | ~CriteriaHandler () |
| CriteriaHandler (CriteriaHandler const &right)=delete | |
| CriteriaHandler (CriteriaHandler &&right)=delete | |
| CriteriaHandler & | operator= (CriteriaHandler const &right)=delete |
| CriteriaHandler & | operator= (CriteriaHandler &&right)=delete |
| void | UpdateCriteria (CriteriaType type, uint64 miscValue1=0, uint64 miscValue2=0, uint64 miscValue3=0, WorldObject const *ref=nullptr, Player *referencePlayer=nullptr) |
| void | UpdateTimedCriteria (Milliseconds timeDiff) |
| void | StartCriteria (CriteriaStartEvent startEvent, uint32 entry, Milliseconds timeLost=Milliseconds::zero()) |
| virtual void | FailCriteria (CriteriaFailEvent failEvent, uint32 asset) |
Static Public Member Functions | |
| static void | DeleteFromDB (ObjectGuid const &guid) |
Protected Member Functions | |
| void | SendCriteriaUpdate (Criteria const *entry, CriteriaProgress const *progress, Seconds timeElapsed, bool timedCompleted) const override |
| void | SendCriteriaProgressRemoved (uint32 criteriaId) override |
| bool | CanUpdateCriteriaTree (Criteria const *criteria, CriteriaTree const *tree, Player *referencePlayer) const override |
| bool | CanCompleteCriteriaTree (CriteriaTree const *tree) override |
| void | CompletedCriteriaTree (CriteriaTree const *tree, Player *referencePlayer) override |
| void | SendPacket (WorldPacket const *data) const override |
| std::string | GetOwnerInfo () const override |
| CriteriaList const & | GetCriteriaByType (CriteriaType type, uint32 asset) const override |
| bool | RequiredAchievementSatisfied (uint32 achievementId) const override |
Protected Member Functions inherited from CriteriaHandler | |
| void | UpdateCriteria (Criteria const *criteria, uint64 miscValue1=0, uint64 miscValue2=0, uint64 miscValue3=0, WorldObject const *ref=nullptr, Player *referencePlayer=nullptr) |
| CriteriaProgress * | GetCriteriaProgress (Criteria const *entry) |
| void | SetCriteriaProgress (Criteria const *criteria, uint64 changeValue, Player *referencePlayer, ProgressType progressType=PROGRESS_SET) |
| void | RemoveCriteriaProgress (Criteria const *criteria) |
| bool | IsCompletedCriteriaTree (CriteriaTree const *tree) |
| virtual void | AfterCriteriaTreeUpdate (CriteriaTree const *, Player *) |
| bool | IsCompletedCriteria (Criteria const *criteria, uint64 requiredAmount) |
| bool | CanUpdateCriteria (Criteria const *criteria, CriteriaTreeList const *trees, uint64 miscValue1, uint64 miscValue2, uint64 miscValue3, WorldObject const *ref, Player *referencePlayer) |
| bool | ConditionsSatisfied (Criteria const *criteria, Player *referencePlayer) const |
| bool | RequirementsSatisfied (Criteria const *criteria, uint64 miscValue1, uint64 miscValue2, uint64 miscValue3, WorldObject const *ref, Player *referencePlayer) const |
| bool | ModifierTreeSatisfied (ModifierTreeNode const *parent, uint64 miscValue1, uint64 miscValue2, WorldObject const *ref, Player *referencePlayer) const |
| bool | ModifierSatisfied (ModifierTreeEntry const *modifier, uint64 miscValue1, uint64 miscValue2, WorldObject const *ref, Player *referencePlayer) const |
Private Attributes | |
| Player * | _owner |
| std::unordered_set< uint32 > | _completedObjectives |
Additional Inherited Members | |
Protected Attributes inherited from CriteriaHandler | |
| CriteriaProgressMap | _criteriaProgress |
| std::unordered_map< uint32, Milliseconds > | _startedCriteria |
Definition at line 24 of file QuestObjectiveCriteriaMgr.h.
|
explicit |
Definition at line 30 of file QuestObjectiveCriteriaMgr.cpp.
| QuestObjectiveCriteriaMgr::~QuestObjectiveCriteriaMgr | ( | ) |
Definition at line 34 of file QuestObjectiveCriteriaMgr.cpp.
|
overrideprotectedvirtual |
Reimplemented from CriteriaHandler.
Definition at line 289 of file QuestObjectiveCriteriaMgr.cpp.
References CriteriaHandler::CanCompleteCriteriaTree(), and CriteriaTree::QuestObjective.
|
overrideprotectedvirtual |
Reimplemented from CriteriaHandler.
Definition at line 250 of file QuestObjectiveCriteriaMgr.cpp.
References _owner, ASSERT_NOTNULL, CriteriaHandler::CanUpdateCriteriaTree(), Criteria::Entry, Player::FindQuestSlot(), CriteriaMgr::GetCriteriaTypeString(), Map::GetDifficultyID(), Player::GetGroup(), WorldObject::GetMap(), Player::GetQuestStatus(), HasCompletedObjective(), Criteria::ID, QuestObjective::ID, Quest::IsAllowedInRaid(), Player::IsQuestObjectiveCompletable(), Group::isRaidGroup(), MAX_QUEST_LOG_SIZE, QUEST_STATUS_INCOMPLETE, QuestObjective::QuestID, CriteriaTree::QuestObjective, sObjectMgr, TC_LOG_TRACE, and CriteriaEntry::Type.
| void QuestObjectiveCriteriaMgr::CheckAllQuestObjectiveCriteria | ( | Player * | referencePlayer | ) |
Definition at line 38 of file QuestObjectiveCriteriaMgr.cpp.
References CriteriaMgr::GetRetroactivelyUpdateableCriteriaTypes(), and CriteriaHandler::UpdateCriteria().
Referenced by Reset().
|
overrideprotectedvirtual |
Implements CriteriaHandler.
Definition at line 298 of file QuestObjectiveCriteriaMgr.cpp.
References CompletedObjective(), CriteriaHandler::IsCompletedCriteriaTree(), QuestObjective::ObjectID, CriteriaTree::QuestObjective, and sCriteriaMgr.
| void QuestObjectiveCriteriaMgr::CompletedObjective | ( | QuestObjective const * | questObjective, |
| Player * | referencePlayer | ||
| ) |
Definition at line 207 of file QuestObjectiveCriteriaMgr.cpp.
References _completedObjectives, _owner, GetOwnerInfo(), HasCompletedObjective(), QuestObjective::ID, Player::KillCreditCriteriaTreeObjective(), and TC_LOG_INFO.
Referenced by CompletedCriteriaTree().
|
static |
Definition at line 58 of file QuestObjectiveCriteriaMgr.cpp.
References CHAR_DEL_CHAR_QUESTSTATUS_OBJECTIVES_CRITERIA, CHAR_DEL_CHAR_QUESTSTATUS_OBJECTIVES_CRITERIA_PROGRESS, CharacterDatabase, ObjectGuid::GetCounter(), and PreparedStatementBase::setUInt64().
Referenced by Reset().
|
overrideprotectedvirtual |
Implements CriteriaHandler.
Definition at line 319 of file QuestObjectiveCriteriaMgr.cpp.
References sCriteriaMgr.
|
overrideprotectedvirtual |
Implements CriteriaHandler.
Definition at line 314 of file QuestObjectiveCriteriaMgr.cpp.
References _owner, BaseEntity::GetGUID(), WorldObject::GetName(), Trinity::StringFormat(), and ObjectGuid::ToString().
Referenced by CompletedObjective().
| bool QuestObjectiveCriteriaMgr::HasCompletedObjective | ( | QuestObjective const * | questObjective | ) | const |
Definition at line 219 of file QuestObjectiveCriteriaMgr.cpp.
References _completedObjectives, and QuestObjective::ID.
Referenced by CanUpdateCriteriaTree(), and CompletedObjective().
| void QuestObjectiveCriteriaMgr::LoadFromDB | ( | PreparedQueryResult | objectiveResult, |
| PreparedQueryResult | criteriaResult | ||
| ) |
Definition at line 73 of file QuestObjectiveCriteriaMgr.cpp.
References _completedObjectives, CriteriaHandler::_criteriaProgress, CriteriaProgress::Changed, CHAR_DEL_INVALID_QUEST_PROGRESS_CRITERIA, CharacterDatabase, CriteriaProgress::Counter, CriteriaProgress::Date, Criteria::Entry, GameTime::GetGameTime(), Field::GetInt64(), Field::GetUInt32(), Field::GetUInt64(), sCriteriaMgr, PreparedStatementBase::setUInt32(), sObjectMgr, CriteriaEntry::StartTimer, and TC_LOG_ERROR.
|
overrideprotectedvirtual |
Reimplemented from CriteriaHandler.
Definition at line 324 of file QuestObjectiveCriteriaMgr.cpp.
References _owner, and Player::HasAchieved().
|
overridevirtual |
Reimplemented from CriteriaHandler.
Definition at line 45 of file QuestObjectiveCriteriaMgr.cpp.
References CriteriaHandler::_criteriaProgress, _owner, CheckAllQuestObjectiveCriteria(), DeleteFromDB(), BaseEntity::GetGUID(), and SendCriteriaProgressRemoved().
| void QuestObjectiveCriteriaMgr::ResetCriteriaTree | ( | QuestObjective const * | questObjective | ) |
Definition at line 168 of file QuestObjectiveCriteriaMgr.cpp.
References _completedObjectives, _owner, advstd::ranges::contains, CriteriaTree::Criteria, Criteria::Entry, CriteriaMgr::GetRetroactivelyUpdateableCriteriaTypes(), QuestObjective::ID, QuestObjective::ObjectID, CriteriaHandler::RemoveCriteriaProgress(), sCriteriaMgr, CriteriaEntry::Type, CriteriaHandler::UpdateCriteria(), and CriteriaMgr::WalkCriteriaTree().
| void QuestObjectiveCriteriaMgr::SaveToDB | ( | CharacterDatabaseTransaction | trans | ) |
Definition at line 124 of file QuestObjectiveCriteriaMgr.cpp.
References _completedObjectives, CriteriaHandler::_criteriaProgress, _owner, CHAR_DEL_CHAR_QUESTSTATUS_OBJECTIVES_CRITERIA, CHAR_DEL_CHAR_QUESTSTATUS_OBJECTIVES_CRITERIA_PROGRESS_BY_CRITERIA, CHAR_INS_CHAR_QUESTSTATUS_OBJECTIVES_CRITERIA, CHAR_INS_CHAR_QUESTSTATUS_OBJECTIVES_CRITERIA_PROGRESS, CharacterDatabase, ObjectGuid::GetCounter(), BaseEntity::GetGUID(), PreparedStatementBase::setInt64(), PreparedStatementBase::setUInt32(), and PreparedStatementBase::setUInt64().
|
overridevirtual |
Implements CriteriaHandler.
Definition at line 188 of file QuestObjectiveCriteriaMgr.cpp.
References CriteriaHandler::_criteriaProgress, _owner, WorldPackets::Achievement::CriteriaUpdate::CreationTime, WorldPackets::Achievement::CriteriaUpdate::CriteriaID, WorldPackets::Achievement::CriteriaUpdate::CurrentTime, WorldPackets::Achievement::CriteriaUpdate::Flags, BaseEntity::GetGUID(), Player::GetSession(), WorldSession::GetTimezoneOffset(), WorldPackets::Achievement::CriteriaUpdate::PlayerGUID, WorldPackets::Achievement::CriteriaUpdate::Quantity, SendPacket(), WowTime::SetUtcTimeFromUnixTime(), and WorldPackets::Achievement::CriteriaUpdate::Write().
|
overrideprotectedvirtual |
Implements CriteriaHandler.
Definition at line 243 of file QuestObjectiveCriteriaMgr.cpp.
References WorldPackets::Achievement::CriteriaDeleted::CriteriaID, SendPacket(), and WorldPackets::Achievement::CriteriaDeleted::Write().
Referenced by Reset().
|
overrideprotectedvirtual |
Implements CriteriaHandler.
Definition at line 224 of file QuestObjectiveCriteriaMgr.cpp.
References _owner, CriteriaProgress::Counter, WorldPackets::Achievement::CriteriaUpdate::CreationTime, WorldPackets::Achievement::CriteriaUpdate::CriteriaID, WorldPackets::Achievement::CriteriaUpdate::CurrentTime, CriteriaProgress::Date, WorldPackets::Achievement::CriteriaUpdate::ElapsedTime, Criteria::Entry, WorldPackets::Achievement::CriteriaUpdate::Flags, BaseEntity::GetGUID(), Player::GetSession(), WorldSession::GetTimezoneOffset(), Criteria::ID, WorldPackets::Achievement::CriteriaUpdate::PlayerGUID, WorldPackets::Achievement::CriteriaUpdate::Quantity, SendPacket(), WowTime::SetUtcTimeFromUnixTime(), CriteriaEntry::StartTimer, and WorldPackets::Achievement::CriteriaUpdate::Write().
|
overrideprotectedvirtual |
Implements CriteriaHandler.
Definition at line 309 of file QuestObjectiveCriteriaMgr.cpp.
References _owner, and Player::SendDirectMessage().
Referenced by SendAllData(), SendCriteriaProgressRemoved(), and SendCriteriaUpdate().
|
private |
Definition at line 63 of file QuestObjectiveCriteriaMgr.h.
Referenced by CompletedObjective(), HasCompletedObjective(), LoadFromDB(), ResetCriteriaTree(), and SaveToDB().
|
private |
Definition at line 62 of file QuestObjectiveCriteriaMgr.h.
Referenced by CanUpdateCriteriaTree(), CompletedObjective(), GetOwnerInfo(), RequiredAchievementSatisfied(), Reset(), ResetCriteriaTree(), SaveToDB(), SendAllData(), SendCriteriaUpdate(), and SendPacket().