chenxin
2020-12-17 df8c6633500f6c1c752f8a60025cda0e9909644c
Assets/Scripts/Guide/GuidePanelNew.cs
@@ -25,7 +25,7 @@
    Vector2 rimOffset = new Vector2(30, 30);//边框要比按钮大一些
    Vector2 towerBuyBtnPos;//动态生成按钮抠图位置
    Vector2 skillBtnPos = new Vector2(459, 44.6f);
    Vector2 skillBtnPos = new Vector2(459, 121f);
    private Image warningImg;//大波敌人来袭提示
@@ -39,9 +39,13 @@
    ImageTowerPos towerPos3;//塔位标识
    Image tmpMask;//自身的阻挡射线Panel
    ParticleSystem finishPS;
    //ParticleSystem finishPS;
    Button finishBtn;
    Image finishImg;
    Canvas skillCanvasGroup;
    void Awake()
    {
        tmpMask = transform.GetComponent<Image>();
        tipsUI = transform.Find("Tips").gameObject;
        tipsUI.transform.SetAsLastSibling();//把tips放在最下面
@@ -139,7 +143,13 @@
        skillBtn = GameObject.Find("UICamera/BottomCanvas/Panel/Energy/FireSkillBg/SkillBtn").GetComponent<Button>();
        skillBtn.interactable = false;
        finishPS = transform.Find("Effect_UI_YinDaoJieShu/Particle System (3)").GetComponent<ParticleSystem>();
        finishBtn = transform.Find("FinishImageBtn").GetComponent<Button>();
        finishImg = finishBtn.transform.Find("FinishImage").GetComponent<Image>();
        finishImg.transform.localScale = new Vector3(0.1f, 0.1f, 0.1f);
        finishBtn.onClick.AddListener(OnClickFinish);
        finishBtn.gameObject.SetActive(false);
        //finishPS = transform.Find("Effect_UI_YinDaoJieShu/Particle System (3)").GetComponent<ParticleSystem>();
        towerBuyBtn.gameObject.SetActive(false);
    }
@@ -186,6 +196,8 @@
    {
        //关闭对话框
        SetGuideUI(false);
        towerBuyBtn.gameObject.SetActive(true);
        //开箱
        boxPanel.ChangeType(GuideBoxType.Wood, Step1Finish);
    }
@@ -217,6 +229,7 @@
    {
        strArray = str;
        tmpMask.enabled = false;
        AddButtonListener(towerBuyBtn, Step2_1);
        Image btnImg = towerBuyBtn.GetComponent<Image>();
        InitRectGuidance(btnImg, 159, 73.5f, Vector2.one);
@@ -230,9 +243,6 @@
    private void Step2_1()
    {
        Wood1Appear();
        RemoveButtonListener(towerBuyBtn);
        AddButtonListener(towerBuyBtn, Step2_2);
        StartCoroutine(ShowRimTip(strArray[1]));
    }
    private void Wood1Appear()
@@ -244,6 +254,9 @@
            wood1.enabled = false;
            wood1PS1.Play();
            wood1PS2.Play();
            RemoveButtonListener(towerBuyBtn);
            AddButtonListener(towerBuyBtn, Step2_2);
            StartCoroutine(ShowRimTip(strArray[1]));
        }
    }
@@ -254,26 +267,32 @@
    {
        Wood2Appear();
        offectBackground.SetActive(true);
        wood1.enabled = true;
        wood2.enabled = true;
        ShowDragPath(wood2.GetStartP, wood1.GetRect);
        RimWood2();
        image_Tip_Rect.gameObject.SetActive(false);
        //StartCoroutine(ShowRimTip(strArray[2]));
    }
    private void Wood2Appear()
    {
        wood2.gameObject.SetActive(true);
        wood2PS1.Play();
        wood2PS2.Play();
        //fire2.enabled = false;
        DestoryButtonListener(towerBuyBtn);
        SetRimActive(false);
        CloseGuidance();
        tmpMask.enabled = true;
        if (!wood2.gameObject.activeSelf)
        {
            wood2.gameObject.SetActive(true);
            wood2PS1.Play();
            wood2PS2.Play();
            //fire2.enabled = false;
            DestoryButtonListener(towerBuyBtn);
            towerBuyBtn.gameObject.SetActive(false);
            SetRimActive(false);
            CloseGuidance();
            tmpMask.enabled = true;
            offectBackground.SetActive(true);
            wood1.enabled = true;
            wood2.enabled = true;
            ShowDragPath(wood2.GetStartP, wood1.GetRect);
            RimWood2();
            image_Tip_Rect.gameObject.SetActive(false);
        }
    }
@@ -328,7 +347,18 @@
        StopShowDragPath(true);
    }
    /// <summary>
    /// 关闭技能X1的显示优先级
    /// </summary>
    public void CloseSkillImage()
    {
        GameObject go1 = GameObject.Find("UICamera/BottomCanvas/Panel/Energy/FireSkillBg/SkillCount1");
        if (go1 != null)
        {
            skillCanvasGroup = go1.GetComponent<Canvas>();
            skillCanvasGroup.overrideSorting = false;
        }
    }
    /// <summary>
    ///  步骤3 :对话---出兵后杀光---对话---展示火鸡
@@ -351,6 +381,8 @@
    {
        //关闭对话框
        SetGuideUI(false);
        towerBuyBtn.gameObject.SetActive(true);
        //开箱
        boxPanel.ChangeType(GuideBoxType.Fire, cb);
    }
@@ -370,7 +402,6 @@
        InitRectGuidance(btnImg, 159, 73.5f, Vector2.one);
        SetRimPos(towerBuyBtn);
        StartCoroutine(ShowRimTip(strArray[0]));
    }
    /// <summary>
@@ -379,8 +410,6 @@
    private void Step4_1()
    {
        FireAppear();
        RemoveButtonListener(towerBuyBtn);
        Step4_2();
    }
    private void FireAppear()
@@ -392,6 +421,10 @@
            fire.enabled = true;
            firePS1.Play();
            firePS1.Play();
            RemoveButtonListener(towerBuyBtn);
            towerBuyBtn.gameObject.SetActive(false);
            Step4_2();
        }
    }
@@ -476,6 +509,8 @@
        }
        else if (currentIndex == 2)
        {
            tmpMask.enabled = true;
            SetRimActive(false);
            StopShowDragPath(true);
            CloseGuidance();
@@ -497,6 +532,8 @@
    {
        //关闭对话框
        SetGuideUI(false);
        towerBuyBtn.gameObject.SetActive(true);
        //开箱
        boxPanel.ChangeType(GuideBoxType.Water, cb);
    }
@@ -524,8 +561,6 @@
    private void Step6_1()
    {
        WaterAppear();
        RemoveButtonListener(towerBuyBtn);
        Step6_2();
    }
    private void WaterAppear()
@@ -537,6 +572,10 @@
            water.enabled = true;
            waterPS1.Play();
            waterPS2.Play();
            RemoveButtonListener(towerBuyBtn);
            towerBuyBtn.gameObject.SetActive(false);
            Step6_2();
        }
    }
    /// <summary>
@@ -579,7 +618,6 @@
        {
            colorCount++;
            warningImg.DOFade(colorCount % 2, 1.0f).OnComplete(SetWarningColor);
            CommonDebugHelper.Debug($"执行了{colorCount}次");
        }
        else
        {
@@ -592,6 +630,8 @@
    public void Step7Talk(string[] str, Action ac)
    {
        callBack = ac;
        GameObject.Find("UICamera/MainUI/BloodUI").SetActive(false);
        SetGuideUI(true);
        StartShowWord(str, GuideEnergyUp);
    }
@@ -619,17 +659,40 @@
    public void SkillRelease(string[] str, Action ac)
    {
        GameObject.Find("UICamera/MainUI/BloodUI").SetActive(true);
        RemoveButtonListener(skillBtn.gameObject);
        SetRimActive(false);
        CloseGuidance();
        SetGuideUI(true);
        StartShowWord(str, ac);
        finishPS.Play();
        callBack = ac;
        StartShowWord(str, ShowFinishPanel);
        // charForeach.StartFinalShowWord(str, ac, () =>
        // {
        //     finishPS.Play();
        // });
    }
    private void ShowFinishPanel()
    {
        SetGuideUI(false);
        //显示引导结束面板,再次点击按钮关闭
        finishBtn.gameObject.SetActive(true);
        finishImg.transform.DOScale(Vector3.one, 0.5f);
    }
    private void OnClickFinish()
    {
        callBack?.Invoke();
    }
    public void FinishGuide()
    {
        if (skillCanvasGroup != null)
            skillCanvasGroup.overrideSorting = true;
        towerBuyBtn.gameObject.SetActive(true);
    }