aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--linden/indra/newview/hippolimits.cpp20
-rw-r--r--linden/indra/newview/hippolimits.h1
-rwxr-xr-xlinden/indra/newview/llviewermessage.cpp4
-rw-r--r--linden/indra/newview/llviewerregion.cpp2
4 files changed, 23 insertions, 4 deletions
diff --git a/linden/indra/newview/hippolimits.cpp b/linden/indra/newview/hippolimits.cpp
index bb2e805..2990a45 100644
--- a/linden/indra/newview/hippolimits.cpp
+++ b/linden/indra/newview/hippolimits.cpp
@@ -8,7 +8,8 @@
8#include "llviewercontrol.h" 8#include "llviewercontrol.h"
9 9
10#include <llerror.h> 10#include <llerror.h>
11 11#include "llagent.h"
12#include "llviewerregion.h"
12 13
13HippoLimits *gHippoLimits = 0; 14HippoLimits *gHippoLimits = 0;
14 15
@@ -90,7 +91,7 @@ void HippoLimits::setSecondLifeLimits()
90 S32 max_groups = gHippoGridManager->getConnectedGrid()->getMaxAgentGroups(); 91 S32 max_groups = gHippoGridManager->getConnectedGrid()->getMaxAgentGroups();
91 mMaxAgentGroups = llmax(max_groups, 25); 92 mMaxAgentGroups = llmax(max_groups, 25);
92 93
93 mMaxPrimScale = 10.0f; 94 setSecondLifeMaxPrimScale();
94 mMinPrimScale = 0.01f; 95 mMinPrimScale = 0.01f;
95 mMaxHeight = 4096.0f; 96 mMaxHeight = 4096.0f;
96 mMinHoleSize = 0.05f; 97 mMinHoleSize = 0.05f;
@@ -115,6 +116,21 @@ void HippoLimits::setSecondLifeLimits()
115 mVoiceConnector = "SLVoice"; 116 mVoiceConnector = "SLVoice";
116} 117}
117 118
119void HippoLimits::setSecondLifeMaxPrimScale()
120{
121 // SecondLife Mesh sims that allow 64m prims are ones that have BOTH these caps
122 if (gAgent.getRegion()
123 && !gAgent.getRegion()->getCapability("GetMesh").empty()
124 && !gAgent.getRegion()->getCapability("ObjectAdd").empty())
125 {
126 mMaxPrimScale = 64.f;
127 }
128 else
129 {
130 mMaxPrimScale = 10.f;
131 }
132}
133
118F32 HippoLimits::getMaxPrimScale() const 134F32 HippoLimits::getMaxPrimScale() const
119{ 135{
120 if (gSavedSettings.getBOOL("DisableMaxBuildConstraints") && !mEnforceMaxBuild) 136 if (gSavedSettings.getBOOL("DisableMaxBuildConstraints") && !mEnforceMaxBuild)
diff --git a/linden/indra/newview/hippolimits.h b/linden/indra/newview/hippolimits.h
index 9d6b2f6..d63d1b0 100644
--- a/linden/indra/newview/hippolimits.h
+++ b/linden/indra/newview/hippolimits.h
@@ -64,6 +64,7 @@ public:
64private: 64private:
65 void setOpenSimLimits(); 65 void setOpenSimLimits();
66 void setSecondLifeLimits(); 66 void setSecondLifeLimits();
67 void setSecondLifeMaxPrimScale();
67}; 68};
68 69
69 70
diff --git a/linden/indra/newview/llviewermessage.cpp b/linden/indra/newview/llviewermessage.cpp
index f67f0dc..32d7172 100755
--- a/linden/indra/newview/llviewermessage.cpp
+++ b/linden/indra/newview/llviewermessage.cpp
@@ -3828,10 +3828,10 @@ void process_agent_movement_complete(LLMessageSystem* msg, void**)
3828 return; 3828 return;
3829 } 3829 }
3830 3830
3831 gHippoLimits->setLimits();
3832
3831 if (!gLastVersionChannel.empty()) 3833 if (!gLastVersionChannel.empty())
3832 { 3834 {
3833 gHippoLimits->setLimits();
3834
3835 if (gSavedSettings.getBOOL("ServerVersionChangedChat")) 3835 if (gSavedSettings.getBOOL("ServerVersionChangedChat"))
3836 { 3836 {
3837 LLStringUtil::format_map_t args; 3837 LLStringUtil::format_map_t args;
diff --git a/linden/indra/newview/llviewerregion.cpp b/linden/indra/newview/llviewerregion.cpp
index eba0db7..a43e0c0 100644
--- a/linden/indra/newview/llviewerregion.cpp
+++ b/linden/indra/newview/llviewerregion.cpp
@@ -1439,12 +1439,14 @@ void LLViewerRegion::setSeedCapability(const std::string& url)
1439 capabilityNames.append("FetchLibDescendents"); 1439 capabilityNames.append("FetchLibDescendents");
1440 capabilityNames.append("GetDisplayNames"); 1440 capabilityNames.append("GetDisplayNames");
1441 capabilityNames.append("SetDisplayName"); 1441 capabilityNames.append("SetDisplayName");
1442 capabilityNames.append("GetMesh"); // lets us know if this is a SL-Mesh region
1442 capabilityNames.append("GetTexture"); 1443 capabilityNames.append("GetTexture");
1443 capabilityNames.append("GroupProposalBallot"); 1444 capabilityNames.append("GroupProposalBallot");
1444 capabilityNames.append("HomeLocation"); 1445 capabilityNames.append("HomeLocation");
1445 capabilityNames.append("MapLayer"); 1446 capabilityNames.append("MapLayer");
1446 capabilityNames.append("MapLayerGod"); 1447 capabilityNames.append("MapLayerGod");
1447 capabilityNames.append("NewFileAgentInventory"); 1448 capabilityNames.append("NewFileAgentInventory");
1449 capabilityNames.append("ObjectAdd"); // lets us know if this is a SL-Mesh region
1448 capabilityNames.append("ParcelPropertiesUpdate"); 1450 capabilityNames.append("ParcelPropertiesUpdate");
1449 capabilityNames.append("ParcelMediaURLFilterList"); 1451 capabilityNames.append("ParcelMediaURLFilterList");
1450 capabilityNames.append("ParcelNavigateMedia"); 1452 capabilityNames.append("ParcelNavigateMedia");