[RLVa] If name or nametag restricted, camavdist restricted, rangefinder can only see within the limited distance.

(or in iff_range, if that's lower)
This commit is contained in:
Inusaito Sayori
2015-06-04 09:51:35 -04:00
parent 96e88b97ef
commit 9f388fd7b8

View File

@@ -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;