Aurora.ScriptEngine.AuroraDotNetEngine.APIs.LSL_Api.GetPartRot C# (CSharp) Метод

GetPartRot() приватный Метод

private GetPartRot ( ISceneChildEntity part ) : Aurora.ScriptEngine.AuroraDotNetEngine.LSL_Types.Quaternion
part ISceneChildEntity
Результат Aurora.ScriptEngine.AuroraDotNetEngine.LSL_Types.Quaternion
        private LSL_Rotation GetPartRot(ISceneChildEntity part)
        {
            Quaternion q;
            if (part.LinkNum == 0 || part.LinkNum == 1) // unlinked or root prim
            {
                if (part.ParentEntity.RootChild.AttachmentPoint != 0)
                {
                    IScenePresence avatar = World.GetScenePresence(part.AttachedAvatar);
                    if (avatar != null)
                    {
                        q = (avatar.AgentControlFlags & (uint)AgentManager.ControlFlags.AGENT_CONTROL_MOUSELOOK) != 0 ? avatar.CameraRotation : avatar.Rotation;
                    }
                    else
                        q = part.ParentEntity.GroupRotation; // Likely never get here but just in case
                }
                else
                    q = part.ParentEntity.GroupRotation; // just the group rotation
                return new LSL_Rotation(q.X, q.Y, q.Z, q.W);
            }
            q = part.GetWorldRotation();
            return new LSL_Rotation(q.X, q.Y, q.Z, q.W);
        }
LSL_Api