using System.Collections.Generic; using System.Linq; using UnityEngine; using UnityEngine.UI; /// /// 图鉴激活升级界面 /// public class HeroCollectionLvUpWin : UIBase { [SerializeField] GameObject lvupPanel; [SerializeField] GameObject fullPanel; [SerializeField] HeroHeadBaseCell beforeHeadCell; [SerializeField] Text name1; [SerializeField] GameObject unActiveGo; [SerializeField] HeroHeadBaseCell afterHeadCell; [SerializeField] Text name2; // [SerializeField] Text[] attrNames; // [SerializeField] Text[] beforeAttrValues; // [SerializeField] Text[] afterAttrValues; [SerializeField] RichText awardInfo; [SerializeField] Button btn; [SerializeField] Text btnText; [SerializeField] HeroHeadBaseCell fullHeadCell; [SerializeField] Text name3; [SerializeField] Text[] fullAttrs; [SerializeField] GameObject fullImg; // [SerializeField] Text titleText; protected override void InitComponent() { btn.AddListener(OnBtnClick); } protected override void OnPreOpen() { HeroUIManager.Instance.OnHeroCollectEvent += Display; Display(); } protected override void OnPreClose() { HeroUIManager.Instance.OnHeroCollectEvent -= Display; } void Display() { var state = HeroUIManager.Instance.GetHeroBookState(HeroUIManager.Instance.selectCollectHeroID, HeroConfig.Get(HeroUIManager.Instance.selectCollectHeroID).Quality); var config = HeroConfig.Get(HeroUIManager.Instance.selectCollectHeroID); HB122_tagSCHeroInfo.tagSCHero colData; HeroUIManager.Instance.TryGetHeroBookInfo(HeroUIManager.Instance.selectCollectHeroID, out colData); // var bookPer = HeroUIManager.Instance.GetHeroBookPer(HeroUIManager.Instance.selectCollectHeroID); // if (state == 5 || state == 2) // { // //已满级 // titleText.text = state == 5 ? Language.Get("HeroAwake13") : Language.Get("HeroAwake12"); // fullPanel.SetActive(true); // lvupPanel.SetActive(false); // fullHeadCell.Init(HeroUIManager.Instance.selectCollectHeroID, config.SkinIDList[0], colData.BookStarLV); // name3.text = colData.BookBreakLV == 0 ? config.Name : Language.Get("herocardbreaklv", config.Name, colData.BookBreakLV); // for (int i = 0; i < fullAttrs.Length; i++) // { // fullAttrs[i].text = PlayerPropertyConfig.GetFullDescription(PlayerPropertyConfig.basePerAttrs[i], // bookPer, "{0} " + UIHelper.AppendColor(TextColType.Green, "+{1}")); // } // var nextHeroID = HeroUIManager.Instance.FindHeroIDCanAddCollectAttr(HeroUIManager.Instance.selectCollectHeroID); // if (nextHeroID != 0) // { // fullImg.SetActive(false); // btn.SetActive(true); // //下一个 // btnText.text = Language.Get("HeroAwake14"); // } // else // { // fullImg.SetActive(state == 5); // btn.SetActive(state == 2); // btnText.text = Language.Get("L1109"); // } // } // else { // fullPanel.SetActive(true); lvupPanel.SetActive(state == 1); fullHeadCell.Init(HeroUIManager.Instance.selectCollectHeroID, config.SkinIDList[0], colData.BookStarLV); name3.text = colData.BookBreakLV == 0 ? config.Name : Language.Get("herocardbreaklv", config.Name, colData.BookBreakLV); btn.SetActive(true); // beforeHeadCell.Init(HeroUIManager.Instance.selectCollectHeroID, config.SkinIDList[0], colData.BookStarLV); // name1.text = colData.BookBreakLV == 0 ? config.Name : Language.Get("herocardbreaklv", config.Name, colData.BookBreakLV); // int addPer = 0; var qualityConfig = HeroQualityConfig.Get(config.Quality); awardInfo.text = string.Empty; unActiveGo.SetActive(false); // titleText.text = Language.Get("HeroAwake12"); int afterBreakLV = colData.BookBreakLV; int afterStarLV = colData.BookStarLV; if (state == 1) { lvupPanel.SetActive(true); //激活 // addPer = qualityConfig.BookInitAddPer; btnText.text = Language.Get("L1131"); //L1131 激活 awardInfo.text = Language.Get("HeroAwake10", UIHelper.GetIconNameWithMoneyType(qualityConfig.BookActAwardMoney[0]), qualityConfig.BookActAwardMoney[1]); unActiveGo.SetActive(true); // titleText.text = Language.Get("HeroAwake11"); } // else if (state == 3) // { // //突破 // addPer = qualityConfig.BookBreakLVAddPer; // btnText.text = Language.Get("L1109"); //升级 // afterBreakLV++; // } // else if (state == 4) // { // //升星 // addPer = qualityConfig.BookStarAddPer; // btnText.text = Language.Get("L1109"); // afterStarLV++; // } else { var nextHeroID = HeroUIManager.Instance.FindHeroIDCanAddCollectAttr(HeroUIManager.Instance.selectCollectHeroID); if (nextHeroID != 0) { //下一个 btnText.text = Language.Get("HeroAwake14"); } else { btnText.text = Language.Get("L1001"); } // fullPanel.SetActive(true); lvupPanel.SetActive(false); // fullHeadCell.Init(HeroUIManager.Instance.selectCollectHeroID, config.SkinIDList[0], colData.BookStarLV); // name3.text = colData.BookBreakLV == 0 ? config.Name : Language.Get("herocardbreaklv", config.Name, colData.BookBreakLV); } // afterHeadCell.Init(HeroUIManager.Instance.selectCollectHeroID, config.SkinIDList[0], afterStarLV); // name2.text = afterBreakLV == 0 ? config.Name :Language.Get("herocardbreaklv", config.Name, afterBreakLV); // for (int i = 0; i < beforeAttrValues.Length; i++) // { // beforeAttrValues[i].text = PlayerPropertyConfig.GetValueDescription(PlayerPropertyConfig.basePerAttrs[i], bookPer); // attrNames[i].text = PlayerPropertyConfig.Get(PlayerPropertyConfig.basePerAttrs[i]).Name; // afterAttrValues[i].text = PlayerPropertyConfig.GetValueDescription(PlayerPropertyConfig.basePerAttrs[i], bookPer + addPer); // } } } void OnBtnClick() { var state = HeroUIManager.Instance.GetHeroBookState(HeroUIManager.Instance.selectCollectHeroID, HeroConfig.Get(HeroUIManager.Instance.selectCollectHeroID).Quality); if (state == 1) { //激活 SendPack(0); } // else if (state == 3) // { // //突破 // SendPack(2); // } // else if (state == 4) // { // //升星 // SendPack(1); // } else { var nextHeroID = HeroUIManager.Instance.FindHeroIDCanAddCollectAttr(HeroUIManager.Instance.selectCollectHeroID); if (nextHeroID != 0) { //下一个 HeroUIManager.Instance.selectCollectHeroID = nextHeroID; Display(); } else { // SysNotifyMgr.Instance.ShowTip("HeroGift8"); CloseWindow(); } } } void SendPack(int type) { var pack = new CB237_tagCSHeroBookUP(); pack.BookType = (byte)type; pack.HeroID = (uint)HeroUIManager.Instance.selectCollectHeroID; GameNetSystem.Instance.SendInfo(pack); } }