diff options
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/Prioritizer.cs')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/Prioritizer.cs | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Prioritizer.cs b/OpenSim/Region/Framework/Scenes/Prioritizer.cs index 7b7677b..b95b5f2 100644 --- a/OpenSim/Region/Framework/Scenes/Prioritizer.cs +++ b/OpenSim/Region/Framework/Scenes/Prioritizer.cs | |||
@@ -208,12 +208,19 @@ namespace OpenSim.Region.Framework.Scenes | |||
208 | 208 | ||
209 | if (entity is SceneObjectPart) | 209 | if (entity is SceneObjectPart) |
210 | { | 210 | { |
211 | PhysicsActor physActor = ((SceneObjectPart)entity).ParentGroup.RootPart.PhysActor; | ||
212 | if (physActor == null || !physActor.IsPhysical) | ||
213 | priority += 100; | ||
214 | |||
215 | if (((SceneObjectPart)entity).ParentGroup.RootPart.IsAttachment) | 211 | if (((SceneObjectPart)entity).ParentGroup.RootPart.IsAttachment) |
212 | { | ||
216 | priority = 1.0; | 213 | priority = 1.0; |
214 | } | ||
215 | else | ||
216 | { | ||
217 | PhysicsActor physActor = ((SceneObjectPart)entity).ParentGroup.RootPart.PhysActor; | ||
218 | if (physActor == null || !physActor.IsPhysical) | ||
219 | priority += 100; | ||
220 | } | ||
221 | |||
222 | if (((SceneObjectPart)entity).ParentGroup.RootPart != (SceneObjectPart)entity) | ||
223 | priority +=1; | ||
217 | } | 224 | } |
218 | return priority; | 225 | return priority; |
219 | } | 226 | } |