diff --git a/indra/newview/lltoolgun.cpp b/indra/newview/lltoolgun.cpp index 9fade3c0b..f0f3ebb24 100644 --- a/indra/newview/lltoolgun.cpp +++ b/indra/newview/lltoolgun.cpp @@ -169,9 +169,12 @@ void LLToolGun::draw() LLQuaternion myRotation = LLViewerCamera::getInstance()->getQuaternion(); myRotation.set(-myRotation.mQ[VX], -myRotation.mQ[VY], -myRotation.mQ[VZ], myRotation.mQ[VW]); + bool no_names(gRlvHandler.hasBehaviour(RLV_BHVR_SHOWNAMETAGS)); + bool name_restricted = no_names || gRlvHandler.hasBehaviour(RLV_BHVR_SHOWNAMES); + LLWorld::pos_map_t positions; LLWorld& world(LLWorld::instance()); - world.getAvatars(&positions, gAgent.getPositionGlobal(), iff_range); + world.getAvatars(&positions, gAgent.getPositionGlobal(), name_restricted && gRlvHandler.hasBehaviour(RLV_BHVR_CAMAVDIST) ? llmin(iff_range(), gRlvHandler.camPole(RLV_BHVR_CAMAVDIST)) : iff_range); for (LLWorld::pos_map_t::const_iterator iter = positions.cbegin(), iter_end = positions.cend(); iter != iter_end; ++iter) { const LLUUID& id = iter->first; @@ -186,10 +189,8 @@ void LLToolGun::draw() if (magicVector.mdV[VX] > -0.75 && magicVector.mdV[VX] < 0.75 && magicVector.mdV[VZ] > 0.0 && magicVector.mdV[VY] > -1.5 && magicVector.mdV[VY] < 1.5) // Do not fuck with these, cheater. :( { LLAvatarName avatarName; - bool no_names(gRlvHandler.hasBehaviour(RLV_BHVR_SHOWNAMETAGS)); if (!no_names) LLAvatarNameCache::get(id, &avatarName); - bool name_restricted = no_names || gRlvHandler.hasBehaviour(RLV_BHVR_SHOWNAMES); getCustomColorRLV(id, targetColor, world.getRegionFromPosGlobal(targetPosition), name_restricted); const std::string name(no_names ? LLStringUtil::null : name_restricted ? RlvStrings::getAnonym(avatarName.getNSName()) : avatarName.getNSName()); targetColor.mV[VALPHA] = 0.5f;