hch
6 天以前 9a43efd1b70bb105adcbd0ec3ae8016d49112c52
Merge branch 'master' of http://mobile.secondworld.net.cn:10010/r/Project_SG_scripts
1个文件已修改
2个文件已添加
80 ■■■■■ 已修改文件
Main/System/HappyXB/HeroCallResultWin.cs 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/HappyXB/HeroCallXYFinishWin.cs 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/HappyXB/HeroCallXYFinishWin.cs.meta 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/HappyXB/HeroCallResultWin.cs
@@ -123,6 +123,7 @@
            resultState = HeroUIManager.Instance.selectCallIndex == 0 ? ResultState.single : ResultState.ten;
            RefreshState();
            CheckWishFinishOnSkip();
        }
        else
        {
@@ -338,6 +339,10 @@
        roleLHModelTween2.Play();
        bgTexture.SetTexture2D(HeroUIManager.Instance.GetBGName(hero.SkinIDList[0], hero.Country));
        if (IsWishHero(heroID))
        {
            UIManager.Instance.OpenWindow<HeroCallXYFinishWin>();
        }
    }
    void RefreshHeroInfo(int heroID)
@@ -364,4 +369,45 @@
        }
        callTip.text = Language.Get("HeroCall6", needCount, string.Join(Language.Get("L1130"), qualityStrList.ToArray()));
    }
    /// <summary>
    /// 跳过动画时,检查是否抽到了心愿武将
    /// </summary>
    void CheckWishFinishOnSkip()
    {
        // 只有高级招募才有心愿
        if (HeroUIManager.Instance.selectCallType != HappXBTitle.HeroCallAdvanced) return;
        for (int i = 0; i < HappyXBModel.Instance.xbResultDict.Count; i++)
        {
            int heroID = HappyXBModel.Instance.xbResultDict[i].itemId;
            if (IsWishHero(heroID))
            {
                // 抽到了心愿武将,打开完成特效界面
                UIManager.Instance.OpenWindow<HeroCallXYFinishWin>();
                break;
            }
        }
    }
    /// <summary>
    /// 判断指定的英雄ID是否为当前选中的心愿武将
    /// </summary>
    bool IsWishHero(int heroID)
    {
        if (HeroUIManager.Instance.selectCallType != HappXBTitle.HeroCallAdvanced) return false;
        var hero = HeroConfig.Get(heroID);
        if (hero == null) return false;
        if (HappyXBModel.Instance.TryGetHeroWishIDByQuality((int)HappXBTitle.HeroCallAdvanced, hero.Quality, out int wishID, out _, out _))
        {
            var libCfg = TreasureItemLibConfig.Get(wishID);
            if (libCfg != null && libCfg.ItemID == heroID)
            {
                return true;
            }
        }
        return false;
    }
}
Main/System/HappyXB/HeroCallXYFinishWin.cs
New file
@@ -0,0 +1,23 @@
using System;
using UnityEngine;
public class HeroCallXYFinishWin : UIBase
{
    [SerializeField] UIEffectPlayer xyFinishUIEffect;
    protected override void OnPreOpen()
    {
        xyFinishUIEffect.onComplete += OnComplete;
        xyFinishUIEffect.Play();
    }
    protected override void OnPreClose()
    {
        xyFinishUIEffect.onComplete -= OnComplete;
        xyFinishUIEffect.Stop();
    }
    private void OnComplete()
    {
        CloseWindow();
    }
}
Main/System/HappyXB/HeroCallXYFinishWin.cs.meta
New file
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 52b2744981baf7b47b433b13fcf02f38
MonoImporter:
  externalObjects: {}
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant: