0

OnStartLocalPlayer() でより多くのオブジェクトを生成する PlayerPref があります。したがって、OnStartLocalPlayer() では、GameObject をインスタンス化し、そのスクリプトのいくつかの値を設定する Command (サーバー上で呼び出されたと仮定) を呼び出します。最後に、SpanWithClientAuthority() を呼び出します...問題は、所有者クライアントとサーバーではこれらのスクリプト tweek が正しいことですが、他のすべてのクライアントではすべての設定が失われます (例: gameobject ref など)。私は何を間違っていますか?

もう一度簡単に言うと、playerPref GO には他のいくつかのオブジェクトの参照リストが必要であり、それらのオブジェクトにはその playerPref GO への参照が必要です。(それらを playerPref GO の一部にすることは解決策ではありません)。

4

1 に答える 1

0

あなたの問題を正しく理解できれば、同じゲーム オブジェクトを持つすべてのクライアントに参照を設定する必要があります。[Command]はクライアントからサーバーへのものです。必要なのは[ClientRpc]. 呼び出しOnStartLocalPlayer()[ClientRpc]関数にします。その関数 (例: RpcSetRefs()) で、各クライアントに必要な参照を設定します。

于 2016-07-23T00:49:38.830 に答える