[RLV] 2.9: @shownametags

This hides name tags and names whenever possible, except from chat.. when not possible, falls back on anonyms

Changed: Radar no longer hidess based on @shownames, that's silly.. now radar hides names when @shownames
Radar will alert when @shownames restricted, but not when @shownametags restricted
Radar will not offer menu when @shownames or @shownametags restricted, and the IM and Profile buttons will disable.

Hopefully fixed broken RLVa logic in llfloaterobjectiminfo.cpp
Fix slightly broken RLVa logic code in llpanelpermissions.cpp
Changed: Range Finder now disallowed when minimap disabled, show loc restriction doesn't change it anymore.
Fix broken hiding of names when offering teleports; rlv_shownames param doesn't seem to always pass, work around those situations...
^-This causes some false positives, I suppose, if you offer teleport from friends list to someone in the region, but better safe than sorry.
This commit is contained in:
Inusaito Sayori
2015-05-22 16:53:32 -04:00
parent aa1e0ce067
commit 4f8cbb8c06
23 changed files with 170 additions and 62 deletions

View File

@@ -163,7 +163,7 @@ void LLToolGun::draw()
static const LLCachedControl<LLColor4> color("LiruCrosshairColor");
LLColor4 targetColor = color;
targetColor.mV[VALPHA] = 0.5f;
if (show_iff)
if (show_iff && !gRlvHandler.hasBehaviour(RLV_BHVR_SHOWMINIMAP))
{
LLVector3d myPosition = gAgentCamera.getCameraPositionGlobal();
LLQuaternion myRotation = LLViewerCamera::getInstance()->getQuaternion();
@@ -186,13 +186,15 @@ 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;
LLAvatarNameCache::get(id, &avatarName);
bool name_restricted = gRlvHandler.hasBehaviour(RLV_BHVR_SHOWNAMES);
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(name_restricted ? RlvStrings::getAnonym(avatarName.getNSName()) : avatarName.getNSName());
const std::string name(no_names ? LLStringUtil::null : name_restricted ? RlvStrings::getAnonym(avatarName.getNSName()) : avatarName.getNSName());
targetColor.mV[VALPHA] = 0.5f;
LLFontGL::getFontSansSerifBold()->renderUTF8(
gRlvHandler.hasBehaviour(RLV_BHVR_SHOWLOC) ? name : llformat("%s : %.2fm", name.c_str(), (targetPosition - myPosition).magVec()),
llformat("%s : %.2fm", name.c_str(), (targetPosition - myPosition).magVec()),
0, (windowWidth / 2.f), (windowHeight / 2.f) - 25.f, targetColor,
LLFontGL::HCENTER, LLFontGL::TOP, LLFontGL::BOLD, LLFontGL::NO_SHADOW
);