/// <summary> /// Handles the available files UI Window. /// </summary> /// <param name="id">Window identifier.</param> private void HandleWindowFunction(int id) { GUILayout.BeginVertical(); _scrollPosition = GUILayout.BeginScrollView(_scrollPosition); foreach (var file in _files) { if (GUILayout.Button(Path.GetFileName(file))) { var thirdPersonController = Instantiate(ThirdPersonControllerPrefab); thirdPersonController.transform.DestroyChildren(true); if (_avatarLoader.LoadAvatar(file, thirdPersonController)) { if (ActiveCameraGameObject != null) { Destroy(ActiveCameraGameObject.gameObject); } ActiveCameraGameObject = Instantiate(FreeLookCamPrefab); } else { if (ActiveCameraGameObject != null) { Destroy(ActiveCameraGameObject.gameObject); } Destroy(thirdPersonController); } } } GUILayout.EndScrollView(); GUILayout.EndVertical(); }
private void LoadFile(string file) { var thirdPersonController = Instantiate(ThirdPersonControllerPrefab); thirdPersonController.transform.DestroyChildren(true); if (_avatarLoader.LoadAvatar(file, thirdPersonController)) { if (ActiveCameraGameObject != null) { Destroy(ActiveCameraGameObject.gameObject); } ActiveCameraGameObject = Instantiate(FreeLookCamPrefab); } else { if (ActiveCameraGameObject != null) { Destroy(ActiveCameraGameObject.gameObject); } Destroy(thirdPersonController); } }