void Start() { if (!isLocalPlayer) { DisableComponents(); AssignRemoteLayer(); } else { //Disable local graphics SetLayerRecursively(playerGraphics, LayerMask.NameToLayer(IgnoreDrawLayerName)); //UI playerUIInstance = Instantiate(playerUIPrefab); playerUIInstance.name = playerUIPrefab.name; //Options uiOptionInstance = Instantiate(uiOptionsPrefab); uiOptionInstance.name = playerUIPrefab.name; PlayerUI playerUI = playerUIInstance.GetComponent <PlayerUI>(); UIOptions uiOptions = uiOptionInstance.GetComponent <UIOptions>(); Player player = GetComponent <Player>(); if (playerUI == null) { Debug.Log("No PlayerUI component in UI."); } else { PlayerControl pc = GetComponent <PlayerControl>(); playerUI.setPlayerController(pc); playerUI.setPlayer(player); uiOptions.setPlayerControl(pc); uiOptions.setPlayerShoot(GetComponent <PlayerShoot>()); GetComponent <PlayerControl>().uiOptions = uiOptions; } Cursor.lockState = CursorLockMode.Locked; Cursor.visible = false; } GetComponent <Player>().Setup(); }