From 91eb17f8889fc88e5ee39f5f5f49a9ebfa4a586b Mon Sep 17 00:00:00 2001 From: IntelligentQuantum Date: Mon, 15 Nov 2021 19:00:01 +0330 Subject: [PATCH] fix(Scripts/Commands): cs_character - Restore character rename reserved_name functionality (#9195) --- .../updates/pending_db_world/rev_1636956243535419760.sql | 5 +++++ src/server/scripts/Commands/cs_character.cpp | 7 ++++++- 2 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 data/sql/updates/pending_db_world/rev_1636956243535419760.sql diff --git a/data/sql/updates/pending_db_world/rev_1636956243535419760.sql b/data/sql/updates/pending_db_world/rev_1636956243535419760.sql new file mode 100644 index 000000000..0dead7871 --- /dev/null +++ b/data/sql/updates/pending_db_world/rev_1636956243535419760.sql @@ -0,0 +1,5 @@ +INSERT INTO `version_db_world` (`sql_rev`) VALUES ('1636956243535419760'); + +DELETE FROM `command` WHERE `name` = 'character rename'; +INSERT INTO `command` (`name`, `security`, `help`) VALUES +('character rename', 2, 'Syntax: .character rename [$name] [reserveName] [$newName]\r\n\r\nMark selected in game or by $name in command character for rename at next login.\r\n\r\nIf [reserveName] is 1 then the player\'s current name is added to the list of reserved names.\r\nIf [newName] then the player will be forced rename.'); diff --git a/src/server/scripts/Commands/cs_character.cpp b/src/server/scripts/Commands/cs_character.cpp index e8dad72fa..734be70c5 100644 --- a/src/server/scripts/Commands/cs_character.cpp +++ b/src/server/scripts/Commands/cs_character.cpp @@ -322,7 +322,7 @@ public: } //rename characters - static bool HandleCharacterRenameCommand(ChatHandler* handler, Optional player, Optional newNameV) + static bool HandleCharacterRenameCommand(ChatHandler* handler, Optional player, Optional reserveName, Optional newNameV) { if (!player && newNameV) return false; @@ -417,6 +417,11 @@ public: } } + if (reserveName) + { + sObjectMgr->AddReservedPlayerName(player->GetName()); + } + return true; }