OpenSim.Region.Framework.Scenes.ScenePresence.ChildAgentDataUpdate C# (CSharp) Method

ChildAgentDataUpdate() public method

This updates important decision making data about a child agent The main purpose is to figure out what objects to send to a child agent that's in a neighboring region
public ChildAgentDataUpdate ( AgentPosition cAgentData, uint tRegionX, uint tRegionY, uint rRegionX, uint rRegionY ) : void
cAgentData OpenSim.Framework.AgentPosition
tRegionX uint
tRegionY uint
rRegionX uint
rRegionY uint
return void
        public void ChildAgentDataUpdate(AgentPosition cAgentData, uint tRegionX, uint tRegionY, uint rRegionX, uint rRegionY)
        {
            if (!IsChildAgent)
                return;

            //m_log.Debug("   >>> ChildAgentPositionUpdate <<< " + rRegionX + "-" + rRegionY);
            int shiftx = ((int)rRegionX - (int)tRegionX) * (int)Constants.RegionSize;
            int shifty = ((int)rRegionY - (int)tRegionY) * (int)Constants.RegionSize;

            Vector3 offset = new Vector3(shiftx, shifty, 0f);

            m_DrawDistance = cAgentData.Far;
            if (cAgentData.Position != new Vector3(-1f, -1f, -1f)) // UGH!!
                m_pos = cAgentData.Position + offset;

            if (Vector3.Distance(AbsolutePosition, posLastSignificantMove) >= Scene.ChildReprioritizationDistance)
            {
                posLastSignificantMove = AbsolutePosition;
                ReprioritizeUpdates();
            }

            m_CameraCenter = cAgentData.Center + offset;

            //SetHeight(cAgentData.AVHeight);

            if ((cAgentData.Throttles != null) && cAgentData.Throttles.Length > 0)
                ControllingClient.SetChildAgentThrottle(cAgentData.Throttles);

            // Sends out the objects in the user's draw distance if m_sendTasksToChild is true.
            if (m_scene.m_seeIntoRegionFromNeighbor)
                m_sceneViewer.Reset();

            //cAgentData.AVHeight;
            m_rootRegionHandle = cAgentData.RegionHandle;
            //m_velocity = cAgentData.Velocity;
        }

Same methods

ScenePresence::ChildAgentDataUpdate ( AgentData cAgentData ) : void
ScenePresence