feat(Core): add argument to .character rename to add name to reserved_name (#6163)

This commit is contained in:
Axel Cocat 2021-06-18 17:09:29 +02:00 committed by GitHub
parent 5a564ea498
commit 848bb0891b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 45 additions and 1 deletions

View file

@ -302,10 +302,20 @@ public:
//rename characters
static bool HandleCharacterRenameCommand(ChatHandler* handler, char const* args)
{
char* nameStr = strtok((char*)args, " ");
char* reserveNameStr = strtok(nullptr, " ");
if (!reserveNameStr && nameStr && atoi(nameStr) == 1)
{
reserveNameStr = nameStr;
nameStr = nullptr;
}
bool reserveName = reserveNameStr != nullptr && atoi(reserveNameStr) == 1;
Player* target;
ObjectGuid targetGuid;
std::string targetName;
if (!handler->extractPlayerTarget((char*)args, &target, &targetGuid, &targetName))
if (!handler->extractPlayerTarget(nameStr, &target, &targetGuid, &targetName))
return false;
if (target)
@ -332,6 +342,11 @@ public:
CharacterDatabase.Execute(stmt);
}
if (reserveName)
{
sObjectMgr->AddReservedPlayerName(targetName);
}
return true;
}