Tweak to PrimLimits and add missing Regions.ini example
Signed-off-by: Melanie <melanie@t-data.com>0.8.0.3
parent
f0998a9222
commit
18b91fdbe9
|
@ -175,15 +175,9 @@ namespace OpenSim.Region.OptionalModules
|
||||||
private string DoCommonChecks(int objectCount, UUID ownerID, ILandObject lo, Scene scene)
|
private string DoCommonChecks(int objectCount, UUID ownerID, ILandObject lo, Scene scene)
|
||||||
{
|
{
|
||||||
string response = null;
|
string response = null;
|
||||||
EstateSettings estateSettings = scene.RegionInfo.EstateSettings;
|
|
||||||
|
|
||||||
// counts don't seem to be updated, so force it.
|
|
||||||
scene.EventManager.TriggerParcelPrimCountUpdate();
|
|
||||||
|
|
||||||
int usedPrims = lo.PrimCounts.Total;
|
|
||||||
int simulatorCapacity = lo.GetSimulatorMaxPrimCount();
|
int simulatorCapacity = lo.GetSimulatorMaxPrimCount();
|
||||||
|
if ((objectCount + lo.PrimCounts.Total) > simulatorCapacity)
|
||||||
if ((objectCount + usedPrims) > simulatorCapacity)
|
|
||||||
{
|
{
|
||||||
response = "Unable to rez object because the parcel is too full";
|
response = "Unable to rez object because the parcel is too full";
|
||||||
}
|
}
|
||||||
|
@ -195,21 +189,16 @@ namespace OpenSim.Region.OptionalModules
|
||||||
// per-user prim limit is set
|
// per-user prim limit is set
|
||||||
if (ownerID != lo.LandData.OwnerID || lo.LandData.IsGroupOwned)
|
if (ownerID != lo.LandData.OwnerID || lo.LandData.IsGroupOwned)
|
||||||
{
|
{
|
||||||
// caller is not the sole parcel owner
|
// caller is not the sole Parcel owner
|
||||||
|
EstateSettings estateSettings = scene.RegionInfo.EstateSettings;
|
||||||
if (ownerID != estateSettings.EstateOwner)
|
if (ownerID != estateSettings.EstateOwner)
|
||||||
{
|
{
|
||||||
// caller is NOT the Estate owner
|
// caller is NOT the Estate owner
|
||||||
List<UUID> mgrs = new List<UUID>(estateSettings.EstateManagers);
|
List<UUID> mgrs = new List<UUID>(estateSettings.EstateManagers);
|
||||||
if (!mgrs.Contains(ownerID))
|
if (!mgrs.Contains(ownerID))
|
||||||
{
|
{
|
||||||
// caller is NOT an Estate Manager, so check quota
|
// caller is not an Estate Manager
|
||||||
Dictionary<UUID, int> objectMap = lo.GetLandObjectOwners();
|
if ((lo.PrimCounts.Users[ownerID] + objectCount) > maxPrimsPerUser)
|
||||||
int currentCount;
|
|
||||||
if (!objectMap.TryGetValue(ownerID, out currentCount))
|
|
||||||
{
|
|
||||||
currentCount = 0;
|
|
||||||
}
|
|
||||||
if ((currentCount + objectCount) > maxPrimsPerUser)
|
|
||||||
{
|
{
|
||||||
response = "Unable to rez object because you have reached your limit";
|
response = "Unable to rez object because you have reached your limit";
|
||||||
}
|
}
|
||||||
|
|
|
@ -34,6 +34,10 @@ ExternalHostName = "SYSTEMIP"
|
||||||
; MaxPrims = 15000
|
; MaxPrims = 15000
|
||||||
; MaxAgents = 100
|
; MaxAgents = 100
|
||||||
|
|
||||||
|
; * Max prims per user (per parcel).
|
||||||
|
; * Negative values will disable the check.
|
||||||
|
; MaxPrimsPerUser = -1
|
||||||
|
|
||||||
; *
|
; *
|
||||||
; * Multi-Tenancy. Only set if needed
|
; * Multi-Tenancy. Only set if needed
|
||||||
; *
|
; *
|
||||||
|
@ -83,4 +87,4 @@ ExternalHostName = "SYSTEMIP"
|
||||||
; * built using MapImageModule's terrain and prim renderer. Parcel 'for sale' overlays are
|
; * built using MapImageModule's terrain and prim renderer. Parcel 'for sale' overlays are
|
||||||
; * still drawn on top of the static map by the World Map module.
|
; * still drawn on top of the static map by the World Map module.
|
||||||
|
|
||||||
; MaptileStaticFile = "SomeFile.png"
|
; MaptileStaticFile = "SomeFile.png"
|
||||||
|
|
Loading…
Reference in New Issue