aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorMelanie Thielker2008-07-14 01:39:36 +0000
committerMelanie Thielker2008-07-14 01:39:36 +0000
commit07bd749ac56dc498610fc88e61cc7ab04047620e (patch)
tree7e1e8f017f1abe0f3dcc21c29bbae7bafb4b456f
parentPatch #9149 (diff)
downloadopensim-SC_OLD-07bd749ac56dc498610fc88e61cc7ab04047620e.zip
opensim-SC_OLD-07bd749ac56dc498610fc88e61cc7ab04047620e.tar.gz
opensim-SC_OLD-07bd749ac56dc498610fc88e61cc7ab04047620e.tar.bz2
opensim-SC_OLD-07bd749ac56dc498610fc88e61cc7ab04047620e.tar.xz
Patch #9150
Patch 7 of the region patches. Finish off the region parts of the estate dialog. Full user functionality. Terrain textures, heights, water, avatar counts, prim bonus, debug settings and region toggles can now be set from the dialog on a per-region basis. Estate stuff defaults to sane values where there are no defaults, to estate_settings.xml otherwise. Sun still b0rked :(
-rw-r--r--OpenSim/Framework/EstateSettings.cs87
-rw-r--r--OpenSim/Framework/RegionSettings.cs16
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs30
-rw-r--r--OpenSim/Region/Communications/Local/LocalBackEndServices.cs2
-rw-r--r--OpenSim/Region/Communications/OGS1/OGS1GridServices.cs2
-rw-r--r--OpenSim/Region/Environment/Modules/World/Estate/EstateManagementModule.cs81
-rw-r--r--OpenSim/Region/Environment/Modules/World/Sun/SunModule.cs6
-rw-r--r--OpenSim/Region/Environment/Scenes/Scene.cs8
-rw-r--r--OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs2
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs2
10 files changed, 117 insertions, 119 deletions
diff --git a/OpenSim/Framework/EstateSettings.cs b/OpenSim/Framework/EstateSettings.cs
index 0cab498..2865844 100644
--- a/OpenSim/Framework/EstateSettings.cs
+++ b/OpenSim/Framework/EstateSettings.cs
@@ -58,11 +58,6 @@ namespace OpenSim.Framework
58 private int m_pricePerMeter; 58 private int m_pricePerMeter;
59 private int m_redirectGridX; 59 private int m_redirectGridX;
60 private int m_redirectGridY; 60 private int m_redirectGridY;
61 private float m_sunHour;
62 private LLVector3 m_sunPosition;
63 private string m_terrainFile;
64 private LLUUID m_terrainImageID;
65 private double m_terrainMultiplier;
66 61
67 public EstateSettings() 62 public EstateSettings()
68 { 63 {
@@ -126,25 +121,6 @@ namespace OpenSim.Framework
126 } 121 }
127 } 122 }
128 123
129 public float sunHour
130 {
131 get { return m_sunHour; }
132 set
133 {
134 m_sunHour = value;
135 }
136 }
137
138 public LLVector3 sunPosition
139 {
140 get { return m_sunPosition; }
141 set
142 {
143 //Just set - does not need to be written to settings file
144 m_sunPosition = value;
145 }
146 }
147
148 public int pricePerMeter 124 public int pricePerMeter
149 { 125 {
150 get { return m_pricePerMeter; } 126 get { return m_pricePerMeter; }
@@ -155,45 +131,6 @@ namespace OpenSim.Framework
155 } 131 }
156 } 132 }
157 133
158
159 // First quad - each point is bilinearly interpolated at each meter of terrain
160
161 // Terrain Default (Must be in F32 Format!)
162
163 public string terrainFile
164 {
165 get { return m_terrainFile; }
166 set
167 {
168 m_terrainFile = value;
169 configMember.forceSetConfigurationOption("terrain_file", m_terrainFile.ToString());
170 }
171 }
172
173 public double terrainMultiplier
174 {
175 get { return m_terrainMultiplier; }
176 set
177 {
178 m_terrainMultiplier = value;
179 configMember.forceSetConfigurationOption("terrain_multiplier", m_terrainMultiplier.ToString());
180 }
181 }
182
183 public LLUUID terrainImageID
184 {
185 get { return m_terrainImageID; }
186 set
187 {
188 m_terrainImageID = value;
189 // I don't think there is a reason that this actually
190 // needs to be written back to the estate settings
191 // file.
192
193 // configMember.forceSetConfigurationOption("terrain_image_id", m_terrainImageID.ToString());
194 }
195 }
196
197 // Estate name 134 // Estate name
198 135
199 public string estateName 136 public string estateName
@@ -461,22 +398,11 @@ namespace OpenSim.Framework
461 "0", true); 398 "0", true);
462 configMember.addConfigurationOption("redirect_grid_y", ConfigurationOption.ConfigurationTypes.TYPE_INT32, String.Empty, 399 configMember.addConfigurationOption("redirect_grid_y", ConfigurationOption.ConfigurationTypes.TYPE_INT32, String.Empty,
463 "0", true); 400 "0", true);
464 configMember.addConfigurationOption("sun_hour", ConfigurationOption.ConfigurationTypes.TYPE_FLOAT, String.Empty, "0",
465 true);
466 configMember.addConfigurationOption("use_fixed_sun", ConfigurationOption.ConfigurationTypes.TYPE_BOOLEAN, String.Empty,
467 "false", true);
468 configMember.addConfigurationOption("price_per_meter", ConfigurationOption.ConfigurationTypes.TYPE_UINT32, 401 configMember.addConfigurationOption("price_per_meter", ConfigurationOption.ConfigurationTypes.TYPE_UINT32,
469 String.Empty, "1", true); 402 String.Empty, "1", true);
470 403
471 configMember.addConfigurationOption("terrain_file",
472 ConfigurationOption.ConfigurationTypes.TYPE_STRING_NOT_EMPTY, String.Empty,
473 "default.r32", true);
474 configMember.addConfigurationOption("terrain_multiplier", ConfigurationOption.ConfigurationTypes.TYPE_FLOAT,
475 String.Empty, "60.0", true);
476 configMember.addConfigurationOption("water_height", ConfigurationOption.ConfigurationTypes.TYPE_DOUBLE, String.Empty, 404 configMember.addConfigurationOption("water_height", ConfigurationOption.ConfigurationTypes.TYPE_DOUBLE, String.Empty,
477 "20.0", true); 405 "20.0", true);
478 configMember.addConfigurationOption("terrain_image_id", ConfigurationOption.ConfigurationTypes.TYPE_LLUUID,
479 String.Empty, "00000000-0000-0000-0000-000000000000", true);
480 406
481 configMember.addConfigurationOption("estate_name", ConfigurationOption.ConfigurationTypes.TYPE_STRING, 407 configMember.addConfigurationOption("estate_name", ConfigurationOption.ConfigurationTypes.TYPE_STRING,
482 String.Empty, "TestEstate", true); 408 String.Empty, "TestEstate", true);
@@ -521,26 +447,13 @@ namespace OpenSim.Framework
521 case "redirect_grid_y": 447 case "redirect_grid_y":
522 m_redirectGridY = (int) configuration_result; 448 m_redirectGridY = (int) configuration_result;
523 break; 449 break;
524 case "sun_hour":
525 m_sunHour = (float) configuration_result;
526 break;
527 case "price_per_meter": 450 case "price_per_meter":
528 m_pricePerMeter = Convert.ToInt32(configuration_result); 451 m_pricePerMeter = Convert.ToInt32(configuration_result);
529 break; 452 break;
530 453
531 case "terrain_file":
532 m_terrainFile = (string) configuration_result;
533 break;
534 case "estate_name": 454 case "estate_name":
535 m_estateName = (string) configuration_result; 455 m_estateName = (string) configuration_result;
536 break; 456 break;
537 case "terrain_multiplier":
538 m_terrainMultiplier = Convert.ToDouble(configuration_result);
539 break;
540 case "terrain_image_id":
541 m_terrainImageID = (LLUUID) configuration_result;
542 break;
543
544 case "estate_manager_0": 457 case "estate_manager_0":
545 m_estateManager0 = (LLUUID) configuration_result; 458 m_estateManager0 = (LLUUID) configuration_result;
546 break; 459 break;
diff --git a/OpenSim/Framework/RegionSettings.cs b/OpenSim/Framework/RegionSettings.cs
index 3b24901..be57c1b 100644
--- a/OpenSim/Framework/RegionSettings.cs
+++ b/OpenSim/Framework/RegionSettings.cs
@@ -474,6 +474,22 @@ namespace OpenSim.Framework
474 set { m_UseEstateSun = value; } 474 set { m_UseEstateSun = value; }
475 } 475 }
476 476
477 private LLVector3 m_SunVector;
478
479 public LLVector3 SunVector
480 {
481 get { return m_SunVector; }
482 set { m_SunVector = value; }
483 }
484
485 private LLUUID m_TerrainImageID;
486
487 public LLUUID TerrainImageID
488 {
489 get { return m_TerrainImageID; }
490 set { m_TerrainImageID = value; }
491 }
492
477 private bool m_FixedSun = false; 493 private bool m_FixedSun = false;
478 494
479 public bool FixedSun 495 public bool FixedSun
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
index e8a54bf..b170f28 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
@@ -5884,21 +5884,21 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5884 } 5884 }
5885 5885
5886 break; 5886 break;
5887 case "texturebase": 5887// case "texturebase":
5888 if (((Scene)m_scene).ExternalChecks.ExternalChecksCanIssueEstateCommand(this.AgentId)) 5888// if (((Scene)m_scene).ExternalChecks.ExternalChecksCanIssueEstateCommand(this.AgentId))
5889 { 5889// {
5890 foreach (EstateOwnerMessagePacket.ParamListBlock block in messagePacket.ParamList) 5890// foreach (EstateOwnerMessagePacket.ParamListBlock block in messagePacket.ParamList)
5891 { 5891// {
5892 string s = Helpers.FieldToUTF8String(block.Parameter); 5892// string s = Helpers.FieldToUTF8String(block.Parameter);
5893 string[] splitField = s.Split(' '); 5893// string[] splitField = s.Split(' ');
5894 if (splitField.Length == 2) 5894// if (splitField.Length == 2)
5895 { 5895// {
5896 LLUUID tempUUID = new LLUUID(splitField[1]); 5896// LLUUID tempUUID = new LLUUID(splitField[1]);
5897 OnSetEstateTerrainBaseTexture(this, Convert.ToInt16(splitField[0]), tempUUID); 5897// OnSetEstateTerrainBaseTexture(this, Convert.ToInt16(splitField[0]), tempUUID);
5898 } 5898// }
5899 } 5899// }
5900 } 5900// }
5901 break; 5901// break;
5902 case "texturedetail": 5902 case "texturedetail":
5903 if (((Scene)m_scene).ExternalChecks.ExternalChecksCanIssueEstateCommand(this.AgentId)) 5903 if (((Scene)m_scene).ExternalChecks.ExternalChecksCanIssueEstateCommand(this.AgentId))
5904 { 5904 {
diff --git a/OpenSim/Region/Communications/Local/LocalBackEndServices.cs b/OpenSim/Region/Communications/Local/LocalBackEndServices.cs
index 782465e..fa7a2de 100644
--- a/OpenSim/Region/Communications/Local/LocalBackEndServices.cs
+++ b/OpenSim/Region/Communications/Local/LocalBackEndServices.cs
@@ -208,7 +208,7 @@ namespace OpenSim.Region.Communications.Local
208 map.X = (ushort) regInfo.RegionLocX; 208 map.X = (ushort) regInfo.RegionLocX;
209 map.Y = (ushort) regInfo.RegionLocY; 209 map.Y = (ushort) regInfo.RegionLocY;
210 map.WaterHeight = (byte) regInfo.RegionSettings.WaterHeight; 210 map.WaterHeight = (byte) regInfo.RegionSettings.WaterHeight;
211 map.MapImageId = regInfo.EstateSettings.terrainImageID; 211 map.MapImageId = regInfo.RegionSettings.TerrainImageID;
212 map.Agents = 1; 212 map.Agents = 1;
213 map.RegionFlags = 72458694; 213 map.RegionFlags = 72458694;
214 map.Access = 13; 214 map.Access = 13;
diff --git a/OpenSim/Region/Communications/OGS1/OGS1GridServices.cs b/OpenSim/Region/Communications/OGS1/OGS1GridServices.cs
index 2192d12..6f4a563 100644
--- a/OpenSim/Region/Communications/OGS1/OGS1GridServices.cs
+++ b/OpenSim/Region/Communications/OGS1/OGS1GridServices.cs
@@ -118,7 +118,7 @@ namespace OpenSim.Region.Communications.OGS1
118 GridParams["sim_name"] = regionInfo.RegionName; 118 GridParams["sim_name"] = regionInfo.RegionName;
119 GridParams["http_port"] = serversInfo.HttpListenerPort.ToString(); 119 GridParams["http_port"] = serversInfo.HttpListenerPort.ToString();
120 GridParams["remoting_port"] = NetworkServersInfo.RemotingListenerPort.ToString(); 120 GridParams["remoting_port"] = NetworkServersInfo.RemotingListenerPort.ToString();
121 GridParams["map-image-id"] = regionInfo.EstateSettings.terrainImageID.ToString(); 121 GridParams["map-image-id"] = regionInfo.RegionSettings.TerrainImageID.ToString();
122 GridParams["originUUID"] = regionInfo.originRegionID.ToString(); 122 GridParams["originUUID"] = regionInfo.originRegionID.ToString();
123 GridParams["server_uri"] = regionInfo.ServerURI; 123 GridParams["server_uri"] = regionInfo.ServerURI;
124 GridParams["region_secret"] = regionInfo.regionSecret; 124 GridParams["region_secret"] = regionInfo.regionSecret;
diff --git a/OpenSim/Region/Environment/Modules/World/Estate/EstateManagementModule.cs b/OpenSim/Region/Environment/Modules/World/Estate/EstateManagementModule.cs
index 55896d4..ac6a075 100644
--- a/OpenSim/Region/Environment/Modules/World/Estate/EstateManagementModule.cs
+++ b/OpenSim/Region/Environment/Modules/World/Estate/EstateManagementModule.cs
@@ -118,6 +118,7 @@ namespace OpenSim.Region.Environment.Modules.World.Estate
118 m_scene.RegionInfo.RegionSettings.TerrainTexture4 = texture; 118 m_scene.RegionInfo.RegionSettings.TerrainTexture4 = texture;
119 break; 119 break;
120 } 120 }
121 m_scene.RegionInfo.RegionSettings.Save();
121 } 122 }
122 123
123 public void setEstateTerrainTextureHeights(IClientAPI client, int corner, float lowValue, float highValue) 124 public void setEstateTerrainTextureHeights(IClientAPI client, int corner, float lowValue, float highValue)
@@ -141,6 +142,7 @@ namespace OpenSim.Region.Environment.Modules.World.Estate
141 m_scene.RegionInfo.RegionSettings.Elevation2NE = highValue; 142 m_scene.RegionInfo.RegionSettings.Elevation2NE = highValue;
142 break; 143 break;
143 } 144 }
145 m_scene.RegionInfo.RegionSettings.Save();
144 } 146 }
145 147
146 private void handleCommitEstateTerrainTextureRequest(IClientAPI remoteClient) 148 private void handleCommitEstateTerrainTextureRequest(IClientAPI remoteClient)
@@ -160,10 +162,13 @@ namespace OpenSim.Region.Environment.Modules.World.Estate
160 162
161 // Time of day / fixed sun 163 // Time of day / fixed sun
162 m_scene.RegionInfo.RegionSettings.FixedSun = UseFixedSun; 164 m_scene.RegionInfo.RegionSettings.FixedSun = UseFixedSun;
163 m_scene.RegionInfo.EstateSettings.sunHour = SunHour; 165 m_scene.RegionInfo.RegionSettings.SunPosition = SunHour;
166
164 m_scene.EventManager.TriggerEstateToolsTimeUpdate(m_scene.RegionInfo.RegionHandle, UseFixedSun, UseFixedSun, SunHour); 167 m_scene.EventManager.TriggerEstateToolsTimeUpdate(m_scene.RegionInfo.RegionHandle, UseFixedSun, UseFixedSun, SunHour);
168
165 //m_log.Debug("[ESTATE]: UFS: " + UseFixedSun.ToString()); 169 //m_log.Debug("[ESTATE]: UFS: " + UseFixedSun.ToString());
166 //m_log.Debug("[ESTATE]: SunHour: " + SunHour.ToString()); 170 //m_log.Debug("[ESTATE]: SunHour: " + SunHour.ToString());
171
167 sendRegionInfoPacketToAll(); 172 sendRegionInfoPacketToAll();
168 m_scene.RegionInfo.RegionSettings.Save(); 173 m_scene.RegionInfo.RegionSettings.Save();
169 } 174 }
@@ -368,7 +373,7 @@ namespace OpenSim.Region.Environment.Modules.World.Estate
368 args.simAccess = mature; 373 args.simAccess = mature;
369 374
370 if (m_scene.RegionInfo.RegionSettings.FixedSun) 375 if (m_scene.RegionInfo.RegionSettings.FixedSun)
371 args.sunHour = m_scene.RegionInfo.EstateSettings.sunHour; 376 args.sunHour = (float)m_scene.RegionInfo.RegionSettings.SunPosition;
372 else 377 else
373 args.sunHour = m_scene.EventManager.GetSunLindenHour(); 378 args.sunHour = m_scene.EventManager.GetSunLindenHour();
374 379
@@ -586,8 +591,12 @@ namespace OpenSim.Region.Environment.Modules.World.Estate
586 591
587 public void changeWaterHeight(float height) 592 public void changeWaterHeight(float height)
588 { 593 {
589 setRegionTerrainSettings(height, (float)m_scene.RegionInfo.RegionSettings.TerrainRaiseLimit, (float)m_scene.RegionInfo.RegionSettings.TerrainLowerLimit, 594 setRegionTerrainSettings(height,
590 m_scene.RegionInfo.RegionSettings.FixedSun, m_scene.RegionInfo.EstateSettings.sunHour); 595 (float)m_scene.RegionInfo.RegionSettings.TerrainRaiseLimit,
596 (float)m_scene.RegionInfo.RegionSettings.TerrainLowerLimit,
597 m_scene.RegionInfo.RegionSettings.FixedSun,
598 (float)m_scene.RegionInfo.RegionSettings.SunPosition);
599
591 sendRegionInfoPacketToAll(); 600 sendRegionInfoPacketToAll();
592 } 601 }
593 602
@@ -597,7 +606,8 @@ namespace OpenSim.Region.Environment.Modules.World.Estate
597 { 606 {
598 client.OnDetailedEstateDataRequest += sendDetailedEstateData; 607 client.OnDetailedEstateDataRequest += sendDetailedEstateData;
599 client.OnSetEstateFlagsRequest += estateSetRegionInfoHandler; 608 client.OnSetEstateFlagsRequest += estateSetRegionInfoHandler;
600 client.OnSetEstateTerrainBaseTexture += setEstateTerrainBaseTexture; 609// client.OnSetEstateTerrainBaseTexture += setEstateTerrainBaseTexture;
610 client.OnSetEstateTerrainDetailTexture += setEstateTerrainBaseTexture;
601 client.OnSetEstateTerrainTextureHeights += setEstateTerrainTextureHeights; 611 client.OnSetEstateTerrainTextureHeights += setEstateTerrainTextureHeights;
602 client.OnCommitEstateTerrainTextureRequest += handleCommitEstateTerrainTextureRequest; 612 client.OnCommitEstateTerrainTextureRequest += handleCommitEstateTerrainTextureRequest;
603 client.OnSetRegionTerrainSettings += setRegionTerrainSettings; 613 client.OnSetRegionTerrainSettings += setRegionTerrainSettings;
@@ -618,7 +628,66 @@ namespace OpenSim.Region.Environment.Modules.World.Estate
618 public uint GetRegionFlags() 628 public uint GetRegionFlags()
619 { 629 {
620 Simulator.RegionFlags flags = Simulator.RegionFlags.None; 630 Simulator.RegionFlags flags = Simulator.RegionFlags.None;
621 //m_scene.RegionInfo.RegionSettings. 631
632 // Fully implemented
633 //
634 if(m_scene.RegionInfo.RegionSettings.AllowDamage)
635 flags |= Simulator.RegionFlags.AllowDamage;
636 if(m_scene.RegionInfo.RegionSettings.BlockTerraform)
637 flags |= Simulator.RegionFlags.BlockTerraform;
638 if(!m_scene.RegionInfo.RegionSettings.AllowLandResell)
639 flags |= Simulator.RegionFlags.BlockLandResell;
640 if(m_scene.RegionInfo.RegionSettings.DisableCollisions)
641 flags |= Simulator.RegionFlags.SkipCollisions;
642 if(m_scene.RegionInfo.RegionSettings.DisableScripts)
643 flags |= Simulator.RegionFlags.SkipScripts;
644 if(m_scene.RegionInfo.RegionSettings.DisablePhysics)
645 flags |= Simulator.RegionFlags.SkipPhysics;
646 if(m_scene.RegionInfo.RegionSettings.BlockFly)
647 flags |= Simulator.RegionFlags.NoFly;
648 if(m_scene.RegionInfo.RegionSettings.RestrictPushing)
649 flags |= Simulator.RegionFlags.RestrictPushObject;
650 if(m_scene.RegionInfo.RegionSettings.AllowLandJoinDivide)
651 flags |= Simulator.RegionFlags.AllowParcelChanges;
652 if(m_scene.RegionInfo.RegionSettings.BlockShowInSearch)
653 flags |= (Simulator.RegionFlags)(1 << 29);
654
655 // Partially implemented
656 //
657 if(m_scene.RegionInfo.RegionSettings.FixedSun)
658 flags |= Simulator.RegionFlags.SunFixed;
659
660 // Not implemented
661 //
662 // TODO: ExternallyVisible
663 flags |= Simulator.RegionFlags.ExternallyVisible;
664 // TODO: PublicAllowed
665 flags |= Simulator.RegionFlags.PublicAllowed;
666 // TODO: AllowDirectTeleport
667 flags |= Simulator.RegionFlags.AllowDirectTeleport;
668 // TODO: AllowVoice
669 flags |= Simulator.RegionFlags.AllowVoice;
670
671 // TDOD: AllowLandmark
672 // TDOD: AllowSetHome
673 // TODO: ResetHomeOnTeleport
674 // TODO: TaxFree ? (Linden-ism)
675 // TODO: Sandbox ?
676 // TODO: SkipUpdateInterestList
677 // TODO: ExternallyVisible
678 // TODO: DenyAnonymous
679 // TODO: DenyIdentified
680 // TODO: DenyTransacted
681 // TODO: AbuseEmailToEstateOwner
682 // TODO: BlockDwell
683 // TODO: EstateSkipScripts
684
685 // Omitted
686 //
687 // Omitted: NullLayer (what is that?)
688 // Omitted: SkipAgentAction (what does it do?)
689 // Omitted: MainlandVisible (Do we need it)
690
622 return (uint)flags; 691 return (uint)flags;
623 } 692 }
624 } 693 }
diff --git a/OpenSim/Region/Environment/Modules/World/Sun/SunModule.cs b/OpenSim/Region/Environment/Modules/World/Sun/SunModule.cs
index f73c193..5682de3 100644
--- a/OpenSim/Region/Environment/Modules/World/Sun/SunModule.cs
+++ b/OpenSim/Region/Environment/Modules/World/Sun/SunModule.cs
@@ -301,7 +301,7 @@ namespace OpenSim.Region.Environment.Modules
301 } 301 }
302 302
303 // set estate settings for region access to sun position 303 // set estate settings for region access to sun position
304 m_scene.RegionInfo.EstateSettings.sunPosition = Position; 304 m_scene.RegionInfo.RegionSettings.SunVector = Position;
305 //m_scene.RegionInfo.EstateSettings.sunHour = GetLindenEstateHourFromCurrentTime(); 305 //m_scene.RegionInfo.EstateSettings.sunHour = GetLindenEstateHourFromCurrentTime();
306 } 306 }
307 public void ForceSunUpdateToAllClients() 307 public void ForceSunUpdateToAllClients()
@@ -316,8 +316,8 @@ namespace OpenSim.Region.Environment.Modules
316 } 316 }
317 317
318 // set estate settings for region access to sun position 318 // set estate settings for region access to sun position
319 m_scene.RegionInfo.EstateSettings.sunPosition = Position; 319 m_scene.RegionInfo.RegionSettings.SunVector = Position;
320 m_scene.RegionInfo.EstateSettings.sunHour = GetLindenEstateHourFromCurrentTime(); 320 m_scene.RegionInfo.RegionSettings.SunPosition = GetLindenEstateHourFromCurrentTime();
321 } 321 }
322 /// <summary> 322 /// <summary>
323 /// Calculate the sun's orbital position and its velocity. 323 /// Calculate the sun's orbital position and its velocity.
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs
index 36a0ffc..a6a5264 100644
--- a/OpenSim/Region/Environment/Scenes/Scene.cs
+++ b/OpenSim/Region/Environment/Scenes/Scene.cs
@@ -1354,10 +1354,10 @@ namespace OpenSim.Region.Environment.Scenes
1354 m_log.Warn("[MAPTILE]: REUSING OLD MAPTILE IMAGE ID"); 1354 m_log.Warn("[MAPTILE]: REUSING OLD MAPTILE IMAGE ID");
1355 } 1355 }
1356 1356
1357 m_regInfo.EstateSettings.terrainImageID = TerrainImageLLUUID; 1357 m_regInfo.RegionSettings.TerrainImageID = TerrainImageLLUUID;
1358 1358
1359 AssetBase asset = new AssetBase(); 1359 AssetBase asset = new AssetBase();
1360 asset.FullID = m_regInfo.EstateSettings.terrainImageID; 1360 asset.FullID = m_regInfo.RegionSettings.TerrainImageID;
1361 asset.Data = data; 1361 asset.Data = data;
1362 asset.Name = "terrainImage_" + m_regInfo.RegionID.ToString() + "_" + lastMapRefresh.ToString(); 1362 asset.Name = "terrainImage_" + m_regInfo.RegionID.ToString() + "_" + lastMapRefresh.ToString();
1363 asset.Description = RegionInfo.RegionName; 1363 asset.Description = RegionInfo.RegionName;
@@ -1405,10 +1405,10 @@ namespace OpenSim.Region.Environment.Scenes
1405 TerrainImageLLUUID = lastMapRegionUUID; 1405 TerrainImageLLUUID = lastMapRegionUUID;
1406 } 1406 }
1407 1407
1408 m_regInfo.EstateSettings.terrainImageID = TerrainImageLLUUID; 1408 m_regInfo.RegionSettings.TerrainImageID = TerrainImageLLUUID;
1409 1409
1410 AssetBase asset = new AssetBase(); 1410 AssetBase asset = new AssetBase();
1411 asset.FullID = m_regInfo.EstateSettings.terrainImageID; 1411 asset.FullID = m_regInfo.RegionSettings.TerrainImageID;
1412 asset.Data = data; 1412 asset.Data = data;
1413 asset.Name = "terrainImage_" + m_regInfo.RegionID.ToString() + "_" + lastMapRefresh.ToString(); 1413 asset.Name = "terrainImage_" + m_regInfo.RegionID.ToString() + "_" + lastMapRefresh.ToString();
1414 asset.Description = RegionInfo.RegionName; 1414 asset.Description = RegionInfo.RegionName;
diff --git a/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs b/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs
index 0d3049d..4106fbb 100644
--- a/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs
+++ b/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs
@@ -3274,7 +3274,7 @@ namespace OpenSim.Region.ScriptEngine.Common
3274 3274
3275 // sunPosition estate setting is set in OpenSim.Region.Environment.Modules.SunModule 3275 // sunPosition estate setting is set in OpenSim.Region.Environment.Modules.SunModule
3276 // have to convert from LLVector3 (float) to LSL_Types.Vector3 (double) 3276 // have to convert from LLVector3 (float) to LSL_Types.Vector3 (double)
3277 SunFloatVector3 = World.RegionInfo.EstateSettings.sunPosition; 3277 SunFloatVector3 = World.RegionInfo.RegionSettings.SunVector;
3278 SunDoubleVector3.x = (double)SunFloatVector3.X; 3278 SunDoubleVector3.x = (double)SunFloatVector3.X;
3279 SunDoubleVector3.y = (double)SunFloatVector3.Y; 3279 SunDoubleVector3.y = (double)SunFloatVector3.Y;
3280 SunDoubleVector3.z = (double)SunFloatVector3.Z; 3280 SunDoubleVector3.z = (double)SunFloatVector3.Z;
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
index 30a64c7..06a6086 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
@@ -3214,7 +3214,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
3214 3214
3215 // sunPosition estate setting is set in OpenSim.Region.Environment.Modules.SunModule 3215 // sunPosition estate setting is set in OpenSim.Region.Environment.Modules.SunModule
3216 // have to convert from LLVector3 (float) to LSL_Types.Vector3 (double) 3216 // have to convert from LLVector3 (float) to LSL_Types.Vector3 (double)
3217 SunFloatVector3 = World.RegionInfo.EstateSettings.sunPosition; 3217 SunFloatVector3 = World.RegionInfo.RegionSettings.SunVector;
3218 SunDoubleVector3.x = (double)SunFloatVector3.X; 3218 SunDoubleVector3.x = (double)SunFloatVector3.X;
3219 SunDoubleVector3.y = (double)SunFloatVector3.Y; 3219 SunDoubleVector3.y = (double)SunFloatVector3.Y;
3220 SunDoubleVector3.z = (double)SunFloatVector3.Z; 3220 SunDoubleVector3.z = (double)SunFloatVector3.Z;