[7235] New command: .reset achievements

This commit is contained in:
VladimirMangos 2009-02-06 23:56:39 +03:00
parent cb0ebde926
commit 74ec17a273
9 changed files with 87 additions and 4 deletions

View file

@ -4294,6 +4294,45 @@ bool ChatHandler::HandleListAurasCommand (const char * /*args*/)
return true;
}
bool ChatHandler::HandleResetAchievementsCommand (const char * args)
{
char* pName = strtok((char*)args, "");
Player *player = NULL;
uint64 guid = 0;
if (pName)
{
std::string name = extractPlayerNameFromLink(pName);
if(name.empty())
{
SendSysMessage(LANG_PLAYER_NOT_FOUND);
SetSentErrorMessage(true);
return false;
}
guid = objmgr.GetPlayerGUIDByName(name);
player = objmgr.GetPlayer(guid);
}
else
{
player = getSelectedPlayer();
if(player)
guid = player->GetGUID();
}
if(!player && !guid)
{
SendSysMessage(LANG_NO_CHAR_SELECTED);
return true;
}
if(player)
player->GetAchievementMgr().Reset();
else if(guid)
AchievementMgr::DeleteFromDB(GUID_LOPART(guid));
return true;
}
bool ChatHandler::HandleResetHonorCommand (const char * args)
{
char* pName = strtok((char*)args, "");