diff options
author | Melanie Thielker | 2008-07-14 01:39:36 +0000 |
---|---|---|
committer | Melanie Thielker | 2008-07-14 01:39:36 +0000 |
commit | 07bd749ac56dc498610fc88e61cc7ab04047620e (patch) | |
tree | 7e1e8f017f1abe0f3dcc21c29bbae7bafb4b456f /OpenSim/Region/Environment/Modules/World/Estate | |
parent | Patch #9149 (diff) | |
download | opensim-SC-07bd749ac56dc498610fc88e61cc7ab04047620e.zip opensim-SC-07bd749ac56dc498610fc88e61cc7ab04047620e.tar.gz opensim-SC-07bd749ac56dc498610fc88e61cc7ab04047620e.tar.bz2 opensim-SC-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 :(
Diffstat (limited to 'OpenSim/Region/Environment/Modules/World/Estate')
-rw-r--r-- | OpenSim/Region/Environment/Modules/World/Estate/EstateManagementModule.cs | 81 |
1 files changed, 75 insertions, 6 deletions
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 | } |