From c8f0d476d2f775ba4d7afca12eeff527b46bb8e2 Mon Sep 17 00:00:00 2001
From: Justin Clark-Casey (justincc)
Date: Tue, 10 Jul 2012 23:34:40 +0100
Subject: refactor: Add SOP.IsSitTargetOccupied to improve readability
---
OpenSim/Region/Framework/Scenes/SceneObjectPart.cs | 7 ++++++-
OpenSim/Region/Framework/Scenes/ScenePresence.cs | 4 ++--
2 files changed, 8 insertions(+), 3 deletions(-)
(limited to 'OpenSim/Region/Framework/Scenes')
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
index dcec7e9..937f43e 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
@@ -136,6 +136,11 @@ namespace OpenSim.Region.Framework.Scenes
}
///
+ /// Is the sit target of this part occupied?
+ ///
+ public bool IsSitTargetOccupied { get { return SitTargetAvatar != UUID.Zero; } }
+
+ ///
/// Is an explicit sit target set for this part?
///
public bool IsSitTargetSet
@@ -736,7 +741,7 @@ namespace OpenSim.Region.Framework.Scenes
}
// TODO if we decide to do sitting in a more SL compatible way (multiple avatars per prim), this has to be fixed, too
- if (SitTargetAvatar != UUID.Zero)
+ if (IsSitTargetOccupied)
{
ScenePresence avatar;
if (ParentGroup.Scene.TryGetScenePresence(SitTargetAvatar, out avatar))
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
index a8c98ed..c824e56 100644
--- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs
+++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
@@ -1846,7 +1846,7 @@ namespace OpenSim.Region.Framework.Scenes
//look for prims with explicit sit targets that are available
foreach (SceneObjectPart part in partArray)
{
- if (part.IsSitTargetSet && part.SitTargetAvatar == UUID.Zero)
+ if (part.IsSitTargetSet && !part.IsSitTargetOccupied)
{
//switch the target to this prim
return part;
@@ -1878,7 +1878,7 @@ namespace OpenSim.Region.Framework.Scenes
if (part.IsSitTargetSet)
{
- if (part.SitTargetAvatar == UUID.Zero)
+ if (!part.IsSitTargetOccupied)
{
// m_log.DebugFormat(
// "[SCENE PRESENCE]: Sitting {0} on {1} {2} because sit target is set and unoccupied",
--
cgit v1.1