mirror of
https://github.com/mangosfour/server.git
synced 2025-12-26 16:37:06 +00:00
[10665] Allow use faction data for cases raceMask==0
Also some related code cleanup Signed-off-by: VladimirMangos <vladimir@getmangos.com>
This commit is contained in:
parent
549b44d8ec
commit
3ada9f635f
3 changed files with 22 additions and 18 deletions
|
|
@ -56,16 +56,10 @@ int32 ReputationMgr::GetBaseReputation(FactionEntry const* factionEntry) const
|
|||
|
||||
uint32 raceMask = m_player->getRaceMask();
|
||||
uint32 classMask = m_player->getClassMask();
|
||||
for (int i=0; i < 4; i++)
|
||||
{
|
||||
if( (factionEntry->BaseRepRaceMask[i] & raceMask) &&
|
||||
(factionEntry->BaseRepClassMask[i]==0 ||
|
||||
(factionEntry->BaseRepClassMask[i] & classMask) ) )
|
||||
return factionEntry->BaseRepValue[i];
|
||||
}
|
||||
|
||||
// in faction.dbc exist factions with (RepListId >=0, listed in character reputation list) with all BaseRepRaceMask[i]==0
|
||||
return 0;
|
||||
int idx = factionEntry->GetIndexFitTo(raceMask, classMask);
|
||||
|
||||
return idx >= 0 ? factionEntry->BaseRepValue[idx] : 0;
|
||||
}
|
||||
|
||||
int32 ReputationMgr::GetReputation(FactionEntry const* factionEntry) const
|
||||
|
|
@ -107,14 +101,10 @@ uint32 ReputationMgr::GetDefaultStateFlags(FactionEntry const* factionEntry) con
|
|||
|
||||
uint32 raceMask = m_player->getRaceMask();
|
||||
uint32 classMask = m_player->getClassMask();
|
||||
for (int i=0; i < 4; i++)
|
||||
{
|
||||
if( (factionEntry->BaseRepRaceMask[i] & raceMask) &&
|
||||
(factionEntry->BaseRepClassMask[i]==0 ||
|
||||
(factionEntry->BaseRepClassMask[i] & classMask) ) )
|
||||
return factionEntry->ReputationFlags[i];
|
||||
}
|
||||
return 0;
|
||||
|
||||
int idx = factionEntry->GetIndexFitTo(raceMask, classMask);
|
||||
|
||||
return idx >= 0 ? factionEntry->ReputationFlags[idx] : 0;
|
||||
}
|
||||
|
||||
void ReputationMgr::SendForceReactions()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue