List <NetData._PartnerData> GetSortPartnerList() { List <NetData._PartnerData> parList = CharInven.GetPartnerList(); List <NetData._PartnerData> tempList = null; PartnerClassType type = (PartnerClassType)CurPartnerTabArr; if (type != PartnerClassType.None) { tempList = new List <NetData._PartnerData>(); for (int i = 0; i < parList.Count; i++) { Partner.PartnerDataInfo info = parList[i].GetLowData(); if ((PartnerClassType)info.Class != type) { continue; } tempList.Add(parList[i]); } OwnPartnerView.CurTabPartnerList = tempList; //return tempList; } else { OwnPartnerView.CurTabPartnerList = parList; //return parList; } //Debug.Log("소팅전"); //for(int i=0;i< OwnPartnerView.CurTabPartnerList.Count;i++) //{ // Debug.Log(string.Format("idx : {0} isOwn :{1} nedd {2} nox {3}", OwnPartnerView.CurTabPartnerList[i]._partnerDataIndex, // OwnPartnerView.CurTabPartnerList[i]._isOwn, OwnPartnerView.CurTabPartnerList[i]._needShard, OwnPartnerView.CurTabPartnerList[i].NowShard)); //} OwnPartnerView.CurTabPartnerList.Sort(SortPartnerList); //Debug.Log("소팅후"); //for (int i = 0; i < OwnPartnerView.CurTabPartnerList.Count; i++) //{ // Debug.Log(string.Format("idx : {0} isOwn :{1} nedd {2} nox {3}", OwnPartnerView.CurTabPartnerList[i]._partnerDataIndex, // OwnPartnerView.CurTabPartnerList[i]._isOwn, OwnPartnerView.CurTabPartnerList[i]._needShard, OwnPartnerView.CurTabPartnerList[i].NowShard)); //} return(OwnPartnerView.CurTabPartnerList); }
/// <summary> /// Partner를 셋팅 및 보여준다. /// </summary> /// <param name="type">PartnerType으로 타입에 맞게 보여줌</param> int OnTabPartnerList(int typeIdx) { PartnerClassType type = (PartnerClassType)typeIdx; int gridSlotCount = 0; bool isTuto = SceneManager.instance.CurTutorial == TutorialType.PARTNER; List <NetData._PartnerData> dataList = CharInven.GetPartnerList(); int loopCount = dataList.Count; for (int i = 0; i < loopCount; i++) { ListGridTf.GetChild(i).gameObject.SetActive(false); NetData._PartnerData data = dataList[i]; Partner.PartnerDataInfo info = data.GetLowData(); if (type != PartnerClassType.None && (PartnerClassType)info.Class != type) { continue; } Transform slotTf = ListGridTf.GetChild(gridSlotCount); slotTf.gameObject.SetActive(true); slotTf.FindChild("Mark").GetComponent <UISprite>().spriteName = data.GetClassType(); //보유조각수 slotTf.FindChild("Txt_count").GetComponent <UILabel>().text = string.Format(_LowDataMgr.instance.GetStringCommon(1154), data.NowShard, data._needShard); UISprite face = slotTf.FindChild("Itemroot/face").GetComponent <UISprite>(); UISprite bg = slotTf.FindChild("Itemroot/gradebg").GetComponent <UISprite>(); face.spriteName = data.GetIcon(); slotTf.FindChild("Txt_name").GetComponent <UILabel>().text = data.GetLocName(); UILabel level = slotTf.FindChild("Txt_class").GetComponent <UILabel>(); //등급은 색상도 고려해줘.. UILabel gradeLabel = slotTf.FindChild("Txt_type").GetComponent <UILabel>(); slotTf.FindChild("Itemroot/grade").GetComponent <UISprite>().spriteName = string.Format("Icon_0{0}", data.CurQuality); bg.spriteName = string.Format("Icon_bg_0{0}", data.CurQuality); Transform btnGetTf = slotTf.FindChild("Btn_Get"); //소환버튼 GameObject btnGetAfter = slotTf.FindChild("Btn_Getafter").gameObject; //보유중일때나옴 btnGetAfter.SetActive(data._isOwn); btnGetTf.gameObject.SetActive(!data._isOwn); slotTf.FindChild("bg_on").gameObject.SetActive(data._isOwn);//배경 if (data._isOwn) { EventDelegate.Set(btnGetAfter.GetComponent <UIEventTrigger>().onClick, delegate() { UIMgr.instance.AddPopup(141, 1177, 117); //보유중알림메시지 }); if (data._NowLevel >= data._MaxLevel)//최대렙 { level.text = string.Format(_LowDataMgr.instance.GetStringCommon(1152), data._NowLevel); } else { level.text = string.Format(_LowDataMgr.instance.GetStringCommon(1151), data._NowLevel); } //색상도고려 gradeLabel.text = string.Format("{0}{1}[-]", UIHelper.GetItemGradeColor((int)data.CurQuality), data.GetGradeName()); } else { if (isTuto && type == PartnerClassType.Attack && data.NowShard >= data._needShard) { isTuto = false; TutorialSupport support = btnGetTf.gameObject.AddComponent <TutorialSupport>(); support.TutoType = TutorialType.PARTNER; support.SortId = 3; support.IsScroll = true; //support.NextTuto = OwnPartnerView.TabBtn[1].gameObject.GetComponent<TutorialSupport>(); support.OnTutoSupportStart(); } btnGetTf.FindChild("Btn_on").gameObject.SetActive(data.NowShard >= data._needShard); btnGetTf.FindChild("Btn_off").gameObject.SetActive(data.NowShard < data._needShard); level.text = ""; gradeLabel.text = _LowDataMgr.instance.GetStringCommon(1155); //없으면 미보유 EventDelegate.Set(btnGetTf.GetComponent <UIEventTrigger>().onClick, delegate() { OnClickPartnerGet(data._partnerDataIndex); }); //소환 } //슬롯 클릭시 실행할 함수 셋팅 EventDelegate.Set(slotTf.GetComponent <UIEventTrigger>().onClick, delegate() { OnClickListSlot(data._partnerDataIndex); }); ++gridSlotCount; } ListGridTf.GetComponent <UIGrid>().repositionNow = true; return(gridSlotCount); }