private void OnChangeArea(ulong areaId)
    {
        if (areaId != m_GameplayProxy.GetLeapTargetAreaUid())
        {
            return;
        }

        if (!m_IsAvailableOffset)
        {
            return;
        }

        /// 玩家世界坐标
        Vector3 playerRealWorldPosition;

        m_GameplayProxy.ClientPositionToWorldPosition(out playerRealWorldPosition, m_SpacecraftCheckOffsetProperty.GetRigidbody().position);
        /// 跃迁剩余向量
        Vector3 remainingDistance = m_GameplayProxy.GetLeapEndAreaOffsetPosition() - m_GameplayProxy.ClientToServerAreaOffset(m_SpacecraftCheckOffsetProperty.GetRigidbody().position);
        /// 跃迁终点位置
        Vector3 targetPoint = m_GameplayProxy.GetLeapTargetAreaOffset() - remainingDistance;
        /// 拖拽向量
        Vector3 offset = targetPoint - m_SpacecraftCheckOffsetProperty.GetRigidbody().position;

        /// 通知运动模型拖拽
        SendEvent(ComponentEventName.SetOffset, new SetOffsetEvent()
        {
            Offset = offset
        });
        /// 更新当前所在区域
        m_GameplayProxy.SetCurrentAreaUid(m_GameplayProxy.GetLeapTargetAreaUid());
        /// 清除拖拽偏移
        m_GameplayProxy.ClearTotalPositionOffset();

        m_IsAvailableOffset = false;
    }