diff options
author | DDuarte <dnpd.dd@gmail.com> | 2017-05-14 17:31:06 +0100 |
---|---|---|
committer | DDuarte <dnpd.dd@gmail.com> | 2017-05-14 17:31:06 +0100 |
commit | c7847801567f8e7c0b40dc9cf00d03fa31d9afd0 (patch) | |
tree | a09e7d1460dfbb2e38a27cd7e665326702692639 /src | |
parent | e91a5146ac26c997e0eea54f5e1678830e5dad61 (diff) |
Core/Guilds: Remove old Guild.UndeletableLevel config
Send guild achievement points in SMSG_GUILD_INVITE instead of level
Remove old references to guild levels
Player still have PLAYER_GUILDLEVEL field which is always 25
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Guilds/Guild.cpp | 7 | ||||
-rw-r--r-- | src/server/game/Guilds/Guild.h | 7 | ||||
-rw-r--r-- | src/server/game/Guilds/GuildMgr.cpp | 4 | ||||
-rw-r--r-- | src/server/game/Handlers/MailHandler.cpp | 4 | ||||
-rw-r--r-- | src/server/game/Server/Packets/GuildPackets.cpp | 2 | ||||
-rw-r--r-- | src/server/game/Server/Packets/GuildPackets.h | 2 | ||||
-rw-r--r-- | src/server/game/World/World.cpp | 1 | ||||
-rw-r--r-- | src/server/game/World/World.h | 1 |
8 files changed, 11 insertions, 17 deletions
diff --git a/src/server/game/Guilds/Guild.cpp b/src/server/game/Guilds/Guild.cpp index d908fefb22a..dcd23507b28 100644 --- a/src/server/game/Guilds/Guild.cpp +++ b/src/server/game/Guilds/Guild.cpp @@ -1656,7 +1656,7 @@ void Guild::HandleInviteMember(WorldSession* session, std::string const& name) invite.BorderStyle = uint32(m_emblemInfo.GetBorderStyle()); invite.BorderColor = uint32(m_emblemInfo.GetBorderColor()); invite.Background = uint32(m_emblemInfo.GetBackgroundColor()); - invite.Level = int32(GetLevel()); + invite.AchievementPoints = GetAchievementMgr().GetAchievementPoints(); invite.InviterName = player->GetName(); invite.GuildName = GetName(); @@ -1693,8 +1693,6 @@ void Guild::HandleLeaveMember(WorldSession* session) if (m_members.size() > 1) // Leader cannot leave if he is not the last member SendCommandResult(session, GUILD_COMMAND_LEAVE_GUILD, ERR_GUILD_LEADER_LEAVE); - else if (GetLevel() >= sWorld->getIntConfig(CONFIG_GUILD_UNDELETABLE_LEVEL)) - SendCommandResult(session, GUILD_COMMAND_LEAVE_GUILD, ERR_GUILD_UNDELETABLE_DUE_TO_LEVEL); else { // Guild is disbanded if leader leaves. @@ -2270,9 +2268,8 @@ bool Guild::LoadFromDB(Field* fields) m_motd = fields[9].GetString(); m_createdDate = time_t(fields[10].GetUInt32()); m_bankMoney = fields[11].GetUInt64(); - _level = fields[12].GetUInt32(); - uint8 purchasedTabs = uint8(fields[13].GetUInt64()); + uint8 purchasedTabs = uint8(fields[12].GetUInt64()); if (purchasedTabs > GUILD_BANK_MAX_TABS) purchasedTabs = GUILD_BANK_MAX_TABS; diff --git a/src/server/game/Guilds/Guild.h b/src/server/game/Guilds/Guild.h index e036e0dcf02..e7844e4b55a 100644 --- a/src/server/game/Guilds/Guild.h +++ b/src/server/game/Guilds/Guild.h @@ -50,6 +50,7 @@ enum GuildMisc GUILD_WITHDRAW_SLOT_UNLIMITED = 0xFFFFFFFF, GUILD_EVENT_LOG_GUID_UNDEFINED = 0xFFFFFFFF, TAB_UNDEFINED = 0xFF, + GUILD_OLD_MAX_LEVEL = 25 }; enum GuildMemberData @@ -868,8 +869,8 @@ public: GuildAchievementMgr& GetAchievementMgr() { return m_achievementMgr; } GuildAchievementMgr const& GetAchievementMgr() const { return m_achievementMgr; } - // Guild leveling - uint8 GetLevel() const { return _level; } + // Pre-6.x guild leveling + uint8 GetLevel() const { return GUILD_OLD_MAX_LEVEL; } void AddGuildNews(uint8 type, ObjectGuid guid, uint32 flags, uint32 value); @@ -901,8 +902,6 @@ protected: LogHolder* m_newsLog; GuildAchievementMgr m_achievementMgr; - uint8 _level; - private: inline uint8 _GetRanksSize() const { return uint8(m_ranks.size()); } inline const RankInfo* GetRankInfo(uint8 rankId) const { return rankId < _GetRanksSize() ? &m_ranks[rankId] : NULL; } diff --git a/src/server/game/Guilds/GuildMgr.cpp b/src/server/game/Guilds/GuildMgr.cpp index 9897313bf8a..3ddd511fe61 100644 --- a/src/server/game/Guilds/GuildMgr.cpp +++ b/src/server/game/Guilds/GuildMgr.cpp @@ -120,8 +120,8 @@ void GuildMgr::LoadGuilds() // 0 1 2 3 4 5 6 QueryResult result = CharacterDatabase.Query("SELECT g.guildid, g.name, g.leaderguid, g.EmblemStyle, g.EmblemColor, g.BorderStyle, g.BorderColor, " - // 7 8 9 10 11 12 13 - "g.BackgroundColor, g.info, g.motd, g.createdate, g.BankMoney, g.level, COUNT(gbt.guildid) " + // 7 8 9 10 11 12 + "g.BackgroundColor, g.info, g.motd, g.createdate, g.BankMoney, COUNT(gbt.guildid) " "FROM guild g LEFT JOIN guild_bank_tab gbt ON g.guildid = gbt.guildid GROUP BY g.guildid ORDER BY g.guildid ASC"); if (!result) diff --git a/src/server/game/Handlers/MailHandler.cpp b/src/server/game/Handlers/MailHandler.cpp index 36de437529b..abaa191cd48 100644 --- a/src/server/game/Handlers/MailHandler.cpp +++ b/src/server/game/Handlers/MailHandler.cpp @@ -320,9 +320,9 @@ void WorldSession::HandleSendMail(WorldPackets::Mail::SendMail& packet) // If theres is an item, there is a one hour delivery delay if sent to another account's character. uint32 deliver_delay = needItemDelay ? sWorld->getIntConfig(CONFIG_MAIL_DELIVERY_DELAY) : 0; - // Mail sent between guild members arrives instantly if they have the guild perk "Guild Mail" + // Mail sent between guild members arrives instantly if (Guild* guild = sGuildMgr->GetGuildById(player->GetGuildId())) - if (guild->GetLevel() >= 17 && guild->IsMember(receiverGuid)) + if (guild->IsMember(receiverGuid)) deliver_delay = 0; // don't ask for COD if there are no items diff --git a/src/server/game/Server/Packets/GuildPackets.cpp b/src/server/game/Server/Packets/GuildPackets.cpp index 0b5f38909ea..ab0805029df 100644 --- a/src/server/game/Server/Packets/GuildPackets.cpp +++ b/src/server/game/Server/Packets/GuildPackets.cpp @@ -137,7 +137,7 @@ WorldPacket const* WorldPackets::Guild::GuildInvite::Write() _worldPacket << BorderStyle; _worldPacket << BorderColor; _worldPacket << Background; - _worldPacket << Level; + _worldPacket << AchievementPoints; _worldPacket.WriteString(InviterName); _worldPacket.WriteString(GuildName); diff --git a/src/server/game/Server/Packets/GuildPackets.h b/src/server/game/Server/Packets/GuildPackets.h index 30a95c6efe2..6fd5b2f1bf2 100644 --- a/src/server/game/Server/Packets/GuildPackets.h +++ b/src/server/game/Server/Packets/GuildPackets.h @@ -212,7 +212,7 @@ namespace WorldPackets ObjectGuid GuildGUID; ObjectGuid OldGuildGUID; - int32 Level = 0; + int32 AchievementPoints = 0; uint32 EmblemColor = 0; uint32 EmblemStyle = 0; uint32 BorderStyle = 0; diff --git a/src/server/game/World/World.cpp b/src/server/game/World/World.cpp index 02d6704ee4f..c6c2ddba890 100644 --- a/src/server/game/World/World.cpp +++ b/src/server/game/World/World.cpp @@ -1418,7 +1418,6 @@ void World::LoadConfigSettings(bool reload) // Guild save interval m_int_configs[CONFIG_GUILD_SAVE_INTERVAL] = sConfigMgr->GetIntDefault("Guild.SaveInterval", 15); - m_int_configs[CONFIG_GUILD_UNDELETABLE_LEVEL] = sConfigMgr->GetIntDefault("Guild.UndeletableLevel", 4); // misc m_bool_configs[CONFIG_PDUMP_NO_PATHS] = sConfigMgr->GetBoolDefault("PlayerDump.DisallowPaths", true); diff --git a/src/server/game/World/World.h b/src/server/game/World/World.h index bb763ec4f55..501e6798b1f 100644 --- a/src/server/game/World/World.h +++ b/src/server/game/World/World.h @@ -383,7 +383,6 @@ enum WorldIntConfigs CONFIG_TOLBARAD_NOBATTLETIME, CONFIG_TOLBARAD_RESTART_AFTER_CRASH, CONFIG_GUILD_SAVE_INTERVAL, - CONFIG_GUILD_UNDELETABLE_LEVEL, CONFIG_PACKET_SPOOF_POLICY, CONFIG_PACKET_SPOOF_BANMODE, CONFIG_PACKET_SPOOF_BANDURATION, |