Public feed
#887926
void BattleGround::RewardReputationToTeam(uint32 faction_id, uint32 Reputation, uint32 TeamID, Player* killer, bool range)
{
FactionEntry const* factionEntry = sFactionStore.LookupEntry(faction_id);
if(!factionEntry)
return;
for(std::map<uint64, BattleGroundPlayer>::iterator itr = m_Players.begin(); itr != m_Players.end(); ++itr)
{
Player *plr = objmgr.GetPlayer(itr->first);
if(!plr)
{
sLog.outError("BattleGround: Player " I64FMTD " not found!", itr->first);
continue;
}
if(plr->GetTeam() == TeamID)
if(range && killer)
{
if(plr->IsWithinDistInMap(killer,DEFAULT_VISIBILITY_DISTANCE))
plr->ModifyFactionReputation(factionEntry, Reputation);
else continue;
}
else plr->ModifyFactionReputation(factionEntry, Reputation);
}
}