2016-07-20 19 views
0

Ich habe eine PlayerPref, die mehr Objekte in OnStartLocalPlayer() spawnen. Also in OnStartLocalPlayer() rufen Sie Command (vorausgesetzt, dass auf Server aufgerufen), die GameObject instanziieren und einige Werte seiner Skripts einrichten. Am Ende ruft es SpanWithClientAuthority() ... Die Sache ist, dass auf Besitzer-Client und auf Server diese Skript-Tweeks korrekt sind, aber auf allen anderen Clients verloren alle diese Einstellungen (z. B. Gameobject Ref etc). Was mache ich falsch?Spawn-Objekt mit benutzerdefinierten Skript mit Unity-Netzwerk

Noch einmal kurz und bündig: playerPref GO muss eine Referenzliste mehrerer anderer Objekte enthalten, und diese Objekte müssen ref zu diesem playerPref GO haben. (sie zu playerPref GO zu machen ist keine Lösung).

+0

Sie haben ein Skript namens 'PlayerPref' erstellt? – Programmer

Antwort

0

Wenn ich Ihr Problem richtig verstehe, müssen Sie die Referenzen auf alle Clients setzen, die das gleiche Spielobjekt haben. [Command] sind für Client zu Server. Was Sie brauchen, ist ein [ClientRpc]. Machen Sie die OnStartLocalPlayer() rufen Sie eine [ClientRpc] Funktion, in dieser Funktion (ex: RpcSetRefs()) legen Sie die Referenzen, die Sie benötigen, um jeden Client zu haben.