//按钮显示动画
        private IEnumerator ShowBtn()
        {
            AnimationCurve ac = AniCurveManager.GetInstance().Curve84;
            Sequence       sq = DOTween.Sequence();

            sq.Pause();
            sq.Append(btnCon.GetComponent <CanvasGroup>()
                      .DOFade(1, 0.5f)
                      .OnStart(() => {
                Debug.Log("anistart");
                btnCon.GetComponent <CanvasGroup>().alpha = 0;
                btnCon.SetActive(true);
            }));
            for (int i = 0; i < btnCon.transform.childCount; i++)
            {
                Transform tr = btnCon.transform.GetChild(i);
                sq.Join(
                    tr.GetComponent <RectTransform>()
                    .DOAnchorPosX(0, 0.5f)
                    .SetEase(ac)
                    .SetDelay(0.05f * i));
            }
            sq.onComplete = (() => {
                BlockBtn(true);
            });
            sq.Play();
            yield return(sq.WaitForCompletion());
        }
示例#2
0
        public void SaveData()
        {
            string mode = DataManager.GetInstance().gameData.MODE;

            if (mode == "Avg模式" || mode == "侦探模式" || mode == "选项分歧" || mode == "特殊选择分歧")
            {
                gm.sm.SaveSoundInfo();
                DataManager.GetInstance().gameData.fgSprites = gm.im.SaveImageInfo();
            }
            // 储存
            DataManager.GetInstance().Save(saveID);
            // 更新单一动画
            savedic = DataManager.GetInstance().tempData.saveInfo;
            GameObject go = saveTable.transform.Find("SaveBox" + saveSlot).gameObject;

            ChangeSaveSlop(go, saveMode, saveID, savedic[saveID]);
            AnimationCurve ac  = AniCurveManager.GetInstance().Curve84;
            Sequence       twq = DOTween.Sequence();

            twq.Pause();
            twq.Append(go.transform.Find("Save_Sprite/Thumb_Sprite").GetComponent <Image>()
                       .DOFade(1, 0.5f)
                       .SetEase(ac))
            .Join(go.transform.Find("Info_Canvas").GetComponent <CanvasGroup>()
                  .DOFade(1, 0.5f)
                  .SetEase(ac));
            twq.Play();
            //FreshSaveTable();
        }
示例#3
0
        private void Open()
        {
            AnimationCurve ac = AniCurveManager.GetInstance().Curve84;

            // 淡入4个
            GameObject[] goos = new GameObject[4] {
                graphicCon, textCon, soundCon, previewCon
            };
            int[] posY = new int[4] {
                0, 0, 0, 0
            };
            for (int i = 0; i < 4; i++)
            {
                GameObject go  = goos[i];
                int        raw = i / 2;
                int        col = i % 2;
                go.GetComponent <CanvasGroup>()
                .DOFade(1, 0.5f)
                .SetEase(ac)
                .SetDelay(0.03f * col + 0.02f * raw);
                go.GetComponent <RectTransform>()
                .DOAnchorPosY(posY[i], 0.5f)
                .SetEase(ac)
                .SetDelay(0.03f * col + 0.02f * raw);
            }
        }
示例#4
0
        public void Close()
        {
            // 飞出按钮
            AnimationCurve ac = AniCurveManager.GetInstance().Curve84;

            if (tw != null)
            {
                tw.Kill();
            }
            tw = DOTween.Sequence();
            tw.Pause();
            tw.Append(
                btnTable.GetComponent <CanvasGroup>()
                .DOFade(0, 0.5f)
                .OnStart(() => { btnTable.SetActive(true); })
                );
            for (int i = 0; i < btnTable.transform.childCount; i++)
            {
                Transform tr = btnTable.transform.GetChild(i);
                tw.Join(
                    tr.GetComponent <RectTransform>()
                    .DOAnchorPosX(1710 + 280, 0.5f)
                    .SetEase(ac)
                    .SetDelay(0.05f * i));
            }
            tw.Play();
        }
示例#5
0
        public void Open()
        {
            // 飞入按钮
            AnimationCurve ac = AniCurveManager.GetInstance().Curve84;

            Debug.Log("menu open");
            if (tw != null)
            {
                tw.Kill();
            }
            tw = DOTween.Sequence();
            tw.Pause();
            tw.Append(gameObject.GetComponent <CanvasGroup>()
                      .DOFade(1, 0.5f)
                      .OnStart(() => { gameObject.SetActive(true); })
                      .OnComplete(() => { BlockBtn(true); })
                      );

            for (int i = 0; i < btnTable.transform.childCount; i++)
            {
                Transform tr = btnTable.transform.GetChild(i);
                tw.Join(tr.GetComponent <RectTransform>()
                        .DOAnchorPosX(1710, 0.5f)
                        .SetEase(ac)
                        .SetDelay(0.05f * i)
                        );
            }
            tw.Play();
        }
示例#6
0
        public override IEnumerator CloseSequence(UIAnimationCallback callback)
        {
            // 飞出按钮
            AnimationCurve ac = AniCurveManager.GetInstance().Curve84;

            btnTable.GetComponent <CanvasGroup>()
            .DOFade(0, 0.5f)
            .OnStart(() => { btnTable.SetActive(true); });
            for (int i = 0; i < btnTable.transform.childCount; i++)
            {
                Transform tr = btnTable.transform.GetChild(i);
                tr.GetComponent <RectTransform>()
                .DOAnchorPosX(1710 + 280, 0.5f)
                .SetEase(ac)
                .SetDelay(0.05f * i);
            }

            yield return(new WaitForSeconds(0.2f));

            yield return(base.CloseSequence(() =>
            {
                //particleCon.SetActive(false);
                callback();
            }));
        }
示例#7
0
        public void HoverSave(int x, bool ishover)
        {
            saveSlot = x;
            GameObject     go = saveTable.transform.Find("SaveBox" + saveSlot).gameObject;
            AnimationCurve ac = AniCurveManager.GetInstance().Curve84;

            go.transform.Find("Image").GetComponent <Outline>()
            .DOFade(ishover ? 1 : 0, 0.5f)
            .SetEase(ac);
        }
        private IEnumerator ShowOther()
        {
            AnimationCurve ac = AniCurveManager.GetInstance().Curve84;
            Sequence       sq = DOTween.Sequence();

            sq.Pause();
            sq.Append(otherCon.GetComponent <CanvasGroup>()
                      .DOFade(1, 0.5f)
                      .OnStart(() =>
            {
                otherCon.GetComponent <CanvasGroup>().alpha = 0;
                otherCon.SetActive(true);
            }));
            sq.Play();
            yield return(sq.WaitForCompletion());
        }
        /// <summary>
        /// 自定义退出界面动效
        /// </summary>
        public override IEnumerator CloseSequence(UIAnimationCallback callback)
        {
            // 飞出按钮
            AnimationCurve ac = AniCurveManager.GetInstance().Curve84;

            if (twq != null)
            {
                twq.Kill();
            }
            twq = DOTween.Sequence();
            //videoSprite.GetComponent<RectTransform>()
            //    .DOAnchorPosX(-45f, 0.66f);

            twq.Append(
                btnCon.GetComponent <CanvasGroup>()
                .DOFade(0, 0.5f)
                .OnStart(() => { btnCon.SetActive(true); })
                );

            for (int i = 0; i < btnCon.transform.childCount; i++)
            {
                Transform tr = btnCon.transform.GetChild(i);
                twq.Join(
                    tr.GetComponent <RectTransform>()
                    .DOAnchorPosX(280, 0.5f)
                    .SetEase(ac)
                    .SetDelay(0.05f * i)
                    );
            }
            twq.Play();

            yield return(new WaitForSeconds(0.2f));

            yield return(base.CloseSequence(() =>
            {
                //particleCon.SetActive(false);
                videoCon.SetActive(false);
                callback();
            }));
        }
        //文字显示动画
        private IEnumerator ShowTitleText()
        {
            AnimationCurve ac = AniCurveManager.GetInstance().Curve84;
            Sequence       sq = DOTween.Sequence();

            sq.Pause();
            //sq.Append(titleCon.GetComponent<CanvasGroup>()
            //        .DOFade(1, 0.5f)
            //        .OnStart(() =>
            //        {
            //            titleCon.GetComponent<CanvasGroup>().alpha = 0;
            //            titleCon.SetActive(true);
            //        }));
            sq.Append(titleLabel.GetComponent <Text>()
                      .DOFade(1, 0.5f)
                      .SetEase(ac));
            sq.Append(subtitleLabel.GetComponent <Text>()
                      .DOFade(1, 0.5f)
                      .SetEase(ac));
            sq.Play();
            yield return(sq.WaitForCompletion());
        }
示例#11
0
        public void DeleteData()
        {
            //Debug.Log("Delete: " + saveID + " " + saveSlot);
            DataManager.GetInstance().Delete(saveID);
            // 播放单独动画
            savedic = DataManager.GetInstance().tempData.saveInfo;
            GameObject     go  = saveTable.transform.Find("SaveBox" + saveSlot).gameObject;
            AnimationCurve ac  = AniCurveManager.GetInstance().Curve84;
            Sequence       twq = DOTween.Sequence();

            twq.Pause();
            twq.Append(go.transform.Find("Save_Sprite/Thumb_Sprite").GetComponent <Image>()
                       .DOFade(0, 0.5f)
                       .SetEase(ac))
            .Join(go.transform.Find("Info_Canvas").GetComponent <CanvasGroup>()
                  .DOFade(0, 0.5f)
                  .SetEase(ac));
            twq.Play().OnComplete(
                () => { ChangeSaveSlop(go, saveMode, saveID, savedic[saveID]); }
                );
            //FreshSaveTable();
        }
示例#12
0
        private void Open()
        {
            AnimationCurve ac = AniCurveManager.GetInstance().Curve84;

            // 淡入数字行
            numTable.GetComponent <CanvasGroup>().DOFade(1, 0.66f);
            // 淡入存档栏
            for (int i = 0; i < saveSlotNum; i++)
            {
                int        t   = i + 1;
                GameObject go  = saveTable.transform.Find("SaveBox" + t).gameObject;
                int        raw = i / 2;
                int        col = i % 2;
                go.GetComponent <CanvasGroup>()
                .DOFade(1, 0.5f)
                .SetEase(ac)
                .SetDelay(0.03f * col + 0.02f * raw);
                go.GetComponent <RectTransform>()
                .DOAnchorPosY(slotPos.y - (slotSize.y + slotOffset.y) * raw, 0.5f)
                .SetEase(ac)
                .SetDelay(0.03f * col + 0.02f * raw);
            }
        }