Example #1
0
 void SetParent(Transform thisTrans, Transform parentTrans)
 {
     thisTrans.SetParent(parentTrans);
     thisTrans.localPosition = Vector3.zero;
     thisTrans.localRotation = Quaternion.identity;
     thisTrans.localScale    = Vector3.one;
     ChapterHelper.SetActive(thisTrans.gameObject, true);
 }
Example #2
0
 //显示拥抱
 void ShowHugGrandpa_image()
 {
     ChapterHelper.SetActive(hugGrandpa_image.gameObject, true);
     dialogueBoxBubble.Initial(() =>
     {
         ShowEndScene();
         dialogueBoxBubble.Close();
     });
     dialogueBoxBubble.Show();
 }
Example #3
0
    public async void SwitchAnima(ChapterType chapterType)
    {
        Mask.gameObject.SetActive(true);

        switch (chapterType)
        {
        case ChapterType.Main:
            //全部移动到左边
            ChapterHelper.SetActive(m_chapterList.gameObject, true);
            m_chapterList.Init(_curVersionsMaxCount + 1, _passChapterID, _unlockMaxChapterID);

            m_OADList.transform.DOLocalMoveX(1242, 0.3f);
            ZjbBtn_canvasGroup.DOFade(0, switchBtnPosDutation);
            (ZjbBtn_canvasGroup.transform as RectTransform).DOAnchorPosY(diamondStartPosY, switchBtnPosDutation);
            diamondBtn_canvasGroup.DOFade(1, switchBtnPosDutation);
            (diamondBtn_canvasGroup.transform as RectTransform).DOAnchorPosY(diamondEndPosY, switchBtnPosDutation);

            m_chapterList.transform.DOLocalMoveX(0, 0.3f).OnComplete(() =>
            {
                btn_chapter.enabled = true;
                btn_OAD.enabled     = true;
            });

            StartCoroutine(CutIn(2));
            await UniTask.Delay(300);

            break;

        case ChapterType.OAD:

            ChapterHelper.SetActive(m_OADList.gameObject, true);
            m_chapterList.transform.DOLocalMoveX(-1242, 0.3f);
            ZjbBtn_canvasGroup.DOFade(1, switchBtnPosDutation);
            (ZjbBtn_canvasGroup.transform as RectTransform).DOAnchorPosY(diamondEndPosY, switchBtnPosDutation);
            diamondBtn_canvasGroup.DOFade(0, switchBtnPosDutation);
            (diamondBtn_canvasGroup.transform as RectTransform).DOAnchorPosY(diamondStartPosY, switchBtnPosDutation);

            m_OADList.transform.DOLocalMoveX(0, 0.3f).OnComplete(() =>
            {
                btn_chapter.enabled = true;
                btn_OAD.enabled     = true;
                Mask.gameObject.SetActive(false);
            });
            await UniTask.Delay(300);

            m_chapterList.Clear();
            break;
        }
    }
Example #4
0
 //显示鼓掌
 void ShowPaPaPa_Image()
 {
     ChapterHelper.SetActive(papapa_image.gameObject, true, async() =>
     {
         ChapterHelper.SetActive(platform_image.gameObject, false);
         papapa_text1.text = ChapterTool.GetChapterFunctionString(10000542);
         papapa_text2.text = ChapterTool.GetChapterFunctionString(10000542);
         papapa_text1.transform.GetComponent <CanvasGroup>().DOFade(1, 0.4f);
         papapa_text1.transform.DOLocalMove(new Vector3(-14, 1016, 0), 0.4f);
         papapa_text2.transform.GetComponent <CanvasGroup>().DOFade(1, 0.2f);
         papapa_text2.transform.DOLocalMove(new Vector3(560, -1100, 0), 0.2f);
         await UniTask.Delay(500);
         OpenClickBtn(true);
     });
 }
Example #5
0
    //显示路人讲话
    async void ShowPasserby_Image()
    {
        var    data     = ChapterTool.GetChapterData(10000005);
        string dialogue = ChapterTool.GetDialogueString(data);

        particle.Clear();
        particle.Pause();//暂停特效
        ChapterHelper.SetActive(passerby_image.gameObject, true, () =>
        {
            ChapterHelper.SetActive(lecture_image.gameObject, false);
            passerbyDialgoue.Play(dialogue);
        });
        await UniTask.Delay(800);

        OpenClickBtn(true);
    }
Example #6
0
    //显示最后一幕
    async void ShowEndScene()
    {
        //隐藏之前的所有图
        ChapterHelper.SetActive(carMoveBG.gameObject, false);
        ChapterHelper.SetActive(hugGrandpa_image.gameObject, false);
        ChapterHelper.SetActive(endScene.gameObject, true);
        var parfab = await ABManager.GetAssetAsync <GameObject>("openDoor");

        var go = GameObject.Instantiate(parfab);

        go.transform.parent = _oneScene;
        anim = go.transform.Find("Camera/kaimen").GetComponent <Animator>();

        //显示最后一幕时  请求保存

        if (isFirst)
        {//新手引导初次阅读
            ChapterModuleManager._Instance.RequestPassChapter();
            end_btn.onClick.RemoveAllListeners();
            end_btn.onClick.AddListener(() =>
            {
                end_btn.enabled = false;
                GoToManor();
            });
        }
        else
        {
            ChapterModuleManager._Instance.ClickEndChapterBtn(end_btn, null, async() =>
            {
                anim.SetBool("openDoor", true);
                await UniTask.Delay(1500);
                endScene.GetComponent <CanvasGroup>().DOFade(0, 3f);
                await UniTask.Delay(3500);
            }, 5500);
        }
        //首次通关序章
        if (isFirst)
        {
            end_btn.transform.Find("Text").GetComponent <Text>().text = StaticData.GetMultilingual(120224);//去庄园
        }
        else
        {
            end_btn.transform.Find("Text").GetComponent <Text>().text = ChapterTool.GetChapterFunctionString(10000000);//下一章
        }
    }
Example #7
0
    //显示女主讲话
    void ShowLecture_Image(int index)
    {
        switch (index)
        {
        case 1:
            //生成特效
            var        ParticleParfab = ABManager.GetAsset <GameObject>(ParticleName);
            GameObject parParfab      = GameObject.Instantiate(ParticleParfab);
            particle = parParfab.GetComponent <ParticleSystem>();
            ChapterHelper.SetParent(parParfab, UIRoot.instance.GetUIRootCanvas().transform);
            (parParfab.transform as RectTransform).anchoredPosition = Vector2.zero;
            particle.Play();
            ChapterHelper.SetActive(lecture_image.gameObject, true, () =>
            {
                ChapterHelper.SetActive(appearOnTheStage0_image.gameObject, false);
            });
            dialogueBox.SetStartDialogueId(10000004);
            dialogueBox.Initial(() =>
            {
                dialogueBox.Close();
                //OpenClickBtn(true);
                ClickBtn();
            });
            dialogueBox.Show();
            break;

        case 2:
            particle.Play();    //开启特效
            ChapterHelper.SetActive(lecture_image.gameObject, true, () =>
            {
                ChapterHelper.SetActive(passerby_image.gameObject, false);
            });
            dialogueBox.SetStartDialogueId(10000006);
            dialogueBox.Initial(() =>
            {
                dialogueBox.Close();
                //OpenClickBtn(true);
                ClickBtn();
            });
            dialogueBox.Show();
            break;
        }
    }
Example #8
0
    //显示主持人
    void ShowCompere_Image(int index)
    {
        switch (index)
        {
        case 1:
            ChapterHelper.SetActive(compere_image.gameObject, true, async() =>
            {
                ChapterHelper.SetActive(papapa_image.gameObject, false);
                await UniTask.Delay(100);
                (compereHand_image.transform as RectTransform).DOAnchorPos(Resethand1Pos, 0.3f);
                compereHand_image.transform.DORotate(Resethand1Rotation, 0.3f);
                (compereHand2_image.transform as RectTransform).DOAnchorPos(Resethand2Pos, 0.3f);
                compereHand2_image.transform.DORotate(Resethand2Rotation, 0.3f);
            });
            dialogueBox.SetStartDialogueId(10000003);
            dialogueBox.Initial(() =>
            {
                dialogueBox.Close();
                //OpenClickBtn(true);
                ClickBtn();
            });
            dialogueBox.Show();
            break;

        case 2:
            particle.Clear();
            particle.Pause();    //暂停特效
            ChapterHelper.SetActive(compere_image.gameObject, true, () =>
            {
                ChapterHelper.SetActive(lecture_image.gameObject, false);
            });
            dialogueBox.SetStartDialogueId(10000007);
            dialogueBox.Initial(() =>
            {
                dialogueBox.Close();
                //OpenClickBtn(true);
                ClickBtn();
            });
            dialogueBox.Show();

            break;
        }
    }
Example #9
0
    public void StepCut(int index)
    {
        if (index > 6)
        {
            return;
        }
        switch (index)
        {
        case 0:    //取消等待男主说话
            cancellationToken.Cancel();
            ChapterHelper.SetActive(nvDialogue.gameObject, false);
            ShowCarMoveBGAnswer();
            break;

        case 1:
            ShowHugGrandpa_image();
            break;
        }
    }
Example #10
0
    //显示合照
    async void ShwoGroupPhoto_Image()
    {
        ChapterHelper.SetActive(groupPhoto_image.gameObject, true, () =>
        {
            ChapterHelper.SetActive(compere_image.gameObject, false);
            PhotoMaskTop.DOAnchorPosY(0, 0.8f);
            PhotoMaskBottom.DOAnchorPosY(0, 0.8f);
        });
        //生成点击引导
        var clickGuidance = await ClickGuidance(photo_btn.transform);

        (clickGuidance.transform as RectTransform).anchoredPosition = Vector2.zero;
        //拍照
        photo_btn.onClick.RemoveAllListeners();
        photo_btn.onClick.AddListener(() => { GameObject.Destroy(clickGuidance); ClickPhotoBtn(); });

        //清除之前生成的所有
        if (particle != null)
        {
            GameObject.Destroy(particle.gameObject);
        }
    }
Example #11
0
    //车内回答
    async void ShowCarMoveBGAnswer()
    {//男主回答
        ChapterHelper.SetActive(nanDialogue.gameObject, true);
        //带头像男主说话
        name_nan.text = ChapterTool.GetChapterFunctionString(10000002);
        var data = ChapterTool.GetChapterData(10000029);

        dialogueText_nan.word = ChapterTool.GetDialogueString(data);
        dialogueText_nan.Play();
        dialogueText_nan.Speed6Play();

        await UniTask.Delay(2700);

        ChapterHelper.SetActive(nanDialogue.gameObject, false);

        WallLoop wallLoop = carMoveBG.transform.Find("MoveBg").GetComponent <WallLoop>();

        wallLoop.callback = () =>
        {
            ClickBtn();
        };
    }
Example #12
0
    //显示车外live2D动画
    async UniTask ShowCarMoveBG(CancellationTokenSource cancellationTokenSource)
    {
        ChapterHelper.SetActive(carMoveBG.gameObject, true);

        await UniTask.Delay(500);

        //带头像女主说话
        var data = ChapterTool.GetChapterData(10000028);

        ChapterHelper.SetActive(nvDialogue.gameObject, true);
        name_nv.text         = StaticData.playerInfoData.userInfo.Name;
        dialogueText_nv.word = ChapterTool.GetDialogueString(data);
        dialogueText_nv.Play();
        dialogueText_nv.Speed6Play();
        dialogueText_nv.onAnimationEnd.AddListener(() => { OpenClickBtn(true); });
        await UniTask.Delay(TimeSpan.FromMilliseconds(2700), cancellationToken : cancellationTokenSource.Token);

        OpenClickBtn(false);//玩家如果没点击先关闭按钮
        ChapterHelper.SetActive(nvDialogue.gameObject, false);
        _clickIndex++;
        ShowCarMoveBGAnswer();
    }
Example #13
0
    //手机震动
    async void GetPhoneCall()
    {
        bubble_image.transform.localScale = Vector3.zero;
        bubble_image.transform.DOScale(1f, 0.3f);
        //生成点击引导
        var clickGuidance = await ClickGuidance(bubble_image.transform, 0.5f);

        (clickGuidance.transform as RectTransform).anchoredPosition = (phone.transform as RectTransform).anchoredPosition;
        ChapterHelper.SetActive(bubble_image.gameObject, true);
        phone.onClick.RemoveAllListeners();
        phone.onClick.AddListener(async() =>
        {
            if (walk_RewImage != null)
            {
                GameObject.Destroy(walk_RewImage.gameObject);
            }
            GameObject.Destroy(clickGuidance.gameObject);
            await OpenChatView();

            ChapterHelper.Fade(walk_RewImage, 0, 0.8f, 1);
        });
    }
Example #14
0
    //拍照效果
    async void TakePhotos()
    {
        ChapterHelper.SetActive(white.gameObject, true);
        await UniTask.Delay(durationTime);

        ChapterHelper.SetActive(white.gameObject, false);

        PhotoMaskTop.anchoredPosition    = new Vector2(0, ChapterBase.photoMask1InitY);
        PhotoMaskBottom.anchoredPosition = new Vector2(0, ChapterBase.photoMask2InitY);
        groupPhoto_image.transform.DOScale(ChapterBase.lessenScale, ChapterBase.lessenScaleDurationTime);
        groupPhoto_image.rectTransform.DOAnchorPosY(ChapterBase.photoY, ChapterBase.lessenScaleDurationTime).OnComplete(() =>
        {
            ChapterHelper.Fade(save_btn.transform.parent.gameObject, 1, 1f, 0);
            //按钮条件注册
            save_btn.onClick.RemoveAllListeners();
            save_btn.onClick.AddListener(SavePhotoBtn);
            savebtn_text.text = "保存图片";//TODO

            next_btn.onClick.RemoveAllListeners();
            next_btn.onClick.AddListener(ClickNext);
            nextbtn_text.text = "下一步";//TODO
        });
    }
Example #15
0
    //显示登台
    async void ShowAppearOnTheStage_Image(int index)
    {
        switch (index)
        {
        case 1:
            ChapterHelper.SetActive(appearOnTheStage0_image.gameObject, true, () =>
            {
                ChapterHelper.SetActive(compere_image.gameObject, false);
                ChapterHelper.SetActive(appearOnTheStage1_image.gameObject, true);
            });
            break;

        case 2:
            MoveY(appearOnTheStage2_image.rectTransform, -1170);
            break;

        case 3:
            MoveY(appearOnTheStage3_image.rectTransform, -1539);
            break;

        case 4:
            if (ScreenRatio < 1.8f)
            {
                appearOnTheStage0_image.rectTransform.DOAnchorPosY(475f, 0.6f);
            }
            if (ScreenRatio > 1.8f)
            {
                appearOnTheStage0_image.rectTransform.DOAnchorPosY(175f, 0.6f);
            }
            MoveY(appearOnTheStage4_image.rectTransform, -2154);
            break;
        }
        await UniTask.Delay(800);

        OpenClickBtn(true);
    }
Example #16
0
    //信息更新
    void ShwoData()
    {
        if (_currShowData == null)
        {
            return;
        }
        bool isShowRedDot;

        //红点逻辑
        if (ChapterHelper.localOADList.Contains(_currShowData.ExtraStoryId))
        {
            isShowRedDot = false;
        }
        else
        {
            isShowRedDot = true;
        }

        //上新逻辑
        UpNow = PlayerPrefs.GetInt($"OAD+{_currShowData.ExtraStoryId}");
        if (UpNow == 2)
        {//上新逻辑关闭
            New_image.gameObject.SetActive(false);
        }
        else
        {
            New_image.gameObject.SetActive(true);
        }


        try
        {
            ItemPicture_image.sprite = ABManager.GetAsset <Sprite>(_currShowData.picture);
        }
        catch
        {
            Debug.LogError("番外icon没找到");
        }

        bool isUnlock = UIChapterComponent.Instance.OADID.Contains(_currShowData.ExtraStoryId.ToString()) ? true : false;//在列表里则解锁

        if (!isUnlock)
        {
            if (_currShowData.Price.Count != 0)//紫星币
            {
                type = OADItemType.Money;
            }
            else//AD
            {
                type = OADItemType.AD;
                if (UIChapterComponent.Instance.ADList != null)//没看过广告的用户 请求回返空
                {
                    foreach (var item in UIChapterComponent.Instance.ADList)
                    {
                        if (item.GoodsId != _currShowData.ExtraStoryId)
                        {
                            continue;
                        }
                        ADcount = item.AdvNum;
                    }
                }
            }
        }
        else
        {
            type = OADItemType.Unlock;
        }

        string OADName = ChapterHelper.GetOADDialogueString(ChapterHelper.GetOADData(_currShowData.ExtraStoryName));

        this.OADName_Text.text = OADName;

        if (type == OADItemType.AD && this.ADcount >= _currShowData.AdvertisingNum)
        {
            type = OADItemType.Unlock;
        }

        switch (type)
        {
        case OADItemType.AD:
            ChapterHelper.SetActive(unlock.gameObject, true);
            ChapterHelper.SetActive(start.gameObject, false);

            //unlockIcon.sprite = ABManager.GetAsset<Sprite>("");//广告Icon图片
            watchCount.text = $"{this.ADcount}/{_currShowData.AdvertisingNum}";

            NoUnlockRedDot.gameObject.SetActive(isShowRedDot);
            break;

        case OADItemType.Money:
            ChapterHelper.SetActive(unlock.gameObject, true);
            ChapterHelper.SetActive(start.gameObject, false);

            unlockIcon.sprite = ABManager.GetAsset <Sprite>("dj_zjb");   //紫星币Icon图片
            watchCount.text   = _currShowData.Price[0].Count.ToString();
            //颜色变化(不足为红够了变白)

            NoUnlockRedDot.gameObject.SetActive(isShowRedDot);
            break;

        case OADItemType.Unlock:
            ChapterHelper.SetActive(start.gameObject, true);
            ChapterHelper.SetActive(unlock.gameObject, false);

            UnlockRedDot.gameObject.SetActive(isShowRedDot);

            startWatch_text.text = StaticData.GetMultilingual(120292);    //国际化获取
            break;
        }
    }
Example #17
0
    //章节番外切换按钮
    void OnClickOADBtn(ChapterType chapterType)
    {
        btn_chapter.enabled = false;
        btn_OAD.enabled     = false;
        GetUserInfo();//刷新数据
        if (chapterType == ChapterType.Main)
        {
            if (line == ChapterType.Main)
            {
                btn_chapter.enabled = true;
                btn_OAD.enabled     = true;
                return;
            }
            line = ChapterType.Main;

            btn_chapter.image.sprite     = selectBtn_sprite;
            btn_OAD.image.sprite         = noSelectBtn_sprite;
            chapterText.color            = selectText_Color;
            OADText.color                = noselectText_Color;
            chapterShadow.effectColor    = new Color(1f, 1f, 1f);
            chapterShadow.effectDistance = new Vector2(1, -2);
            OADShadow.effectColor        = new Color(63f / 255f, 119f / 255f, 188f / 255f);
            OADShadow.effectDistance     = new Vector2(2, 1);
            chapterShadow.enabled        = true;
            chapterOutLine.enabled       = false;
            OADShadow.enabled            = false;
            OADOutLine.enabled           = true;

            SwitchAnima(line);
            //动画后再清除
            //m_chapterList.Clear();
            //m_chapterList.Init(_mainMaxCount, _passChapterID, _unlockMaxChapterID);
        }
        else
        {//番外开启
            if (!StaticData.IsOpenFunction(10021))
            {
                btn_chapter.enabled = true;
                btn_OAD.enabled     = true;
                return;
            }
            if (line == ChapterType.OAD)
            {
                btn_chapter.enabled = true;
                btn_OAD.enabled     = true;
                return;
            }
            line = ChapterType.OAD;

            btn_chapter.image.sprite     = noSelectBtn_sprite;
            btn_OAD.image.sprite         = selectBtn_sprite;
            chapterText.color            = noselectText_Color;
            OADText.color                = selectText_Color;
            OADShadow.effectColor        = new Color(1f, 1f, 1f);
            OADShadow.effectDistance     = new Vector2(1, -2);
            chapterShadow.effectColor    = new Color(63f / 255f, 119f / 255f, 188f / 255f);
            chapterShadow.effectDistance = new Vector2(2, 1);
            chapterShadow.enabled        = false;
            chapterOutLine.enabled       = true;
            OADShadow.enabled            = true;
            OADOutLine.enabled           = false;

            SwitchAnima(line);
            ChapterHelper.SetActive(m_OADList.gameObject, true);
            //m_OADList.Clear();
            //m_OADList.Init(_OADMaxCount, OADid);
        }

        //用户信息
        //StaticData.playerInfoData.userInfo
        //Debug.Log("点击了切换章节按钮");
        ////通关请求
        //CSClearance cSClearance = new CSClearance() { SectionId = 1001 };
        //ProtocalManager.Instance().SendCSClearance(cSClearance, (SCEmptyClearance cs) => {}, (ErrorInfo e) => { Debug.Log("章节请求失败"); });
    }