diff options
author | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2023-04-17 15:31:22 +0300 |
---|---|---|
committer | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2023-04-18 15:53:13 +0300 |
commit | 1f94ac9b89ddc86160e92a361bda42347b975f67 (patch) | |
tree | b6b7cd38dc5d6c7971d89ad93cbd9ba50cd0c401 /indra/newview | |
parent | eaccee37f2875c4d2378cf0ce562f382b88487d7 (diff) |
SL-19549 Add option to show ban lines on collision #2
Diffstat (limited to 'indra/newview')
-rw-r--r-- | indra/newview/llviewermessage.cpp | 10 | ||||
-rw-r--r-- | indra/newview/llviewerparcelmgr.cpp | 10 | ||||
-rw-r--r-- | indra/newview/llviewerparcelmgr.h | 6 |
3 files changed, 18 insertions, 8 deletions
diff --git a/indra/newview/llviewermessage.cpp b/indra/newview/llviewermessage.cpp index a535433b5b..a60f11d97b 100644 --- a/indra/newview/llviewermessage.cpp +++ b/indra/newview/llviewermessage.cpp @@ -5151,7 +5151,11 @@ bool attempt_standard_notification(LLMessageSystem* msgsystem) LandBuyAccessBlocked_AdultsOnlyContent -----------------------------------------------------------------------*/ - LLViewerParcelMgr::getInstance()->resetCollisionTimer(); + static LLCachedControl<S32> ban_lines_mode(gSavedSettings , "ShowBanLines" , LLViewerParcelMgr::PARCEL_BAN_LINES_ON_COLLISION); + if (ban_lines_mode == LLViewerParcelMgr::PARCEL_BAN_LINES_ON_COLLISION) + { + LLViewerParcelMgr::getInstance()->resetCollisionTimer(); + } if (handle_special_notification(notificationID, llsdBlock)) { return true; @@ -5321,7 +5325,9 @@ void process_alert_message(LLMessageSystem *msgsystem, void **user_data) BOOL modal = FALSE; process_alert_core(message, modal); - if (message.find("Cannot enter parcel") != std::string::npos) + static LLCachedControl<S32> ban_lines_mode(gSavedSettings , "ShowBanLines" , LLViewerParcelMgr::PARCEL_BAN_LINES_ON_COLLISION); + if (ban_lines_mode == LLViewerParcelMgr::PARCEL_BAN_LINES_ON_COLLISION + && message.find("Cannot enter parcel") != std::string::npos) { LLViewerParcelMgr::getInstance()->resetCollisionTimer(); } diff --git a/indra/newview/llviewerparcelmgr.cpp b/indra/newview/llviewerparcelmgr.cpp index bb68278555..15accd0547 100644 --- a/indra/newview/llviewerparcelmgr.cpp +++ b/indra/newview/llviewerparcelmgr.cpp @@ -74,14 +74,14 @@ const F32 PARCEL_BAN_LINES_DRAW_SECS_ON_COLLISION = 10.f; const F32 PARCEL_COLLISION_DRAW_SECS_ON_PROXIMITY = 1.f; -const S32 PARCEL_BAN_LINES_HIDE = 0; -const S32 PARCEL_BAN_LINES_ON_COLLISION = 1; -const S32 PARCEL_BAN_LINES_ON_PROXIMITY = 2; // Globals U8* LLViewerParcelMgr::sPackedOverlay = NULL; +S32 LLViewerParcelMgr::PARCEL_BAN_LINES_HIDE = 0; +S32 LLViewerParcelMgr::PARCEL_BAN_LINES_ON_COLLISION = 1; +S32 LLViewerParcelMgr::PARCEL_BAN_LINES_ON_PROXIMITY = 2; LLUUID gCurrentMovieID = LLUUID::null; @@ -896,7 +896,7 @@ void LLViewerParcelMgr::render() void LLViewerParcelMgr::renderParcelCollision() { - static LLCachedControl<S32> ban_lines_mode(gSavedSettings , "ShowBanLines" , PARCEL_BAN_LINES_DRAW_SECS_ON_COLLISION); + static LLCachedControl<S32> ban_lines_mode(gSavedSettings , "ShowBanLines" , PARCEL_BAN_LINES_ON_COLLISION); // check for expiration F32 expiration = (ban_lines_mode == PARCEL_BAN_LINES_ON_PROXIMITY) @@ -1851,7 +1851,7 @@ void LLViewerParcelMgr::processParcelProperties(LLMessageSystem *msg, void **use sequence_id == COLLISION_BANNED_PARCEL_SEQ_ID) { // We're about to collide with this parcel - static LLCachedControl<S32> ban_lines_mode(gSavedSettings , "ShowBanLines" , PARCEL_BAN_LINES_DRAW_SECS_ON_COLLISION); + static LLCachedControl<S32> ban_lines_mode(gSavedSettings , "ShowBanLines" , PARCEL_BAN_LINES_ON_COLLISION); if (ban_lines_mode == PARCEL_BAN_LINES_ON_PROXIMITY) { parcel_mgr.resetCollisionTimer(); diff --git a/indra/newview/llviewerparcelmgr.h b/indra/newview/llviewerparcelmgr.h index d45ff674af..56dacd3efd 100644 --- a/indra/newview/llviewerparcelmgr.h +++ b/indra/newview/llviewerparcelmgr.h @@ -204,7 +204,11 @@ public: void renderOneSegment(F32 x1, F32 y1, F32 x2, F32 y2, F32 height, U8 direction, LLViewerRegion* regionp); void renderHighlightSegments(const U8* segments, LLViewerRegion* regionp); void renderCollisionSegments(U8* segments, BOOL use_pass, LLViewerRegion* regionp); - void resetCollisionTimer(); + + static S32 PARCEL_BAN_LINES_HIDE; + static S32 PARCEL_BAN_LINES_ON_COLLISION; + static S32 PARCEL_BAN_LINES_ON_PROXIMITY; + void resetCollisionTimer(); // Ban lines visibility timer void sendParcelGodForceOwner(const LLUUID& owner_id); |