mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-21 01:37:37 +01:00
Core/Misc: Moved CharacterInfo out of world to separate class
This commit is contained in:
@@ -18,6 +18,7 @@
|
||||
|
||||
#include "AccountMgr.h"
|
||||
#include "CalendarMgr.h"
|
||||
#include "CharacterCache.h"
|
||||
#include "Chat.h"
|
||||
#include "Config.h"
|
||||
#include "DatabaseEnv.h"
|
||||
@@ -1875,7 +1876,7 @@ void Guild::HandleAcceptMember(WorldSession* session)
|
||||
{
|
||||
Player* player = session->GetPlayer();
|
||||
if (!sWorld->getBoolConfig(CONFIG_ALLOW_TWO_SIDE_INTERACTION_GUILD) &&
|
||||
player->GetTeam() != sObjectMgr->GetPlayerTeamByGUID(GetLeaderGUID()))
|
||||
player->GetTeam() != sCharacterCache->GetCharacterTeamByGuid(GetLeaderGUID()))
|
||||
return;
|
||||
|
||||
SQLTransaction trans(nullptr);
|
||||
@@ -2469,7 +2470,7 @@ bool Guild::LoadMemberFromDB(Field* fields)
|
||||
return false;
|
||||
}
|
||||
|
||||
sWorld->UpdateCharacterGuildId(playerGuid, GetId());
|
||||
sCharacterCache->UpdateCharacterGuildId(playerGuid, GetId());
|
||||
m_members[lowguid] = member;
|
||||
return true;
|
||||
}
|
||||
@@ -2719,7 +2720,7 @@ void Guild::MassInviteToEvent(WorldSession* session, uint32 minLevel, uint32 max
|
||||
}
|
||||
|
||||
Member* member = itr->second;
|
||||
uint32 level = Player::GetLevelFromCharacterInfo(member->GetGUID());
|
||||
uint32 level = sCharacterCache->GetCharacterLevelByGuid(member->GetGUID());
|
||||
|
||||
if (member->GetGUID() != session->GetPlayer()->GetGUID() && level >= minLevel && level <= maxLevel && member->IsRankNotLower(minRank))
|
||||
{
|
||||
@@ -2744,7 +2745,7 @@ bool Guild::AddMember(SQLTransaction& trans, ObjectGuid guid, uint8 rankId)
|
||||
if (player->GetGuildId() != 0)
|
||||
return false;
|
||||
}
|
||||
else if (Player::GetGuildIdFromCharacterInfo(guid) != 0)
|
||||
else if (sCharacterCache->GetCharacterGuildIdByGuid(guid) != 0)
|
||||
return false;
|
||||
|
||||
// Remove all player signs from another petitions
|
||||
@@ -2798,7 +2799,7 @@ bool Guild::AddMember(SQLTransaction& trans, ObjectGuid guid, uint8 rankId)
|
||||
return false;
|
||||
}
|
||||
m_members[lowguid] = member;
|
||||
sWorld->UpdateCharacterGuildId(guid, GetId());
|
||||
sCharacterCache->UpdateCharacterGuildId(guid, GetId());
|
||||
}
|
||||
|
||||
member->SaveToDB(trans);
|
||||
@@ -2874,7 +2875,7 @@ void Guild::DeleteMember(SQLTransaction& trans, ObjectGuid guid, bool isDisbandi
|
||||
player->RemoveSpell(entry->SpellId, false, false);
|
||||
}
|
||||
else
|
||||
sWorld->UpdateCharacterGuildId(guid, 0);
|
||||
sCharacterCache->UpdateCharacterGuildId(guid, 0);
|
||||
|
||||
_DeleteMemberFromDB(trans, lowguid);
|
||||
if (!isDisbanding)
|
||||
|
||||
Reference in New Issue
Block a user