diff options
4 files changed, 18 insertions, 12 deletions
diff --git a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs index 057e204..a2c7c83 100644 --- a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs +++ b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs | |||
@@ -679,6 +679,7 @@ namespace OpenSim.Region.CoreModules.World.Land | |||
679 | public void removeLandObject(int local_id) | 679 | public void removeLandObject(int local_id) |
680 | { | 680 | { |
681 | ILandObject land; | 681 | ILandObject land; |
682 | UUID landGlobalID = UUID.Zero; | ||
682 | lock (m_landList) | 683 | lock (m_landList) |
683 | { | 684 | { |
684 | for (int x = 0; x < m_landIDList.GetLength(0); x++) | 685 | for (int x = 0; x < m_landIDList.GetLength(0); x++) |
@@ -697,12 +698,18 @@ namespace OpenSim.Region.CoreModules.World.Land | |||
697 | 698 | ||
698 | land = m_landList[local_id]; | 699 | land = m_landList[local_id]; |
699 | m_landList.Remove(local_id); | 700 | m_landList.Remove(local_id); |
700 | if(land.LandData != null) | 701 | if(land != null && land.LandData != null) |
701 | m_landUUIDList.Remove(land.LandData.GlobalID); | 702 | { |
702 | land.Clear(); | 703 | landGlobalID = land.LandData.GlobalID; |
704 | m_landUUIDList.Remove(landGlobalID); | ||
705 | } | ||
703 | } | 706 | } |
704 | 707 | ||
705 | m_scene.EventManager.TriggerLandObjectRemoved(land.LandData.GlobalID); | 708 | if(landGlobalID != UUID.Zero) |
709 | { | ||
710 | m_scene.EventManager.TriggerLandObjectRemoved(landGlobalID); | ||
711 | land.Clear(); | ||
712 | } | ||
706 | } | 713 | } |
707 | 714 | ||
708 | /// <summary> | 715 | /// <summary> |
diff --git a/OpenSim/Region/CoreModules/World/Land/LandObject.cs b/OpenSim/Region/CoreModules/World/Land/LandObject.cs index b534a2b..74b10ed 100644 --- a/OpenSim/Region/CoreModules/World/Land/LandObject.cs +++ b/OpenSim/Region/CoreModules/World/Land/LandObject.cs | |||
@@ -292,8 +292,6 @@ namespace OpenSim.Region.CoreModules.World.Land | |||
292 | LandData.OwnerID = owner_id; | 292 | LandData.OwnerID = owner_id; |
293 | if (is_group_owned) | 293 | if (is_group_owned) |
294 | LandData.GroupID = owner_id; | 294 | LandData.GroupID = owner_id; |
295 | else | ||
296 | LandData.GroupID = UUID.Zero; | ||
297 | 295 | ||
298 | LandData.IsGroupOwned = is_group_owned; | 296 | LandData.IsGroupOwned = is_group_owned; |
299 | 297 | ||
diff --git a/OpenSim/Region/CoreModules/World/Objects/Commands/ObjectCommandsModule.cs b/OpenSim/Region/CoreModules/World/Objects/Commands/ObjectCommandsModule.cs index 79c4713..5a2a173 100644 --- a/OpenSim/Region/CoreModules/World/Objects/Commands/ObjectCommandsModule.cs +++ b/OpenSim/Region/CoreModules/World/Objects/Commands/ObjectCommandsModule.cs | |||
@@ -123,8 +123,8 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands | |||
123 | "Objects", | 123 | "Objects", |
124 | false, | 124 | false, |
125 | "delete object pos", | 125 | "delete object pos", |
126 | "delete object pos <start-coord> to <end-coord>", | 126 | "delete object pos <start x, start y , start z> <end x, end y, end z>", |
127 | "Delete scene objects within the given area.", | 127 | "Delete scene objects within the given volume.", |
128 | ConsoleUtil.CoordHelp, | 128 | ConsoleUtil.CoordHelp, |
129 | HandleDeleteObject); | 129 | HandleDeleteObject); |
130 | 130 | ||
@@ -162,8 +162,8 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands | |||
162 | "Objects", | 162 | "Objects", |
163 | false, | 163 | false, |
164 | "show object pos", | 164 | "show object pos", |
165 | "show object pos [--full] <start-coord> to <end-coord>", | 165 | "show object pos [--full] <start x, start y , start z> <end x, end y, end z>", |
166 | "Show details of scene objects within the given area.", | 166 | "Show details of scene objects within give volume", |
167 | "The --full option will print out information on all the parts of the object.\n" | 167 | "The --full option will print out information on all the parts of the object.\n" |
168 | + "For yet more detailed part information, use the \"show part\" commands.\n" | 168 | + "For yet more detailed part information, use the \"show part\" commands.\n" |
169 | + ConsoleUtil.CoordHelp, | 169 | + ConsoleUtil.CoordHelp, |
@@ -189,8 +189,8 @@ namespace OpenSim.Region.CoreModules.World.Objects.Commands | |||
189 | "Objects", | 189 | "Objects", |
190 | false, | 190 | false, |
191 | "show part pos", | 191 | "show part pos", |
192 | "show part pos <start-coord> to <end-coord>", | 192 | "show part pos <start x, start y , start z> <end x, end y, end z>", |
193 | "Show details of scene object parts within the given area.", | 193 | "Show details of scene object parts within the given volume.", |
194 | ConsoleUtil.CoordHelp, | 194 | ConsoleUtil.CoordHelp, |
195 | HandleShowPartByPos); | 195 | HandleShowPartByPos); |
196 | 196 | ||
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index 805c9ad..2731274 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs | |||
@@ -4880,6 +4880,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
4880 | PhysicsActor.OnOutOfBounds += OutOfBoundsCall; // Called for PhysicsActors when there's something wrong | 4880 | PhysicsActor.OnOutOfBounds += OutOfBoundsCall; // Called for PhysicsActors when there's something wrong |
4881 | PhysicsActor.SubscribeEvents(100); | 4881 | PhysicsActor.SubscribeEvents(100); |
4882 | PhysicsActor.LocalID = LocalId; | 4882 | PhysicsActor.LocalID = LocalId; |
4883 | PhysicsActor.SetAlwaysRun = m_setAlwaysRun; | ||
4883 | } | 4884 | } |
4884 | 4885 | ||
4885 | private void OutOfBoundsCall(Vector3 pos) | 4886 | private void OutOfBoundsCall(Vector3 pos) |