public void DoAutoPilot(uint not_used, Vector3 Pos, IClientAPI remote_client) { if (IsChildAgent || IsInTransit) { m_log.Info("[SCENE PRESENCE]: DoAutoPilot: Request from child agent ignored - " + this.UUID.ToString()); return; } //m_log.Debug("[SCENE PRESENCE]: DoAutoPilot: Auto-move " + this.UUID.ToString() + " to " + Pos.ToString()); m_autopilotMoving = true; m_autoPilotTarget = Pos; m_sitAtAutoTarget = false; PrimitiveBaseShape proxy = PrimitiveBaseShape.Default; //proxy.PCode = (byte)PCode.ParticleSystem; proxyObjectGroup = new SceneObjectGroup(UUID, Pos, Rotation, proxy, false); proxyObjectGroup.AttachToScene(m_scene, false); // Commented out this code since it could never have executed, but might still be informative. // if (proxyObjectGroup != null) // { proxyObjectGroup.SendGroupFullUpdate(PrimUpdateFlags.ForcedFullUpdate); remote_client.SendSitResponse(proxyObjectGroup.UUID, Vector3.Zero, Quaternion.Identity, true, Vector3.Zero, Vector3.Zero, false); m_scene.DeleteSceneObject(proxyObjectGroup, false); // } // else // { // m_autopilotMoving = false; // m_autoPilotTarget = Vector3.Zero; // ControllingClient.SendAlertMessage("Autopilot cancelled"); // } }
public void DoAutoPilot(uint not_used, Vector3 Pos, IClientAPI remote_client) { m_autopilotMoving = true; m_autoPilotTarget = Pos; m_sitAtAutoTarget = false; PrimitiveBaseShape proxy = PrimitiveBaseShape.Default; //proxy.PCode = (byte)PCode.ParticleSystem; proxyObjectGroup = new SceneObjectGroup(UUID, Pos, Rotation, proxy, "", m_scene); proxyObjectGroup.AttachToScene(m_scene); // Commented out this code since it could never have executed, but might still be informative. // if (proxyObjectGroup != null) // { proxyObjectGroup.ScheduleGroupUpdate(PrimUpdateFlags.ForcedFullUpdate); remote_client.SendSitResponse(proxyObjectGroup.UUID, Vector3.Zero, Quaternion.Identity, true, Vector3.Zero, Vector3.Zero, false); IBackupModule backup = m_scene.RequestModuleInterface<IBackupModule>(); if (backup != null) backup.DeleteSceneObjects(new[] {proxyObjectGroup}, true, true); // } // else // { // m_autopilotMoving = false; // m_autoPilotTarget = Vector3.Zero; // ControllingClient.SendAlertMessage("Autopilot cancelled"); // } }
public void DoAutoPilot(uint not_used, Vector3 Pos, IClientAPI remote_client) { m_autopilotMoving = true; m_autoPilotTarget = Pos; m_sitAtAutoTarget = false; PrimitiveBaseShape proxy = PrimitiveBaseShape.Default; proxyObjectGroup = new SceneObjectGroup(UUID, Pos, Rotation, proxy, "", m_scene); proxyObjectGroup.AttachToScene(m_scene); proxyObjectGroup.ScheduleGroupUpdate(PrimUpdateFlags.ForcedFullUpdate); remote_client.SendSitResponse(proxyObjectGroup.UUID, Vector3.Zero, Quaternion.Identity, true, Vector3.Zero, Vector3.Zero, false); IBackupModule backup = m_scene.RequestModuleInterface<IBackupModule>(); if (backup != null) backup.DeleteSceneObjects(new[] {proxyObjectGroup}, true, true); }