PunRPC not getting called



我收到一个警告,说收到RPC";获胜者";用于viewID 0,但此PhotonView不存在!是远程PV。远程调用。By:1也许GO被破坏了,但RPC没有被清理。

它也不调用RPC";获胜者";。我的代码:

public Text Score_;
public PhotonView photon;
public GameObject GUn;
public string yooh;
public GameObject WIn;
// Start is called before the first frame update
void Start()
{

}
// Update is called once per frame
void Update()
{
yooh = "Score: " + PhotonNetwork.player.GetScore();
Score_.text = yooh;
if (PhotonNetwork.player.GetScore() == 40)
{
photon.RPC("Winner", PhotonTargets.All);
}
}
public void SetScore()
{
PhotonNetwork.player.AddScore(10);
Debug.Log("done");
}
[PunRPC]
public void Winner()
{
WIn.SetActive(true);
}

收到的RPC"获胜者";用于viewID 0,但此PhotonView不存在!是远程PV。远程调用。By:1也许GO被破坏了,但RPC没有已清理

此警告意味着接收到RPC事件,但PUN在客户端本地未找到相应的PhotonView(ViewID 0(以便调用";获胜者";RPC方法。我们怀疑网络对象以某种方式被删除(场景更改?销毁方法?(,或者ViewID为0的网络房间对象还没有在本地实例化。因此,您需要首先弄清楚为什么接收客户端上缺少ViewID为0的网络房间对象。

正如@derHugo在评论中提到的,不要在Update中调用RPC。

最新更新