Некоторые методы Photon RP C вызываются, а другие нет - PullRequest
0 голосов
/ 03 апреля 2020

У меня есть два сценария, на которых я хочу сосредоточиться: «GameMaster.cs» и «Player.cs». Метод test () работает (так как «игрок» может обновлять свою собственную переменную syncVar в зависимости от того, что отправляет «gamemaster»), но метод syncID () не работает.

GameMaster.cs:

private int syncVariable = 0;
private PhotonView PV;

 private void Start()
    {
        PV = GetComponent<PhotonView>(); //create inital PhotonView object to reference later
    }
void Update()
    {

        this.photonView.RPC("syncID", RpcTarget.AllBuffered, this.gameObject.GetComponent<PhotonView>().ViewID);
        PV.RPC("RPCFunction", RpcTarget.AllBuffered, syncVariable)
        syncVariable += 1;

    }


[PunRPC]
    void test(float syncVar)
    {

        Debug.LogError("SyncVar changed! " + syncVariable);
    }

[PunRPC]
    void syncID(int ID)
    {
        print("Changed colours");
    }

Player.cs:

[PunRPC]
 void test(float syncVar) //this one works
    {
        SyncVariable = syncVar;
        Debug.LogError("SyncVar changed! " + SyncVariable);
    }

 [PunRPC]
    public void syncID(int ID)//this one does not
    {
        print("added colour " + ID);

       //do other stuff like setting a child, etc.
    }

...