Example #1
0
        private void Start()
        {
            Service.Get <ICPSwrveService>().Funnel(Service.Get <MembershipService>().AccountFunnelName, "06", "welcome");
            PenguinName.text = Service.Get <SessionManager>().LocalUser.RegistrationProfile.DisplayName;
            CPDataEntityCollection cPDataEntityCollection = Service.Get <CPDataEntityCollection>();

            if (!(SceneManager.GetActiveScene().name == "Boot"))
            {
                avatarRenderer = GetComponentInChildren <AvatarRenderTextureComponent>();
                DataEntityHandle     localPlayerHandle = cPDataEntityCollection.LocalPlayerHandle;
                AvatarAnimationFrame avatarFrame       = new AvatarAnimationFrame("Base Layer.Interactions.PassPortPoses_CelebrateAnimation", 0f);
                if (cPDataEntityCollection.TryGetComponent <AvatarDetailsData>(localPlayerHandle, out var component))
                {
                    avatarRenderer.RenderAvatar(component, avatarFrame);
                }
                else
                {
                    avatarRenderer.RenderAvatar(new DCustomEquipment[0], avatarFrame);
                }
            }
            AccountFlowData accountFlowData = Service.Get <MembershipService>().GetAccountFlowData();

            accountFlowData.SkipWelcome = true;
            StartCoroutine(AutoTransition());
        }
 public void UpdateProgressBar(string progressBarTrigger, string avatarAnimation)
 {
     if (shardProgressBarAnimators[shard] != null && !string.IsNullOrEmpty(progressBarTrigger))
     {
         shardProgressBarAnimators[shard].SetTrigger(progressBarTrigger);
     }
     if (shardAvatarRenderers[shard] != null && !string.IsNullOrEmpty(avatarAnimation))
     {
         AvatarAnimationFrame animationFrame = new AvatarAnimationFrame(avatarAnimation, 0f);
         shardAvatarRenderers[shard].PlayAnimation(animationFrame);
     }
 }
        private void onElementShown(int index, GameObject element)
        {
            FullScreenChatBlock component = element.GetComponent <FullScreenChatBlock>();

            component.SessionId = fullScreenChatBlockDataList[index].SessionId;
            component.SetChatMessage(fullScreenChatBlockDataList[index].DisplayName, fullScreenChatBlockDataList[index].Message, fullScreenChatBlockDataList[index].IsChatActivity, fullScreenChatBlockDataList[index].IsAwatingModeration, fullScreenChatBlockDataList[index].IsChatBlocked);
            component.OnClicked = (Action <long>)Delegate.Combine(component.OnClicked, new Action <long>(onFullScreenChatBlockClicked));
            if (!imageRequests.Contains(fullScreenChatBlockDataList[index].SessionId))
            {
                DataEntityHandle handle = findPlayerHandle(fullScreenChatBlockDataList[index].SessionId);
                imageRequests.Enqueue(fullScreenChatBlockDataList[index].SessionId);
                AvatarAnimationFrame avatarAnimationFrame = new AvatarAnimationFrame("Base Layer.Idle", 0.5f);
                avatarImageComponent.RequestImage(handle, avatarAnimationFrame, "FullScreenChatAvatar");
            }
        }
        private void Start()
        {
            membershipController = GetComponentInParent <MembershipController>();
            membershipController.OnPurchaseRetried += onPurchaseRetried;
            backgroundButtons  = GetComponentInParent <BackgroundButtonsController>();
            showCarrierBilling = membershipController.IsCarrierBillingAvailable();
            string message = (showCarrierBilling ? "with_carrier_billing_info" : "regular");

            Service.Get <ICPSwrveService>().Funnel(Service.Get <MembershipService>().MembershipFunnelName, "03", "membership_terms", message);
            PenguinName.text = Service.Get <SessionManager>().LocalUser.RegistrationProfile.DisplayName;
            CPDataEntityCollection cPDataEntityCollection = Service.Get <CPDataEntityCollection>();
            DataEntityHandle       localPlayerHandle      = cPDataEntityCollection.LocalPlayerHandle;

            if (!(SceneManager.GetActiveScene().name == "Boot"))
            {
                avatarRenderer = GetComponentInChildren <AvatarRenderTextureComponent>();
                AvatarAnimationFrame avatarFrame = new AvatarAnimationFrame("Base Layer.Interactions.PassPortPoses_CelebrateAnimation", 0f);
                if (cPDataEntityCollection.TryGetComponent <AvatarDetailsData>(localPlayerHandle, out var component))
                {
                    avatarRenderer.RenderAvatar(component, avatarFrame);
                }
                else
                {
                    avatarRenderer.RenderAvatar(new DCustomEquipment[0], avatarFrame);
                }
            }
            bool hasTrialAvailable = true;

            if (cPDataEntityCollection.TryGetComponent <ProfileData>(localPlayerHandle, out var component2) && cPDataEntityCollection.TryGetComponent <MembershipData>(localPlayerHandle, out var component3))
            {
                if (component2.IsFirstTimePlayer || SceneManager.GetActiveScene().name != Service.Get <GameStateController>().SceneConfig.HomeSceneName)
                {
                    ChangePenguinContainer.SetActive(value: false);
                }
                else
                {
                    ChangePenguinContainer.SetActive(value: true);
                }
                hasTrialAvailable = component3.MembershipTrialAvailable;
            }
            membershipController.OnProductsReady += onProductsReady;
            membershipController.GetProduct(hasTrialAvailable);
            if (MonoSingleton <NativeAccessibilityManager> .Instance.AccessibilityLevel == NativeAccessibilityLevel.VOICE)
            {
                string tokenTranslation = Service.Get <Localizer>().GetTokenTranslation("Accessibility.Popup.Title.MembershipTerms");
                MonoSingleton <NativeAccessibilityManager> .Instance.Native.Speak(tokenTranslation);
            }
        }
        private void Start()
        {
            Service.Get <ICPSwrveService>().Funnel(Service.Get <MembershipService>().AccountFunnelName, "16", "restore_membership_success");
            ModalBackground component = GetComponent <ModalBackground>();

            component.enabled = true;
            PenguinName.text  = string.Format(PenguinName.text, Service.Get <SessionManager>().LocalUser.RegistrationProfile.DisplayName);
            if (!(SceneManager.GetActiveScene().name == "Boot"))
            {
                avatarRenderer = GetComponentInChildren <AvatarRenderTextureComponent>();
                CPDataEntityCollection cPDataEntityCollection = Service.Get <CPDataEntityCollection>();
                DataEntityHandle       localPlayerHandle      = cPDataEntityCollection.LocalPlayerHandle;
                AvatarAnimationFrame   avatarFrame            = new AvatarAnimationFrame("Base Layer.Interactions.PassPortPoses_CelebrateAnimation", 0f);
                if (cPDataEntityCollection.TryGetComponent <AvatarDetailsData>(localPlayerHandle, out var component2))
                {
                    avatarRenderer.RenderAvatar(component2, avatarFrame);
                }
                else
                {
                    avatarRenderer.RenderAvatar(new DCustomEquipment[0], avatarFrame);
                }
            }
        }
Example #6
0
        public static IEnumerator RenderOutfit(DCustomOutfit outfit, Color beakColor, Color bodyColor, Color bellyColor, ImageBuilderCameraData cameraData, GameObject avatarGO, Func <ModelRenderer, bool> onProcessModel, AvatarAnimationFrame animationFrame = null)
        {
            AvatarModel avatarModel = avatarGO.GetComponent <AvatarModel>();

            avatarModel.BeakColor  = beakColor;
            avatarModel.BodyColor  = bodyColor;
            avatarModel.BellyColor = bellyColor;
            avatarModel.ClearAllEquipment();
            avatarModel.ApplyOutfit(outfit);
            AvatarView avatarView = avatarGO.GetComponent <AvatarView>();

            yield return(new WaitUntil(() => avatarView.IsReady));

            ModelRendererConfig renderConfig = new ModelRendererConfig(avatarGO.transform, cameraData.ModelOffset, new Vector2(cameraData.IconSize, cameraData.IconSize));

            avatarGO.transform.Rotate(cameraData.ModelRotation);
            renderConfig.FieldOfView = cameraData.FieldOfView;
            ModelRenderer modelRenderer = new ModelRenderer(renderConfig);

            modelRenderer.RotateCamera(cameraData.CameraRotation);
            if (animationFrame != null)
            {
                Animator component = avatarGO.GetComponent <Animator>();
                component.Play(animationFrame.StateName, animationFrame.Layer, animationFrame.Time);
            }
            do
            {
                yield return(null);
            }while (onProcessModel(modelRenderer));
        }