mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-02-10 03:59:05 +01:00
Core/Guids: refactored more range based loops to reduce copying elements of containers
This commit is contained in:
@@ -587,14 +587,6 @@ Guild::Member::Member(ObjectGuid::LowType guildId, ObjectGuid guid, uint8 rankId
|
||||
m_totalReputation(0),
|
||||
m_weekReputation(0)
|
||||
{
|
||||
for (uint8 i = 0; i < 2; i++)
|
||||
{
|
||||
m_professions[i].Rank = 0;
|
||||
m_professions[i].Step = 0;
|
||||
m_professions[i].SkillId = 0;
|
||||
m_professions[i].RecipeUniqueBits.fill(0);
|
||||
}
|
||||
|
||||
memset(m_bankWithdraw, 0, (GUILD_BANK_MAX_TABS) * sizeof(uint32));
|
||||
}
|
||||
|
||||
@@ -746,11 +738,7 @@ void Guild::Member::LoadProfessionDataFromDB(ObjectGuid guid)
|
||||
if (!skillLine || skillLine->CategoryID != SKILL_CATEGORY_PROFESSION)
|
||||
continue;
|
||||
|
||||
GuildMemberProfessionData profession;
|
||||
profession.SkillId = skill;
|
||||
profession.Step = max / 75;
|
||||
profession.Rank = value;
|
||||
profession.RecipeUniqueBits.fill(0);
|
||||
GuildMemberProfessionData profession(skill, max / 75, value);
|
||||
|
||||
CharacterDatabasePreparedStatement* stmt2 = CharacterDatabase.GetPreparedStatement(CHAR_SEL_CHARACTER_SPELL);
|
||||
stmt2->setUInt32(0, guid.GetCounter());
|
||||
@@ -1539,9 +1527,9 @@ void Guild::HandleRoster(WorldSession* session)
|
||||
roster.WeeklyRepCap = sWorld->getIntConfig(CONFIG_GUILD_WEEKLY_REP_CAP);
|
||||
roster.MemberData.reserve(m_members.size());
|
||||
|
||||
for (auto itr : m_members)
|
||||
for (std::pair<uint32 const, Guild::Member*> const& memberPair : m_members)
|
||||
{
|
||||
Member* member = itr.second;
|
||||
Member* member = memberPair.second;
|
||||
|
||||
WorldPackets::Guild::GuildRosterMemberData memberData;
|
||||
|
||||
@@ -4022,9 +4010,9 @@ void Guild::SendKnownRecipes(Player const* player)
|
||||
std::set<uint32> uniqueProfessions;
|
||||
std::unordered_map<uint32, std::array<uint8, GUILD_RECIPES_COUNT>> uniqueBitsMap;
|
||||
|
||||
for (auto itr : m_members)
|
||||
for (std::pair<uint32 const, Guild::Member*> const& memberPair : m_members)
|
||||
{
|
||||
Member* member = itr.second;
|
||||
Member* member = memberPair.second;
|
||||
|
||||
for (uint8 i = 0; i < GUILD_PROFESSION_COUNT; i++)
|
||||
{
|
||||
@@ -4052,9 +4040,9 @@ void Guild::SendKnownRecipes(Player const* player)
|
||||
void Guild::SendMembersForRecipe(Player const* player, uint32 skillLineId, uint32 spellId, uint32 uniqueBit)
|
||||
{
|
||||
WorldPackets::Guild::GuildMembersWithRecipe packet;
|
||||
for (auto itr : m_members)
|
||||
for (std::pair<uint32 const, Guild::Member*> const& memberPair : m_members)
|
||||
{
|
||||
Member* member = itr.second;
|
||||
Member* member = memberPair.second;
|
||||
for (uint8 i = 0; i < GUILD_PROFESSION_COUNT; i++)
|
||||
{
|
||||
GuildMemberProfessionData const& prof = member->GetProfessionData(i);
|
||||
|
||||
@@ -330,6 +330,12 @@ typedef std::set <uint8> SlotIds;
|
||||
|
||||
struct GuildMemberProfessionData
|
||||
{
|
||||
GuildMemberProfessionData()
|
||||
: SkillId(0), Rank(0), Step(0), RecipeUniqueBits({ }) { }
|
||||
|
||||
GuildMemberProfessionData(uint32 skillId, uint32 rank, uint32 step)
|
||||
: SkillId(skillId), Rank(rank), Step(step), RecipeUniqueBits({ }) { }
|
||||
|
||||
uint32 SkillId;
|
||||
uint32 Rank;
|
||||
uint32 Step;
|
||||
|
||||
Reference in New Issue
Block a user