diff options
author | mingchen | 2008-06-11 17:31:43 +0000 |
---|---|---|
committer | mingchen | 2008-06-11 17:31:43 +0000 |
commit | 0896cb53d4bb9ffb4492a1a5dfdc2749d9117abb (patch) | |
tree | 644718e985b16ae25ea9b1779444ebf80c64ceb9 /OpenSim/Region/Environment/Modules/World/Land/LandObject.cs | |
parent | Mantis#1514. Thank you kindly, Boscata for an InventoryServer patch (diff) | |
download | opensim-SC_OLD-0896cb53d4bb9ffb4492a1a5dfdc2749d9117abb.zip opensim-SC_OLD-0896cb53d4bb9ffb4492a1a5dfdc2749d9117abb.tar.gz opensim-SC_OLD-0896cb53d4bb9ffb4492a1a5dfdc2749d9117abb.tar.bz2 opensim-SC_OLD-0896cb53d4bb9ffb4492a1a5dfdc2749d9117abb.tar.xz |
*Parcel Prim Count Maximums moved to their own functions so modules can override the default method of calculating how many prims a parcel can have.
Diffstat (limited to 'OpenSim/Region/Environment/Modules/World/Land/LandObject.cs')
-rw-r--r-- | OpenSim/Region/Environment/Modules/World/Land/LandObject.cs | 43 |
1 files changed, 41 insertions, 2 deletions
diff --git a/OpenSim/Region/Environment/Modules/World/Land/LandObject.cs b/OpenSim/Region/Environment/Modules/World/Land/LandObject.cs index f5b1a1d..2ff48cc 100644 --- a/OpenSim/Region/Environment/Modules/World/Land/LandObject.cs +++ b/OpenSim/Region/Environment/Modules/World/Land/LandObject.cs | |||
@@ -116,13 +116,52 @@ namespace OpenSim.Region.Environment.Modules.World.Land | |||
116 | return newLand; | 116 | return newLand; |
117 | } | 117 | } |
118 | 118 | ||
119 | #endregion | 119 | |
120 | static overrideParcelMaxPrimCountDelegate overrideParcelMaxPrimCount; | ||
121 | static overrideSimulatorMaxPrimCountDelegate overrideSimulatorMaxPrimCount; | ||
122 | |||
123 | public void setParcelObjectMaxOverride(overrideParcelMaxPrimCountDelegate overrideDel) | ||
124 | { | ||
125 | overrideParcelMaxPrimCount = overrideDel; | ||
126 | } | ||
127 | public void setSimulatorObjectMaxOverride(overrideSimulatorMaxPrimCountDelegate overrideDel) | ||
128 | { | ||
129 | overrideSimulatorMaxPrimCount = overrideDel; | ||
130 | } | ||
120 | 131 | ||
132 | public int getParcelMaxPrimCount(ILandObject thisObject) | ||
133 | { | ||
134 | if (overrideParcelMaxPrimCount != null) | ||
135 | { | ||
136 | return overrideParcelMaxPrimCount(thisObject); | ||
137 | } | ||
138 | else | ||
139 | { | ||
140 | //Normal Calculations | ||
141 | return Convert.ToInt32( | ||
142 | Math.Round((Convert.ToDecimal(landData.area) / Convert.ToDecimal(65536)) * m_scene.objectCapacity * | ||
143 | Convert.ToDecimal(m_scene.RegionInfo.EstateSettings.objectBonusFactor))); ; | ||
144 | } | ||
145 | } | ||
146 | public int getSimulatorMaxPrimCount(ILandObject thisObject) | ||
147 | { | ||
148 | if (overrideSimulatorMaxPrimCount != null) | ||
149 | { | ||
150 | return overrideSimulatorMaxPrimCount(thisObject); | ||
151 | } | ||
152 | else | ||
153 | { | ||
154 | //Normal Calculations | ||
155 | return m_scene.objectCapacity; | ||
156 | } | ||
157 | } | ||
158 | #endregion | ||
159 | |||
121 | #region Packet Request Handling | 160 | #region Packet Request Handling |
122 | 161 | ||
123 | public void sendLandProperties(int sequence_id, bool snap_selection, int request_result, IClientAPI remote_client) | 162 | public void sendLandProperties(int sequence_id, bool snap_selection, int request_result, IClientAPI remote_client) |
124 | { | 163 | { |
125 | remote_client.sendLandProperties(remote_client, sequence_id, snap_selection, request_result, landData, m_scene.RegionInfo.EstateSettings.objectBonusFactor, m_scene.objectCapacity,(uint) m_scene.RegionInfo.EstateSettings.regionFlags); | 164 | remote_client.sendLandProperties(remote_client, sequence_id, snap_selection, request_result, landData, m_scene.RegionInfo.EstateSettings.objectBonusFactor, getParcelMaxPrimCount(this), getSimulatorMaxPrimCount(this), (uint)m_scene.RegionInfo.EstateSettings.regionFlags); |
126 | } | 165 | } |
127 | 166 | ||
128 | public void updateLandProperties(LandUpdateArgs args, IClientAPI remote_client) | 167 | public void updateLandProperties(LandUpdateArgs args, IClientAPI remote_client) |