mirror of
https://github.com/opensim/opensim.git
synced 2026-08-13 05:05:43 +08:00
2first dirty version and non persistent parcel uglysky
This commit is contained in:
@@ -168,8 +168,9 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||
if (Scene.RegionInfo.RegionSettings.Casino)
|
||||
flags |= (RegionFlags)(1 << 10);
|
||||
|
||||
if (Scene.RegionInfo.RegionSettings.FixedSun)
|
||||
flags |= RegionFlags.SunFixed;
|
||||
// if (Scene.RegionInfo.RegionSettings.FixedSun)
|
||||
// flags |= RegionFlags.SunFixed;
|
||||
|
||||
if (Scene.RegionInfo.RegionSettings.Sandbox)
|
||||
flags |= RegionFlags.Sandbox;
|
||||
if (Scene.RegionInfo.EstateSettings.AllowVoice)
|
||||
@@ -190,7 +191,6 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||
|
||||
// Omitted
|
||||
//
|
||||
// Omitted: NullLayer (what is that?)
|
||||
// Omitted: SkipAgentAction (what does it do?)
|
||||
|
||||
return (uint)flags;
|
||||
@@ -428,10 +428,10 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||
|
||||
private void sendDetailedEstateData(IClientAPI remote_client, UUID invoice)
|
||||
{
|
||||
uint sun = 0;
|
||||
//uint sun = 0;
|
||||
|
||||
if (Scene.RegionInfo.EstateSettings.FixedSun)
|
||||
sun = (uint)(Scene.RegionInfo.EstateSettings.SunPosition * 1024.0) + 0x1800;
|
||||
//if (Scene.RegionInfo.EstateSettings.FixedSun)
|
||||
// sun = (uint)(Scene.RegionInfo.EstateSettings.SunPosition * 1024.0) + 0x1800;
|
||||
UUID estateOwner;
|
||||
estateOwner = Scene.RegionInfo.EstateSettings.EstateOwner;
|
||||
|
||||
@@ -443,7 +443,7 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||
Scene.RegionInfo.EstateSettings.EstateID,
|
||||
Scene.RegionInfo.EstateSettings.ParentEstateID,
|
||||
GetEstateFlags(),
|
||||
sun,
|
||||
0,
|
||||
Scene.RegionInfo.RegionSettings.Covenant,
|
||||
(uint) Scene.RegionInfo.RegionSettings.CovenantChangedDateTime,
|
||||
Scene.RegionInfo.EstateSettings.AbuseEmail,
|
||||
@@ -598,11 +598,11 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||
Scene.RegionInfo.RegionSettings.TerrainLowerLimit = TerrainLowerLimit;
|
||||
|
||||
// Time of day / fixed sun
|
||||
Scene.RegionInfo.RegionSettings.UseEstateSun = UseEstateSun;
|
||||
Scene.RegionInfo.RegionSettings.FixedSun = UseFixedSun;
|
||||
Scene.RegionInfo.RegionSettings.SunPosition = SunHour;
|
||||
//Scene.RegionInfo.RegionSettings.UseEstateSun = UseEstateSun;
|
||||
//Scene.RegionInfo.RegionSettings.FixedSun = UseFixedSun;
|
||||
//Scene.RegionInfo.RegionSettings.SunPosition = SunHour;
|
||||
|
||||
if(Scene.PhysicsEnabled && Scene.PhysicsScene != null && lastwaterlevel != WaterHeight)
|
||||
if (Scene.PhysicsEnabled && Scene.PhysicsScene != null && lastwaterlevel != WaterHeight)
|
||||
Scene.PhysicsScene.SetWaterLevel(WaterHeight);
|
||||
|
||||
Scene.TriggerEstateSunUpdate();
|
||||
@@ -1405,28 +1405,28 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||
|
||||
public void HandleRegionInfoRequest(IClientAPI remote_client)
|
||||
{
|
||||
RegionInfoForEstateMenuArgs args = new RegionInfoForEstateMenuArgs();
|
||||
args.billableFactor = Scene.RegionInfo.EstateSettings.BillableFactor;
|
||||
args.estateID = Scene.RegionInfo.EstateSettings.EstateID;
|
||||
args.maxAgents = Scene.RegionInfo.RegionSettings.AgentLimit;
|
||||
args.objectBonusFactor = (float)Scene.RegionInfo.RegionSettings.ObjectBonus;
|
||||
args.parentEstateID = Scene.RegionInfo.EstateSettings.ParentEstateID;
|
||||
args.pricePerMeter = Scene.RegionInfo.EstateSettings.PricePerMeter;
|
||||
args.redirectGridX = Scene.RegionInfo.EstateSettings.RedirectGridX;
|
||||
args.redirectGridY = Scene.RegionInfo.EstateSettings.RedirectGridY;
|
||||
args.regionFlags = GetRegionFlags();
|
||||
args.simAccess = Scene.RegionInfo.AccessLevel;
|
||||
args.sunHour = (float)Scene.RegionInfo.RegionSettings.SunPosition;
|
||||
args.terrainLowerLimit = (float)Scene.RegionInfo.RegionSettings.TerrainLowerLimit;
|
||||
args.terrainRaiseLimit = (float)Scene.RegionInfo.RegionSettings.TerrainRaiseLimit;
|
||||
args.useEstateSun = Scene.RegionInfo.RegionSettings.UseEstateSun;
|
||||
args.waterHeight = (float)Scene.RegionInfo.RegionSettings.WaterHeight;
|
||||
args.simName = Scene.RegionInfo.RegionName;
|
||||
args.regionType = Scene.RegionInfo.RegionType;
|
||||
args.AgentCapacity = Scene.RegionInfo.AgentCapacity;
|
||||
args.ObjectsCapacity = Scene.RegionInfo.ObjectCapacity;
|
||||
RegionInfoForEstateMenuArgs args = new RegionInfoForEstateMenuArgs();
|
||||
args.billableFactor = Scene.RegionInfo.EstateSettings.BillableFactor;
|
||||
args.estateID = Scene.RegionInfo.EstateSettings.EstateID;
|
||||
args.maxAgents = Scene.RegionInfo.RegionSettings.AgentLimit;
|
||||
args.objectBonusFactor = (float)Scene.RegionInfo.RegionSettings.ObjectBonus;
|
||||
args.parentEstateID = Scene.RegionInfo.EstateSettings.ParentEstateID;
|
||||
args.pricePerMeter = Scene.RegionInfo.EstateSettings.PricePerMeter;
|
||||
args.redirectGridX = Scene.RegionInfo.EstateSettings.RedirectGridX;
|
||||
args.redirectGridY = Scene.RegionInfo.EstateSettings.RedirectGridY;
|
||||
args.regionFlags = GetRegionFlags();
|
||||
args.simAccess = Scene.RegionInfo.AccessLevel;
|
||||
args.sunHour = 0;
|
||||
args.terrainLowerLimit = (float)Scene.RegionInfo.RegionSettings.TerrainLowerLimit;
|
||||
args.terrainRaiseLimit = (float)Scene.RegionInfo.RegionSettings.TerrainRaiseLimit;
|
||||
args.useEstateSun = false;
|
||||
args.waterHeight = (float)Scene.RegionInfo.RegionSettings.WaterHeight;
|
||||
args.simName = Scene.RegionInfo.RegionName;
|
||||
args.regionType = Scene.RegionInfo.RegionType;
|
||||
args.AgentCapacity = Scene.RegionInfo.AgentCapacity;
|
||||
args.ObjectsCapacity = Scene.RegionInfo.ObjectCapacity;
|
||||
|
||||
remote_client.SendRegionInfoToEstateMenu(args);
|
||||
remote_client.SendRegionInfoToEstateMenu(args);
|
||||
}
|
||||
|
||||
private void HandleEstateCovenantRequest(IClientAPI remote_client)
|
||||
@@ -1529,28 +1529,11 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||
|
||||
public void handleEstateChangeInfo(IClientAPI remoteClient, UUID invoice, UUID senderID, UInt32 parms1, UInt32 parms2)
|
||||
{
|
||||
if (parms2 == 0)
|
||||
{
|
||||
Scene.RegionInfo.EstateSettings.UseGlobalTime = true;
|
||||
Scene.RegionInfo.EstateSettings.SunPosition = 0.0;
|
||||
}
|
||||
else
|
||||
{
|
||||
Scene.RegionInfo.EstateSettings.UseGlobalTime = false;
|
||||
Scene.RegionInfo.EstateSettings.SunPosition = (parms2 - 0x1800)/1024.0;
|
||||
// Warning: FixedSun should be set to True, otherwise this sun position won't be used.
|
||||
}
|
||||
|
||||
if ((parms1 & 0x00008000) != 0)
|
||||
Scene.RegionInfo.EstateSettings.PublicAccess = true;
|
||||
else
|
||||
Scene.RegionInfo.EstateSettings.PublicAccess = false;
|
||||
|
||||
if ((parms1 & 0x00000010) != 0)
|
||||
Scene.RegionInfo.EstateSettings.FixedSun = true;
|
||||
else
|
||||
Scene.RegionInfo.EstateSettings.FixedSun = false;
|
||||
|
||||
// taxfree is now !AllowAccessOverride (note the negate)
|
||||
if ((parms1 & 0x00000020) != 0)
|
||||
Scene.RegionInfo.EstateSettings.TaxFree = false;
|
||||
@@ -1597,33 +1580,18 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||
Scene.EstateDataService.StoreEstateSettings(Scene.RegionInfo.EstateSettings);
|
||||
TriggerEstateInfoChange();
|
||||
|
||||
Scene.TriggerEstateSunUpdate();
|
||||
|
||||
sendDetailedEstateData(remoteClient, invoice);
|
||||
}
|
||||
|
||||
public bool handleEstateChangeInfoCap(string estateName, UUID invoice,
|
||||
int sunHour, bool sunFixed,
|
||||
bool externallyVisible,
|
||||
bool allowDirectTeleport,
|
||||
bool denyAnonymous, bool denyAgeUnverified,
|
||||
bool alloVoiceChat, bool overridePublicAccess,
|
||||
bool allowEnviromentOverride)
|
||||
{
|
||||
if (sunHour == 0)
|
||||
{
|
||||
Scene.RegionInfo.EstateSettings.UseGlobalTime = true;
|
||||
Scene.RegionInfo.EstateSettings.SunPosition = 0.0;
|
||||
}
|
||||
else
|
||||
{
|
||||
Scene.RegionInfo.EstateSettings.UseGlobalTime = false;
|
||||
Scene.RegionInfo.EstateSettings.SunPosition = (sunHour - 0x1800) / 1024.0;
|
||||
// Warning: FixedSun should be set to True, otherwise this sun position won't be used.
|
||||
}
|
||||
|
||||
Scene.RegionInfo.EstateSettings.PublicAccess = externallyVisible;
|
||||
Scene.RegionInfo.EstateSettings.FixedSun = sunFixed;
|
||||
Scene.RegionInfo.EstateSettings.AllowDirectTeleport = allowDirectTeleport;
|
||||
|
||||
Scene.RegionInfo.EstateSettings.DenyAnonymous = denyAnonymous;
|
||||
@@ -1637,8 +1605,6 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||
Scene.EstateDataService.StoreEstateSettings(Scene.RegionInfo.EstateSettings);
|
||||
TriggerEstateInfoChange();
|
||||
|
||||
Scene.TriggerEstateSunUpdate();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -1654,8 +1620,10 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||
Scene.RegionInfo.RegionSettings.UseEstateSun,
|
||||
Scene.RegionInfo.RegionSettings.FixedSun,
|
||||
(float)Scene.RegionInfo.RegionSettings.SunPosition,
|
||||
Scene.RegionInfo.EstateSettings.UseGlobalTime,
|
||||
Scene.RegionInfo.EstateSettings.FixedSun,
|
||||
//Scene.RegionInfo.EstateSettings.UseGlobalTime,
|
||||
false,
|
||||
//Scene.RegionInfo.EstateSettings.FixedSun,
|
||||
false,
|
||||
(float)Scene.RegionInfo.EstateSettings.SunPosition);
|
||||
|
||||
// sendRegionInfoPacketToAll(); already done by setRegionTerrainSettings
|
||||
@@ -1691,7 +1659,6 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||
client.OnLandStatRequest += HandleLandStatRequest;
|
||||
}
|
||||
|
||||
|
||||
public uint GetEstateFlags()
|
||||
{
|
||||
RegionFlags flags = RegionFlags.None;
|
||||
@@ -1702,13 +1669,11 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||
flags |= RegionFlags.AllowSetHome;
|
||||
if (Scene.RegionInfo.EstateSettings.ResetHomeOnTeleport)
|
||||
flags |= RegionFlags.ResetHomeOnTeleport;
|
||||
if (Scene.RegionInfo.EstateSettings.FixedSun)
|
||||
flags |= RegionFlags.SunFixed;
|
||||
//if (Scene.RegionInfo.EstateSettings.FixedSun)
|
||||
// flags |= RegionFlags.SunFixed;
|
||||
if (!Scene.RegionInfo.EstateSettings.TaxFree) // this is now wrong means !ALLOW_ACCESS_OVERRIDE
|
||||
flags |= RegionFlags.AllowParcelAccessOverride;
|
||||
|
||||
if(Scene.RegionInfo.EstateSettings.AllowEnviromentOverride)
|
||||
flags |= RegionFlags.AllowEnviromentOverride;
|
||||
if (Scene.RegionInfo.EstateSettings.PublicAccess) //??
|
||||
flags |= (RegionFlags.PublicAllowed | RegionFlags.ExternallyVisible);
|
||||
|
||||
@@ -1732,10 +1697,12 @@ namespace OpenSim.Region.CoreModules.World.Estate
|
||||
if (Scene.RegionInfo.EstateSettings.AllowVoice)
|
||||
flags |= RegionFlags.AllowVoice;
|
||||
|
||||
|
||||
if (Scene.RegionInfo.EstateSettings.DenyMinors)
|
||||
flags |= RegionFlags.DenyAgeUnverified;
|
||||
|
||||
if (Scene.RegionInfo.EstateSettings.AllowEnviromentOverride)
|
||||
flags |= RegionFlags.AllowEnviromentOverride;
|
||||
|
||||
return (uint)flags;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user