diff options
author | ForesterDev <11771800+ForesterDev@users.noreply.github.com> | 2019-04-24 18:58:56 +0400 |
---|---|---|
committer | Giacomo Pozzoni <giacomopoz@gmail.com> | 2019-04-24 16:58:55 +0200 |
commit | ae8750716f63ddc41f21bb38ceafe949d7260f0e (patch) | |
tree | 2eec1ee1d062f5e155e6f913f2b6781e5dc2469d /src | |
parent | f163c2f96a28e799ec0bc881c7e5f4091719a59b (diff) |
Scripts/Commands: add some missing checks for .guild create command (#23201)
* Core/Conditions: implement CONDITION_GAMEMASTER
* Scripts/Commands: add some missing checks for .guild create command
Diffstat (limited to 'src')
-rw-r--r-- | src/server/scripts/Commands/cs_guild.cpp | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/src/server/scripts/Commands/cs_guild.cpp b/src/server/scripts/Commands/cs_guild.cpp index 4c7f9ee34cf..030c102770c 100644 --- a/src/server/scripts/Commands/cs_guild.cpp +++ b/src/server/scripts/Commands/cs_guild.cpp @@ -29,6 +29,7 @@ EndScriptData */ #include "GuildMgr.h" #include "Language.h" #include "ObjectAccessor.h" +#include "ObjectMgr.h" #include "Player.h" #include "RBAC.h" @@ -87,7 +88,22 @@ public: if (target->GetGuildId()) { handler->SendSysMessage(LANG_PLAYER_IN_GUILD); - return true; + handler->SetSentErrorMessage(true); + return false; + } + + if (sGuildMgr->GetGuildByName(guildName)) + { + handler->SendSysMessage(LANG_GUILD_RENAME_ALREADY_EXISTS); + handler->SetSentErrorMessage(true); + return false; + } + + if (sObjectMgr->IsReservedName(guildName) || !sObjectMgr->IsValidCharterName(guildName)) + { + handler->SendSysMessage(LANG_BAD_VALUE); + handler->SetSentErrorMessage(true); + return false; } Guild* guild = new Guild; |