public override void OnStartOwner(bool wasSpawn) { if (!m_hasStarted) { //Startup the map manager m_mapManager = GetComponent<MapManager>(); m_mapManager.GenerateMap(); RoomObject startRoom = m_mapManager.PlaceStartRoom(); //Spawn the player mover on the map GameObject moverObject = PhotonNetwork.Instantiate("Rooms/RoomFeatures/" + m_playerMoverPrefab.name, Vector3.zero, Quaternion.identity, 0); BasePlayerMover mover = moverObject.GetComponent<BasePlayerMover>(); m_mover = mover; m_mover.Construct(startRoom); PhotonNetwork.Spawn(mover.photonView); InitializeCamera(startRoom.CameraNode.position, startRoom.CameraNode.rotation); photonView.RPC(nameof(InitializeCamera), PhotonTargets.Others, startRoom.CameraNode.position, startRoom.CameraNode.rotation); m_hasStarted = true; } base.OnStartOwner(wasSpawn); }