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
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;
}