diff options
Hopefully fixed mantis bug #318 (exception when a prim moves across a border, for now have stopped prims moving beyond a regions area, will add sending prims from one region to another soon).
Diffstat (limited to 'OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs')
-rw-r--r-- | OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs index ba6f6ea..cbf92a8 100644 --- a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs | |||
@@ -83,11 +83,30 @@ namespace OpenSim.Region.Environment.Scenes | |||
83 | get { return m_rootPart.GroupPosition; } | 83 | get { return m_rootPart.GroupPosition; } |
84 | set | 84 | set |
85 | { | 85 | { |
86 | LLVector3 val = value; | ||
87 | if (val.X > 255.6f) | ||
88 | { | ||
89 | val.X = 255.6f; | ||
90 | } | ||
91 | else if (val.X < 0.4f) | ||
92 | { | ||
93 | val.X = 0.4f; | ||
94 | } | ||
95 | |||
96 | if (val.Y > 255.6f) | ||
97 | { | ||
98 | val.Y = 255.6f; | ||
99 | } | ||
100 | else if (val.Y < 0.4f) | ||
101 | { | ||
102 | val.Y = 0.4f; | ||
103 | } | ||
104 | |||
86 | lock (this.m_parts) | 105 | lock (this.m_parts) |
87 | { | 106 | { |
88 | foreach (SceneObjectPart part in this.m_parts.Values) | 107 | foreach (SceneObjectPart part in this.m_parts.Values) |
89 | { | 108 | { |
90 | part.GroupPosition = value; | 109 | part.GroupPosition = val; |
91 | } | 110 | } |
92 | } | 111 | } |
93 | if (m_rootPart.PhysActor != null) | 112 | if (m_rootPart.PhysActor != null) |