aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Guilds
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2017-05-21 23:18:43 +0200
committerShauren <shauren.trinity@gmail.com>2017-05-21 23:18:43 +0200
commit3d7c2ef88f2ca3293a1df0411ad49e3eb5a96079 (patch)
treed9a92cf30fcf560d837e2b3b0a212a6834534f46 /src/server/game/Guilds
parent3cb8f532dae1062c5f5bcda1b980463da99fe547 (diff)
Core/Game: Include cleanup, part 4 - packets and largest headers (after preprocessing, except player/objectmgr)
Diffstat (limited to 'src/server/game/Guilds')
-rw-r--r--src/server/game/Guilds/Guild.cpp47
-rw-r--r--src/server/game/Guilds/Guild.h64
-rw-r--r--src/server/game/Guilds/GuildFinderMgr.cpp1
-rw-r--r--src/server/game/Guilds/GuildMgr.cpp1
4 files changed, 66 insertions, 47 deletions
diff --git a/src/server/game/Guilds/Guild.cpp b/src/server/game/Guilds/Guild.cpp
index 747c0bfd5c4..af696e8c3b9 100644
--- a/src/server/game/Guilds/Guild.cpp
+++ b/src/server/game/Guilds/Guild.cpp
@@ -32,8 +32,11 @@
#include "Log.h"
#include "ObjectMgr.h"
#include "Opcodes.h"
+#include "Player.h"
#include "ScriptMgr.h"
#include "SocialMgr.h"
+#include "World.h"
+#include "WorldSession.h"
#define MAX_GUILD_BANK_TAB_TEXT_LEN 500
#define EMBLEM_PRICE 10 * GOLD
@@ -360,6 +363,11 @@ void Guild::RankInfo::SetBankTabSlotsAndRights(GuildBankRightsAndSlots rightsAnd
}
}
+Guild::BankTab::BankTab(ObjectGuid::LowType guildId, uint8 tabId) : m_guildId(guildId), m_tabId(tabId)
+{
+ memset(m_items, 0, GUILD_BANK_MAX_SLOTS * sizeof(Item*));
+}
+
// BankTab
void Guild::BankTab::LoadFromDB(Field* fields)
{
@@ -501,6 +509,26 @@ void Guild::BankTab::SendText(Guild const* guild, WorldSession* session) const
}
}
+Guild::Member::Member(ObjectGuid::LowType guildId, ObjectGuid guid, uint8 rankId) :
+ m_guildId(guildId),
+ m_guid(guid),
+ m_zoneId(0),
+ m_level(0),
+ m_class(0),
+ _gender(0),
+ m_flags(GUILDMEMBER_STATUS_NONE),
+ m_logoutTime(::time(nullptr)),
+ m_accountId(0),
+ m_rankId(rankId),
+ m_achievementPoints(0),
+ m_totalActivity(0),
+ m_weekActivity(0),
+ m_totalReputation(0),
+ m_weekReputation(0)
+{
+ memset(m_bankWithdraw, 0, (GUILD_BANK_MAX_TABS + 1) * sizeof(int32));
+}
+
// Member
void Guild::Member::SetStats(Player* player)
{
@@ -721,6 +749,15 @@ void EmblemInfo::SaveToDB(ObjectGuid::LowType guildId) const
CharacterDatabase.Execute(stmt);
}
+Guild::MoveItemData::MoveItemData(Guild* guild, Player* player, uint8 container, uint8 slotId) : m_pGuild(guild), m_pPlayer(player),
+m_container(container), m_slotId(slotId), m_pItem(nullptr), m_pClonedItem(nullptr)
+{
+}
+
+Guild::MoveItemData::~MoveItemData()
+{
+}
+
// MoveItemData
bool Guild::MoveItemData::CheckItem(uint32& splitedAmount)
{
@@ -886,7 +923,7 @@ Item* Guild::BankMoveItemData::StoreItem(SQLTransaction& trans, Item* pItem)
return nullptr;
Item* pLastItem = pItem;
- for (ItemPosCountVec::const_iterator itr = m_vec.begin(); itr != m_vec.end(); )
+ for (auto itr = m_vec.begin(); itr != m_vec.end(); )
{
ItemPosCount pos(*itr);
++itr;
@@ -2754,6 +2791,14 @@ void Guild::SetBankTabText(uint8 tabId, std::string const& text)
}
}
+bool Guild::_HasRankRight(Player const* player, uint32 right) const
+{
+ if (player)
+ if (Member const* member = GetMember(player->GetGUID()))
+ return (_GetRankRights(member->GetRankId()) & right) != GR_RIGHT_NONE;
+ return false;
+}
+
void Guild::_DeleteMemberFromDB(ObjectGuid::LowType lowguid)
{
PreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_GUILD_MEMBER);
diff --git a/src/server/game/Guilds/Guild.h b/src/server/game/Guilds/Guild.h
index 99bad731a09..be20db3b203 100644
--- a/src/server/game/Guilds/Guild.h
+++ b/src/server/game/Guilds/Guild.h
@@ -20,12 +20,17 @@
#define TRINITYCORE_GUILD_H
#include "AchievementMgr.h"
-#include "World.h"
-#include "Item.h"
-#include "WorldPacket.h"
-#include "Player.h"
+#include "DatabaseEnvFwd.h"
+#include "ObjectGuid.h"
+#include "SharedDefines.h"
+#include <unordered_map>
class Item;
+class Player;
+class WorldPacket;
+class WorldSession;
+struct ItemPosCount;
+enum InventoryResult : uint8;
namespace WorldPackets
{
@@ -34,6 +39,7 @@ namespace WorldPackets
class GuildBankLogQueryResults;
class GuildEventLogQueryResults;
class GuildNews;
+ class SaveGuildEmblem;
}
}
@@ -323,25 +329,7 @@ private:
class Member
{
public:
- Member(ObjectGuid::LowType guildId, ObjectGuid guid, uint8 rankId) :
- m_guildId(guildId),
- m_guid(guid),
- m_zoneId(0),
- m_level(0),
- m_class(0),
- _gender(0),
- m_flags(GUILDMEMBER_STATUS_NONE),
- m_logoutTime(::time(nullptr)),
- m_accountId(0),
- m_rankId(rankId),
- m_achievementPoints(0),
- m_totalActivity(0),
- m_weekActivity(0),
- m_totalReputation(0),
- m_weekReputation(0)
- {
- memset(m_bankWithdraw, 0, (GUILD_BANK_MAX_TABS + 1) * sizeof(int32));
- }
+ Member(ObjectGuid::LowType guildId, ObjectGuid guid, uint8 rankId);
void SetStats(Player* player);
void SetStats(std::string const& name, uint8 level, uint8 _class, uint8 gender, uint32 zoneId, uint32 accountId, uint32 reputation);
@@ -615,21 +603,12 @@ private:
class BankTab
{
public:
- BankTab(ObjectGuid::LowType guildId, uint8 tabId) : m_guildId(guildId), m_tabId(tabId)
- {
- memset(m_items, 0, GUILD_BANK_MAX_SLOTS * sizeof(Item*));
- }
+ BankTab(ObjectGuid::LowType guildId, uint8 tabId);
void LoadFromDB(Field* fields);
bool LoadItemFromDB(Field* fields);
void Delete(SQLTransaction& trans, bool removeItemsFromDB = false);
- void WriteInfoPacket(WorldPacket& data) const
- {
- data << m_name;
- data << m_icon;
- }
-
void SetInfo(std::string const& name, std::string const& icon);
void SetText(std::string const& text);
void SendText(Guild const* guild, WorldSession* session) const;
@@ -655,9 +634,8 @@ private:
class MoveItemData
{
public:
- MoveItemData(Guild* guild, Player* player, uint8 container, uint8 slotId) : m_pGuild(guild), m_pPlayer(player),
- m_container(container), m_slotId(slotId), m_pItem(nullptr), m_pClonedItem(nullptr) { }
- virtual ~MoveItemData() { }
+ MoveItemData(Guild* guild, Player* player, uint8 container, uint8 slotId);
+ virtual ~MoveItemData();
virtual bool IsBank() const = 0;
// Initializes item pointer. Returns true, if item exists, false otherwise.
@@ -696,7 +674,7 @@ private:
uint8 m_slotId;
Item* m_pItem;
Item* m_pClonedItem;
- ItemPosCountVec m_vec;
+ std::vector<ItemPosCount> m_vec;
};
class PlayerMoveItemData : public MoveItemData
@@ -901,13 +879,7 @@ private:
inline uint8 _GetRanksSize() const { return uint8(m_ranks.size()); }
inline const RankInfo* GetRankInfo(uint8 rankId) const { return rankId < _GetRanksSize() ? &m_ranks[rankId] : NULL; }
inline RankInfo* GetRankInfo(uint8 rankId) { return rankId < _GetRanksSize() ? &m_ranks[rankId] : NULL; }
- inline bool _HasRankRight(Player const* player, uint32 right) const
- {
- if (player)
- if (Member const* member = GetMember(player->GetGUID()))
- return (_GetRankRights(member->GetRankId()) & right) != GR_RIGHT_NONE;
- return false;
- }
+ bool _HasRankRight(Player const* player, uint32 right) const;
inline uint8 _GetLowestRankId() const { return uint8(m_ranks.size() - 1); }
@@ -915,13 +887,13 @@ private:
inline BankTab* GetBankTab(uint8 tabId) { return tabId < m_bankTabs.size() ? m_bankTabs[tabId] : NULL; }
inline const BankTab* GetBankTab(uint8 tabId) const { return tabId < m_bankTabs.size() ? m_bankTabs[tabId] : NULL; }
- inline const Member* GetMember(ObjectGuid guid) const
+ inline const Member* GetMember(ObjectGuid const& guid) const
{
Members::const_iterator itr = m_members.find(guid);
return itr != m_members.end() ? itr->second : NULL;
}
- inline Member* GetMember(ObjectGuid guid)
+ inline Member* GetMember(ObjectGuid const& guid)
{
Members::iterator itr = m_members.find(guid);
return itr != m_members.end() ? itr->second : NULL;
diff --git a/src/server/game/Guilds/GuildFinderMgr.cpp b/src/server/game/Guilds/GuildFinderMgr.cpp
index c057324e2c5..b0a9184aa41 100644
--- a/src/server/game/Guilds/GuildFinderMgr.cpp
+++ b/src/server/game/Guilds/GuildFinderMgr.cpp
@@ -22,6 +22,7 @@
#include "GuildFinderPackets.h"
#include "Log.h"
#include "ObjectMgr.h"
+#include "Player.h"
#include "World.h"
MembershipRequest::MembershipRequest() : _availability(0), _classRoles(0), _interests(0), _time(time(NULL))
diff --git a/src/server/game/Guilds/GuildMgr.cpp b/src/server/game/Guilds/GuildMgr.cpp
index c7811b0b9ab..513de46edd4 100644
--- a/src/server/game/Guilds/GuildMgr.cpp
+++ b/src/server/game/Guilds/GuildMgr.cpp
@@ -20,6 +20,7 @@
#include "Guild.h"
#include "Log.h"
#include "ObjectMgr.h"
+#include "World.h"
GuildMgr::GuildMgr() : NextGuildId(UI64LIT(1))
{