0

我真的不知道如何解决我的问题。我一直在寻找答案,但我找不到任何东西。

我的场景中有一个按钮,客户端和主机都可以按下。当按下按钮时,它会在场景中创建一个立方体。问题在于:立方体只能由主机创建,而主机是唯一可以看到和操作它的用户。我的代码是:

public class CreateCube : NetworkBehaviour {


        GameObject cubo;
        float lastCollisionTime=0;
        float collisionTime=0;

        void OnCollisionExit(Collision other) {

                collisionTime = Time.time;
                if (collisionTime - lastCollisionTime >1.5) {
                    CmdCreaCubo ();
                    lastCollisionTime = collisionTime;
                }
            }
            }
        }
        [Command]
        void CmdCreaCubo(){
            GameObject cubo=Instantiate(Resources.Load("MyPrefabs\\Oggetti\\CubeGrasp")) as GameObject;
            cubo.transform.position = new Vector3 (-5.88f, 7.51f, -19f);
            cubo.name = "CubeGrasp";
            NetworkServer.Spawn (cubo);

        }
}

有人可以帮我吗?太感谢了

4

1 回答 1

0

而不是使用简单的实例化,您应该需要使用Network.Instantiate

给定的预制件将在游戏中的所有客户端上即时化。同步是自动设置的,因此不涉及额外的工作。

于 2017-01-30T10:01:35.687 回答