diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Guilds/Guild.cpp | 10 | ||||
-rw-r--r-- | src/server/game/Guilds/Guild.h | 6 |
2 files changed, 8 insertions, 8 deletions
diff --git a/src/server/game/Guilds/Guild.cpp b/src/server/game/Guilds/Guild.cpp index 78d88531dda..9aaac264425 100644 --- a/src/server/game/Guilds/Guild.cpp +++ b/src/server/game/Guilds/Guild.cpp @@ -1949,7 +1949,7 @@ bool Guild::LoadMemberFromDB(Field* fields) ObjectGuid::LowType lowguid = fields[1].GetUInt32(); ObjectGuid playerGuid(HighGuid::Player, lowguid); - auto [memberIt, isNew] = m_members.try_emplace(lowguid, m_id, playerGuid, fields[2].GetUInt8()); + auto [memberIt, isNew] = m_members.try_emplace(playerGuid, m_id, playerGuid, fields[2].GetUInt8()); if (!isNew) { TC_LOG_ERROR("guild", "Tried to add {} to guild '{}'. Member already exists.", playerGuid.ToString(), m_name); @@ -2206,7 +2206,7 @@ bool Guild::AddMember(CharacterDatabaseTransaction trans, ObjectGuid guid, uint8 if (rankId == GUILD_RANK_NONE) rankId = _GetLowestRankId(); - auto [memberIt, isNew] = m_members.try_emplace(lowguid, m_id, guid, rankId); + auto [memberIt, isNew] = m_members.try_emplace(guid, m_id, guid, rankId); if (!isNew) { TC_LOG_ERROR("guild", "Tried to add {} to guild '{}'. Member already exists.", guid.ToString(), m_name); @@ -2279,7 +2279,7 @@ bool Guild::DeleteMember(CharacterDatabaseTransaction trans, ObjectGuid guid, bo Member* newLeader = nullptr; for (auto& [memberGuid, member] : m_members) { - if (memberGuid == lowguid) + if (memberGuid == guid) oldLeader = &member; else if (!newLeader || newLeader->GetRankId() > member.GetRankId()) newLeader = &member; @@ -2307,7 +2307,7 @@ bool Guild::DeleteMember(CharacterDatabaseTransaction trans, ObjectGuid guid, bo // Call script on remove before member is actually removed from guild (and database) sScriptMgr->OnGuildRemoveMember(this, player, isDisbanding, isKicked); - m_members.erase(lowguid); + m_members.erase(guid); // If player not online data in data field will be loaded from guild tabs no need to update it !! if (player) @@ -2347,7 +2347,7 @@ bool Guild::ChangeMemberRank(CharacterDatabaseTransaction trans, ObjectGuid guid bool Guild::IsMember(ObjectGuid guid) const { - return m_members.find(guid.GetCounter()) != m_members.end(); + return m_members.find(guid) != m_members.end(); } uint64 Guild::GetMemberAvailableMoneyForRepairItems(ObjectGuid guid) const diff --git a/src/server/game/Guilds/Guild.h b/src/server/game/Guilds/Guild.h index f9727e31013..2842b1dc475 100644 --- a/src/server/game/Guilds/Guild.h +++ b/src/server/game/Guilds/Guild.h @@ -746,7 +746,7 @@ class TC_GAME_API Guild uint64 m_bankMoney; std::vector<RankInfo> m_ranks; - std::unordered_map<uint32, Member> m_members; + std::unordered_map<ObjectGuid, Member> m_members; std::vector<BankTab> m_bankTabs; // These are actually ordered lists. The first element is the oldest entry. @@ -769,13 +769,13 @@ class TC_GAME_API Guild inline Member const* GetMember(ObjectGuid guid) const { - auto itr = m_members.find(guid.GetCounter()); + auto itr = m_members.find(guid); return (itr != m_members.end()) ? &itr->second : nullptr; } inline Member* GetMember(ObjectGuid guid) { - auto itr = m_members.find(guid.GetCounter()); + auto itr = m_members.find(guid); return (itr != m_members.end()) ? &itr->second : nullptr; } |