/// <summary> /// Applies the changes in avatar name and description. Updates this avatar on the server. /// </summary> /// <returns></returns> private IEnumerator EditAvatar() { CloudAvatarProvider cloudAvatarProvider = avatarProvider as CloudAvatarProvider; var avatarEdit = editPanel.GetComponent <AvatarEdit>(); yield return(Await( cloudAvatarProvider.Connection.EditAvatarAsync(avatarToEdit, avatarEdit.nameField.text, avatarEdit.descriptionField.text), avatarToEdit.code )); yield return(UpdateAvatarList()); editPanel.SetActive(false); avatarToEdit = null; }
/// <summary> /// Shows panel to edit name and description of the avatar /// </summary> private IEnumerator ShowEditPanel(string avatarCode) { CloudAvatarProvider cloudAvatarProvider = avatarProvider as CloudAvatarProvider; var avatarRequest = cloudAvatarProvider.Connection.GetAvatarAsync(avatarCode); yield return(avatarRequest); if (avatarRequest.IsError) { yield break; } avatarToEdit = avatarRequest.Result; var avatarEdit = editPanel.GetComponent <AvatarEdit>(); avatarEdit.nameField.text = avatarToEdit.name; avatarEdit.descriptionField.text = avatarToEdit.description; editPanel.SetActive(true); }
private IEnumerator Initialize() { if (!AvatarSdkMgr.IsInitialized) { AvatarSdkMgr.Init(stringMgr: new DefaultStringManager(), storage: new DefaultPersistentStorage(), sdkType: SdkType.Cloud); } if (avatarProvider == null) { avatarProvider = new CloudAvatarProvider(); } connection = avatarProvider.Connection; var imageItems = sampleImagesPanel.GetComponentsInChildren <ImageItem>(); foreach (ImageItem item in imageItems) { item.imageSelectedHandler = HandleSelectedImage; } if (createdAvatar != null) { UpdateSelectedImage(selectedImageBytes); UpdateAvatarState(avatarState, PipelineType.HEAD); } image.gameObject.SetActive(true); // initialize provider if (!avatarProvider.Connection.IsAuthorized) { yield return(avatarProvider.InitializeAsync()); if (!avatarProvider.Connection.IsAuthorized) { Debug.LogError("Authentication failed!"); yield break; } } }