2016-04-10 14 views
0

Hallo, ich habe an diesem Problem für 3 Tage gearbeitet und ich kann nicht herausfinden, was ist los damit. Die Fehlermeldung, die ich bekam, ist "SpawnObject für Player (Klon) (UnityEngine.GameObject), NetworkServer ist nicht aktiv. Kann keine Objekte ohne einen aktiven Server spawnen." Ich weiß, dass der Server startet gut, denn wenn ich mit einem Client verbinden und dann schließen Sie den Server der Client sagt, dass der Server möglicherweise heruntergefahren haben. Hier ist der Code, den ich bis jetzt habe. DANKE IM VORAUSUnity Multiplayer Spiel Player Laichen funktioniert nicht

using UnityEngine; 
using UnityEngine.UI; 
using UnityEngine.Networking; 
using System.Collections; 

public class MENU_CONTROLLER : NetworkBehaviour 
{ 
    public GameObject ipField; 
    public GameObject connectButton; 
    public GameObject hostButton; 
    public GameObject player; 

    public Text ip; 
    public Text PlayerCount; 
    private int playercount = 0; 
    void Update() { 
    } 
    void vanishMenu() { 
     ipField.SetActive(false); 
     connectButton.SetActive(false); 
     hostButton.SetActive(false); 
    } 

    public void ServerConnect() { 
     Network.Connect(ip.text.ToString(), 4444); 
     vanishMenu(); 
     SpawnPlayer(); 
    } 
    public void SpawnPlayer() { 
     GameObject p = (GameObject)Instantiate(player, transform.position,transform.rotation); 
     NetworkServer.Spawn(p); 
    } 
    public void ServerStart() { 
     Network.InitializeServer(30, 4444, true); 
     Network.Connect("localhost", 4444); 
     SpawnPlayer(); 
    } 
    void OnPlayerConnected(NetworkPlayer player) { 
     playercount++; 
     print("PLAYER CONNECTED"); 
     print(player.ipAddress); 
     PlayerCount.text = playercount.ToString(); 
    } 
} 

Antwort

0

Sie müssen die NetworkServer.Spawn nennen() innerhalb eines "ist Server" Block.

if (is Server) { 
//do your thing to spawn 
}