diff options
| author | xjose93 <xjose93@hotmail.com> | 2013-04-16 17:08:58 +0200 |
|---|---|---|
| committer | xjose93 <xjose93@hotmail.com> | 2013-04-19 23:21:23 +0200 |
| commit | 678cade1163080263bdea9e349fbb67b7af15ea7 (patch) | |
| tree | b5ba38be5441d4cb60edd07496eb2ab128e5d73b /src/server/game | |
| parent | bf10860a1c237fda0f7dd62297d6a591247ec660 (diff) | |
Core/Commands: rename guilds (.guild rename "old guildname" "new guildname")
Diffstat (limited to 'src/server/game')
| -rw-r--r-- | src/server/game/Guilds/Guild.cpp | 13 | ||||
| -rw-r--r-- | src/server/game/Guilds/Guild.h | 2 | ||||
| -rw-r--r-- | src/server/game/Miscellaneous/Language.h | 4 |
3 files changed, 18 insertions, 1 deletions
diff --git a/src/server/game/Guilds/Guild.cpp b/src/server/game/Guilds/Guild.cpp index 158a20d67d1..2ec9130f263 100644 --- a/src/server/game/Guilds/Guild.cpp +++ b/src/server/game/Guilds/Guild.cpp @@ -1285,6 +1285,19 @@ void Guild::OnPlayerStatusChange(Player* player, uint32 flag, bool state) } } +bool Guild::SetName(std::string const& name) +{ + if (m_name == name || name.empty() || name.length() > 24 || sObjectMgr->IsReservedName(name) || !ObjectMgr::IsValidCharterName(name)) + return false; + + m_name = name; + PreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_UPD_GUILD_NAME); + stmt->setString(0, m_name); + stmt->setUInt32(1, GetId()); + CharacterDatabase.Execute(stmt); + return true; +} + void Guild::HandleRoster(WorldSession* session /*= NULL*/) { // Guess size diff --git a/src/server/game/Guilds/Guild.h b/src/server/game/Guilds/Guild.h index 6af397f6fed..f6a3e095957 100644 --- a/src/server/game/Guilds/Guild.h +++ b/src/server/game/Guilds/Guild.h @@ -657,6 +657,8 @@ public: std::string const& GetMOTD() const { return m_motd; } std::string const& GetInfo() const { return m_info; } + bool SetName(std::string const& name); + // Handle client commands void HandleRoster(WorldSession* session = NULL); // NULL = broadcast void HandleQuery(WorldSession* session); diff --git a/src/server/game/Miscellaneous/Language.h b/src/server/game/Miscellaneous/Language.h index f4379e59f19..e03adf2a4a1 100644 --- a/src/server/game/Miscellaneous/Language.h +++ b/src/server/game/Miscellaneous/Language.h @@ -119,7 +119,9 @@ enum TrinityStrings LANG_RBAC_LIST_GROUPS_HEADER = 93, LANG_RBAC_LIST_ROLES_HEADER = 94, LANG_RBAC_LIST_PERMISSIONS_HEADER = 95, - // Room for more level 0 96-99 not used + LANG_GUILD_RENAME_ALREADY_EXISTS = 96, + LANG_GUILD_RENAME_DONE = 97, + // Room for more level 0 98-99 not used // level 1 chat LANG_GLOBAL_NOTIFY = 100, |
