@vamggwp

Проблема с передвижением второго игрока в Unity и PUN, в чем может быть проблема?

В целом все работает хорошо, видно как передвигается персонаж первого зашедшего в комнату игрока. Проблема в том, что двигатся может только 1 игрок, 2 игрок просто стоит и смотрит (ни на какие кнопки не реагирует) хотя они 100% нажимаются в скрипте.
private void FixedUpdate()
    {
        if (m_scrPlayer.m_inCurrentId > m_inMoveTo)
        {
                if (Buttons1[m_scrPlayer.m_inCurrentId].transform.position.x == m_scrPlayer.transform.position.x && Buttons1[m_scrPlayer.m_inCurrentId].transform.position.z == m_scrPlayer.transform.position.z)
                {
                    if (m_scrPlayer.m_inCurrentId == Buttons1.Count - 1)
                    {
                        m_scrPlayer.m_inCurrentId = 0;
                    }
                    else m_scrPlayer.m_inCurrentId++;
                }

        }
        else
        {
            if (m_scrPlayer.m_inCurrentId != m_inMoveTo)
            {
                if (Buttons1[m_scrPlayer.m_inCurrentId].transform.position.x == m_scrPlayer.transform.position.x && Buttons1[m_scrPlayer.m_inCurrentId].transform.position.z == m_scrPlayer.transform.position.z)
                {
                     m_scrPlayer.m_inCurrentId++;
                     Debug.Log("OK");
                }
            }
        }

        if (Buttons1[m_scrPlayer.m_inCurrentId] is ShopScr s && b == 0 && m_scrPlayer.m_obtained[m_scrPlayer.m_inCurrentId] == false)
        {
            if (s.m_blIsEnpty == false && m_inMoveTo == m_scrPlayer.m_inCurrentId)
            {
                _m_currentMoney = _m_currentMoney - s.m_intCost;
                Debug.Log(b);
                b = 1;
            }
        }

        var t = Buttons1[m_scrPlayer.m_inCurrentId].transform.position;

        if (m_view.IsMine)
        {
            m_scrPlayer.transform.position = Vector3.MoveTowards(m_scrPlayer.transform.position, new Vector3(t.x, m_scrPlayer.transform.position.y, t.z), m_scrPlayer.m_flSpeed / 10);
        }

        if (m_scrPlayer.m_inCurrentId != m_inMoveTo)
            {
            m_btBuyStreet.interactable = false;
            m_btNextStep.interactable = false;
            }
        else
        {
            m_btBuyStreet.interactable = true;
            m_btNextStep.interactable = true;
        }
    }

Ссылка на видео с проблемой https://youtu.be/JiOHlPuDtCc
  • Вопрос задан
  • 63 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы