Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- diff -r 11eae74f2a01 src/game/Player.h
- --- a/src/game/Player.h Tue Mar 02 21:49:23 2010 -0600
- +++ b/src/game/Player.h Sun May 02 05:26:06 2010 +0300
- @@ -2292,7 +2292,7 @@
- AchievementMgr& GetAchievementMgr() { return m_achievementMgr; }
- void UpdateAchievementCriteria(AchievementCriteriaTypes type, uint32 miscvalue1 = 0, uint32 miscvalue2 = 0, Unit *unit = NULL, uint32 time = 0);
- - void CompletedAchievement(AchievementEntry const* entry);
- + void CompletedAchievement(AchievementEntry const* entry, bool Override_GM_Allow_Achieve_config = false);
- bool HasTitle(uint32 bitIndex);
- bool HasTitle(CharTitlesEntry const* title) { return HasTitle(title->bit_index); }
- diff -r 11eae74f2a01 src/game/Player.cpp
- --- a/src/game/Player.cpp Tue Mar 02 21:49:23 2010 -0600
- +++ b/src/game/Player.cpp Sun May 02 05:26:13 2010 +0300
- @@ -22277,9 +22328,9 @@
- GetAchievementMgr().UpdateAchievementCriteria(type, miscvalue1, miscvalue2, unit, time);
- }
- -void Player::CompletedAchievement(AchievementEntry const* entry)
- -{
- - GetAchievementMgr().CompletedAchievement(entry);
- +void Player::CompletedAchievement(AchievementEntry const* entry, bool Override_GM_Allow_Achieve_config)
- +{
- + GetAchievementMgr().CompletedAchievement(entry, Override_GM_Allow_Achieve_config);
- }
- void Player::LearnTalent(uint32 talentId, uint32 talentRank)
- diff -r 11eae74f2a01 src/game/AchievementMgr.h
- --- a/src/game/AchievementMgr.h Tue Mar 02 21:49:23 2010 -0600
- +++ b/src/game/AchievementMgr.h Sun May 02 05:26:40 2010 +0300
- @@ -236,7 +236,7 @@
- void SaveToDB();
- void ResetAchievementCriteria(AchievementCriteriaTypes type, uint32 miscvalue1=0, uint32 miscvalue2=0);
- void UpdateAchievementCriteria(AchievementCriteriaTypes type, uint32 miscvalue1=0, uint32 miscvalue2=0, Unit *unit=NULL, uint32 time=0);
- - void CompletedAchievement(AchievementEntry const* entry);
- + void CompletedAchievement(AchievementEntry const* entry, bool Override_GM_Allow_Achieve_config = false);
- void CheckAllAchievementCriteria();
- void SendAllAchievementData();
- void SendRespondInspectAchievements(Player* player);
- diff -r 11eae74f2a01 src/game/AchievementMgr.cpp
- --- a/src/game/AchievementMgr.cpp Tue Mar 02 21:49:23 2010 -0600
- +++ b/src/game/AchievementMgr.cpp Sun May 02 05:26:48 2010 +0300
- @@ -1728,11 +1728,10 @@
- SendCriteriaUpdate(entry->ID,progress);
- }
- -void AchievementMgr::CompletedAchievement(AchievementEntry const* achievement)
- +void AchievementMgr::CompletedAchievement(AchievementEntry const* achievement, bool Override_GM_Allow_Achieve_config)
- {
- sLog.outDetail("AchievementMgr::CompletedAchievement(%u)", achievement->ID);
- -
- - if (!sWorld.getConfig(CONFIG_GM_ALLOW_ACHIEVEMENT_GAINS) && m_player->GetSession()->GetSecurity() > SEC_PLAYER)
- + if (!sWorld.getConfig(CONFIG_GM_ALLOW_ACHIEVEMENT_GAINS) && m_player->GetSession()->GetSecurity() > SEC_PLAYER && !Override_GM_Allow_Achieve_config)
- return;
- if (achievement->flags & ACHIEVEMENT_FLAG_COUNTER || m_completedAchievements.find(achievement->ID)!=m_completedAchievements.end())
- diff -r 11eae74f2a01 src/game/Chat.cpp
- --- a/src/game/Chat.cpp Tue Mar 02 21:49:23 2010 -0600
- +++ b/src/game/Chat.cpp Sun May 02 05:27:08 2010 +0300
- @@ -708,6 +718,7 @@
- { "itemmove", SEC_GAMEMASTER, false, &ChatHandler::HandleItemMoveCommand, "", NULL },
- { "cooldown", SEC_ADMINISTRATOR, false, &ChatHandler::HandleCooldownCommand, "", NULL },
- { "unlearn", SEC_ADMINISTRATOR, false, &ChatHandler::HandleUnLearnCommand, "", NULL },
- + { "achievementadd", SEC_ADMINISTRATOR, false, &ChatHandler::HandleAddAchieveCommand, "", NULL },
- { "distance", SEC_ADMINISTRATOR, false, &ChatHandler::HandleGetDistanceCommand, "", NULL },
- { "recall", SEC_MODERATOR, false, &ChatHandler::HandleRecallCommand, "", NULL },
- { "save", SEC_PLAYER, false, &ChatHandler::HandleSaveCommand, "", NULL },
- diff -r 11eae74f2a01 src/game/Chat.h
- --- a/src/game/Chat.h Tue Mar 02 21:49:23 2010 -0600
- +++ b/src/game/Chat.h Sun May 02 05:27:29 2010 +0300
- @@ -510,6 +518,7 @@
- bool HandleListFreezeCommand(const char* args);
- bool HandleCooldownCommand(const char* args);
- + bool HandleAddAchieveCommand(const char* args);
- bool HandleUnLearnCommand(const char* args);
- bool HandleGetDistanceCommand(const char* args);
- bool HandleModifyStandStateCommand(const char* args);
- diff -r 11eae74f2a01 src/game/Level3.cpp
- --- a/src/game/Level3.cpp Tue Mar 02 21:49:23 2010 -0600
- +++ b/src/game/Level3.cpp Sun May 02 05:27:43 2010 +0300
- @@ -1635,6 +1635,36 @@
- return true;
- }
- +bool ChatHandler::HandleAddAchieveCommand(const char *args)
- +{
- + if (!*args)
- + return false;
- +
- + uint32 achieve_id = atoi((char*)args);
- + if (!achieve_id)
- + {
- + char* cId = extractKeyFromLink((char*)args,"Hachievement");
- + if (!cId)
- + return false;
- + achieve_id = atoi(cId);
- + if (!achieve_id)
- + return false;
- + }
- +
- + Player* target = getSelectedPlayer();
- + if (!target)
- + {
- + SendSysMessage(LANG_NO_CHAR_SELECTED);
- + SetSentErrorMessage(true);
- + return false;
- + }
- +
- + if (AchievementEntry const* AE = GetAchievementStore()->LookupEntry(achieve_id))
- + target->CompletedAchievement(AE, true);
- +
- + return true;
- +}
- +
- bool ChatHandler::HandleUnLearnCommand(const char *args)
- {
- if (!*args)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement