2017-04-07 6 views
0

私はマルチプレイヤードッジボールゲームを作っています。ホストとクライアントを起動するたびに、プレイヤーの1人だけが移動できます。 enter image description hereif(!localplayer)何もしない

私はプレイヤーが独立して動くようにしたい。ここに私の(更新)コードです:私はあまりにも長い間の結束の外にしてきたので

using System.Collections; 
using System.Collections.Generic; 
using UnityEngine; 
using UnityEngine.Networking; 
public class Script4Network : NetworkBehaviour 
{ 

// Use this for initialization 
void Start() { 
if (!isLocalPlayer) 
    { 

     gameObject.GetComponent<FirstPersonController>().enabled = false; 
     gameObject.GetComponent<throwing>().enabled = false; 
     gameObject.GetComponent<HeadBob>().enabled = false; 
     // gameObject.GetComponent<Camera>().enabled = false; 
    } 
} 

void Update() 
{ 

} 
} 

答えて

0

これが答えではないが、ちょうどあなたが知っている:

void Update() 
{ 
    if (!isLocalPlayer) 
    { 
     return; 
    } 
} 

は全く何もしません。

void Update() 
{ 
    if (!isLocalPlayer) 
    { 
     return; 
    } 
    return; 
} 

すべての関数が最後に戻るためです。だから私たちが地元でないなら、すぐに帰る。それ以外の場合はすぐに戻ります。入力コントロールを無効にする方法が必要です。Start()入力コントロールコンポーネントを見つけて、!isLocalPlayerの場合は無効にしてください。

+0

私はそれを試してみるでしょう。 –

+0

私は上記のコードを試しました、私は入力を制御するスクリプトとプレーヤー上の他のスクリプトを無効にしました。その結果、彼らは独立していますが、そのうちの1人だけが動くことができます。 –

関連する問題