![]() |
TrinityCore
|
#include <AchievementMgr.h>
Inheritance diagram for GuildAchievementMgr:Public Member Functions | |
| GuildAchievementMgr (Guild *owner) | |
| void | Reset () override |
| void | LoadFromDB (PreparedQueryResult achievementResult, PreparedQueryResult criteriaResult) |
| void | SaveToDB (CharacterDatabaseTransaction trans) |
| void | SendAllData (Player const *receiver) const override |
| void | SendAchievementInfo (Player *receiver, uint32 achievementId=0) const |
| void | SendAllTrackedCriterias (Player *receiver, std::set< uint32 > const &trackedCriterias) const |
| void | SendAchievementMembers (Player *receiver, uint32 achievementId) const |
| void | CompletedAchievement (AchievementEntry const *entry, Player *referencePlayer) override |
Public Member Functions inherited from AchievementMgr | |
| AchievementMgr () | |
| ~AchievementMgr () | |
| void | CheckAllAchievementCriteria (Player *referencePlayer) |
| bool | HasAchieved (uint32 achievementId) const |
| uint32 | GetAchievementPoints () const |
| std::vector< uint32 > | GetCompletedAchievementIds () 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 |
| void | SendAchievementEarned (AchievementEntry const *achievement) const |
| void | SendPacket (WorldPacket const *data) const override |
| std::string | GetOwnerInfo () const override |
| CriteriaList const & | GetCriteriaByType (CriteriaType type, uint32 asset) const override |
Protected Member Functions inherited from AchievementMgr | |
| 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 | AfterCriteriaTreeUpdate (CriteriaTree const *tree, Player *referencePlayer) override |
| bool | IsCompletedAchievement (AchievementEntry const *entry) |
| 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) |
| 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 | |
| Guild * | _owner |
Additional Inherited Members | |
Protected Attributes inherited from AchievementMgr | |
| std::unordered_map< uint32, CompletedAchievementData > | _completedAchievements |
| uint32 | _achievementPoints |
Protected Attributes inherited from CriteriaHandler | |
| CriteriaProgressMap | _criteriaProgress |
| std::unordered_map< uint32, Milliseconds > | _startedCriteria |
Definition at line 111 of file AchievementMgr.h.
|
explicit |
Definition at line 691 of file AchievementMgr.cpp.
|
overridevirtual |
Implements AchievementMgr.
Definition at line 943 of file AchievementMgr.cpp.
References AchievementMgr::_achievementPoints, AchievementMgr::_completedAchievements, _owner, ACHIEVEMENT_FLAG_COUNTER, ACHIEVEMENT_FLAG_REALM_FIRST_KILL, ACHIEVEMENT_FLAG_REALM_FIRST_REACH, ACHIEVEMENT_FLAG_SHOW_GUILD_MEMBERS, ACHIEVEMENT_FLAG_SHOW_IN_GUILD_HEADER, ACHIEVEMENT_FLAG_SHOW_IN_GUILD_NEWS, ACHIEVEMENT_FLAG_TRACKING_FLAG, CompletedAchievementData::Changed, CompletedAchievementData::CompletingPlayers, CompletedAchievementData::Date, EarnAchievement, EarnAchievementPoints, ObjectGuid::Empty, AchievementEntry::Flags, GameTime::GetGameTime(), Player::GetGroup(), BaseEntity::GetGUID(), Player::GetGuild(), Player::GetGuildId(), Guild::GetId(), GUILD_NEWS_GUILD_ACHIEVEMENT, AchievementMgr::HasAchieved(), AchievementEntry::ID, AchievementEntry::Points, sAchievementMgr, SendAchievementEarned(), sScriptMgr, TC_LOG_DEBUG, and CriteriaHandler::UpdateCriteria().
|
static |
Definition at line 718 of file AchievementMgr.cpp.
References CHAR_DEL_ALL_GUILD_ACHIEVEMENT_CRITERIA, CHAR_DEL_ALL_GUILD_ACHIEVEMENTS, CharacterDatabase, ObjectGuid::GetCounter(), and PreparedStatementBase::setUInt64().
Referenced by Reset().
|
overrideprotectedvirtual |
Implements CriteriaHandler.
Definition at line 1038 of file AchievementMgr.cpp.
References sCriteriaMgr.
|
overrideprotectedvirtual |
Implements CriteriaHandler.
Definition at line 1051 of file AchievementMgr.cpp.
References _owner, Guild::GetId(), Guild::GetName(), and Trinity::StringFormat().
| void GuildAchievementMgr::LoadFromDB | ( | PreparedQueryResult | achievementResult, |
| PreparedQueryResult | criteriaResult | ||
| ) |
Definition at line 733 of file AchievementMgr.cpp.
References AchievementMgr::_achievementPoints, AchievementMgr::_completedAchievements, CriteriaHandler::_criteriaProgress, CompletedAchievementData::Changed, CriteriaProgress::Changed, CHAR_DEL_INVALID_ACHIEV_PROGRESS_CRITERIA_GUILD, CharacterDatabase, CompletedAchievementData::CompletingPlayers, CriteriaProgress::Counter, CompletedAchievementData::Date, CriteriaProgress::Date, Criteria::Entry, GameTime::GetGameTime(), Field::GetInt64(), Field::GetUInt32(), Field::GetUInt64(), CriteriaProgress::PlayerGUID, AchievementEntry::Points, sAchievementStore, sCriteriaMgr, PreparedStatementBase::setUInt32(), CriteriaEntry::StartTimer, TC_LOG_ERROR, and Trinity::Tokenize().
|
overridevirtual |
Reimplemented from CriteriaHandler.
Definition at line 695 of file AchievementMgr.cpp.
References AchievementMgr::_achievementPoints, AchievementMgr::_completedAchievements, _owner, WorldPackets::Achievement::GuildAchievementDeleted::AchievementID, Guild::BroadcastWorker(), DeleteFromDB(), Guild::GetGUID(), Player::GetSession(), WorldSession::GetTimezoneOffset(), GameTime::GetUtcWowTime(), WorldPackets::Achievement::GuildAchievementDeleted::GuildGUID, CriteriaHandler::Reset(), Player::SendDirectMessage(), WorldPackets::Achievement::GuildAchievementDeleted::TimeDeleted, and WorldPackets::Achievement::GuildAchievementDeleted::Write().
| void GuildAchievementMgr::SaveToDB | ( | CharacterDatabaseTransaction | trans | ) |
Definition at line 794 of file AchievementMgr.cpp.
References AchievementMgr::_completedAchievements, CriteriaHandler::_criteriaProgress, _owner, CHAR_DEL_GUILD_ACHIEVEMENT, CHAR_DEL_GUILD_ACHIEVEMENT_CRITERIA, CHAR_INS_GUILD_ACHIEVEMENT, CHAR_INS_GUILD_ACHIEVEMENT_CRITERIA, CharacterDatabase, Guild::GetId(), PreparedStatementBase::setInt64(), PreparedStatementBase::setString(), PreparedStatementBase::setUInt32(), PreparedStatementBase::setUInt64(), and Trinity::StringFormatTo().
Referenced by Guild::SaveToDB().
|
protected |
Definition at line 1009 of file AchievementMgr.cpp.
References _owner, ACHIEVEMENT_FLAG_REALM_FIRST_KILL, ACHIEVEMENT_FLAG_REALM_FIRST_REACH, WorldPackets::Achievement::BroadcastAchievement::AchievementID, WorldPackets::Achievement::GuildAchievementEarned::AchievementID, Guild::BroadcastWorker(), AchievementEntry::Flags, Guild::GetGUID(), Guild::GetName(), Player::GetSession(), WorldSession::GetTimezoneOffset(), GameTime::GetUtcWowTime(), WorldPackets::Achievement::BroadcastAchievement::GuildAchievement, WorldPackets::Achievement::GuildAchievementEarned::GuildGUID, AchievementEntry::ID, WorldPackets::Achievement::BroadcastAchievement::Name, WorldPackets::Achievement::BroadcastAchievement::PlayerGUID, Player::SendDirectMessage(), sWorld, WorldPackets::Achievement::GuildAchievementEarned::TimeEarned, WorldPackets::Achievement::BroadcastAchievement::Write(), and WorldPackets::Achievement::GuildAchievementEarned::Write().
Referenced by CompletedAchievement().
Definition at line 870 of file AchievementMgr.cpp.
References CriteriaTree::Criteria, sAchievementStore, sCriteriaMgr, and CriteriaMgr::WalkCriteriaTree().
Definition at line 927 of file AchievementMgr.cpp.
References AchievementMgr::_completedAchievements, _owner, WorldPackets::Achievement::GuildAchievementMembers::AchievementID, Guild::GetGUID(), WorldPackets::Achievement::GuildAchievementMembers::GuildGUID, WorldPackets::Achievement::GuildAchievementMembers::Member, Player::SendDirectMessage(), and WorldPackets::Achievement::GuildAchievementMembers::Write().
Referenced by Guild::HandleGetAchievementMembers().
|
overridevirtual |
Implements CriteriaHandler.
Definition at line 849 of file AchievementMgr.cpp.
References AchievementMgr::_completedAchievements, WorldPackets::Achievement::EarnedAchievement::Date, WorldPackets::Achievement::AllGuildAchievements::Earned, Player::GetSession(), WorldSession::GetTimezoneOffset(), WorldPackets::Achievement::EarnedAchievement::Id, Player::SendDirectMessage(), WowTime::SetUtcTimeFromUnixTime(), and WorldPackets::Achievement::AllGuildAchievements::Write().
Referenced by Guild::SendLoginInfo().
| void GuildAchievementMgr::SendAllTrackedCriterias | ( | Player * | receiver, |
| std::set< uint32 > const & | trackedCriterias | ||
| ) | const |
Definition at line 902 of file AchievementMgr.cpp.
References CriteriaHandler::_criteriaProgress, WorldPackets::Achievement::GuildCriteriaProgress::CriteriaID, WorldPackets::Achievement::GuildCriteriaProgress::DateCreated, WorldPackets::Achievement::GuildCriteriaProgress::DateStarted, WorldPackets::Achievement::GuildCriteriaProgress::DateUpdated, WorldPackets::Achievement::GuildCriteriaProgress::Flags, Player::GetSession(), WorldSession::GetTimezoneOffset(), WorldPackets::Achievement::GuildCriteriaProgress::PlayerGUID, WorldPackets::Achievement::GuildCriteriaUpdate::Progress, WorldPackets::Achievement::GuildCriteriaProgress::Quantity, Player::SendDirectMessage(), WowTime::SetUtcTimeFromUnixTime(), and WorldPackets::Achievement::GuildCriteriaUpdate::Write().
Referenced by Guild::HandleSetAchievementTracking().
|
overrideprotectedvirtual |
Implements CriteriaHandler.
Definition at line 1001 of file AchievementMgr.cpp.
References _owner, WorldPackets::Achievement::GuildCriteriaDeleted::CriteriaID, Guild::GetGUID(), WorldPackets::Achievement::GuildCriteriaDeleted::GuildGUID, SendPacket(), and WorldPackets::Achievement::GuildCriteriaDeleted::Write().
|
overrideprotectedvirtual |
Implements CriteriaHandler.
Definition at line 982 of file AchievementMgr.cpp.
References _owner, CriteriaProgress::Counter, WorldPackets::Achievement::GuildCriteriaProgress::CriteriaID, CriteriaProgress::Date, WorldPackets::Achievement::GuildCriteriaProgress::DateCreated, WorldPackets::Achievement::GuildCriteriaProgress::DateStarted, WorldPackets::Achievement::GuildCriteriaProgress::DateUpdated, WorldPackets::Achievement::GuildCriteriaProgress::Flags, Guild::GetMembersTrackingCriteria(), Criteria::ID, CriteriaProgress::PlayerGUID, WorldPackets::Achievement::GuildCriteriaProgress::PlayerGUID, WorldPackets::Achievement::GuildCriteriaUpdate::Progress, WorldPackets::Achievement::GuildCriteriaProgress::Quantity, WowTime::SetUtcTimeFromUnixTime(), and WorldPackets::Achievement::GuildCriteriaUpdate::Write().
|
overrideprotectedvirtual |
Implements CriteriaHandler.
Definition at line 1033 of file AchievementMgr.cpp.
References _owner, and Guild::BroadcastPacket().
Referenced by SendCriteriaProgressRemoved().
|
private |
Definition at line 141 of file AchievementMgr.h.
Referenced by CompletedAchievement(), GetOwnerInfo(), Reset(), SaveToDB(), SendAchievementEarned(), SendAchievementMembers(), SendCriteriaProgressRemoved(), SendCriteriaUpdate(), and SendPacket().