我有两名球员,这些球员正在击球。每当他们击球时,球的颜色就有可能发生变化。(绿色或红色)。但是当一个球员击球时,它只会改变他自己的球颜色,其他球员的球是相同的颜色。我希望所有玩家都能看到相同的颜色。这是代码:
using UnityEngine;
using UnityEngine.Networking;
public class ColorGreen : NetworkBehaviour
{
// Use this for initialization
[SyncVar]
int temp = 0;
void Start () {
transform.GetComponent<Renderer>().material.color = Color.green;
}
// Update is called once per frame
void Update () {
if (!isServer)
return;
RpcCHANGE();
}
[ClientRpc]
void RpcCHANGE()
{
temp = Random.Range(0, 2);
if (temp == 0)
{
transform.GetComponent<Renderer>().material.color = Color.green;
}
else if(temp == 1)
{
transform.GetComponent<Renderer>().material.color = Color.red;
}
}
}
球对象的网络身份已检查“本地玩家权限”。你们能告诉我我做错了什么吗?
谢谢你。