public void RevcieCallBack(C2sSprotoType.achievement_reward_collect.response resp) { curCallBackView.receiveBtn.isEnabled = true; if (resp.errorcode == 1) { MainUI.Instance.GetItemClick(curCallBackView.data.data.rewarData); for (int i = 0; i < curCallBackView.data.data.rewarData.Count; i++) { BagMgr.Instance.AddItemNumById(curCallBackView.data.data.rewarData[i].data.id, curCallBackView.data.data.rewarData[i].curCount); } AchievementViewData view = new AchievementViewData(); AchievementData data = GameShared.Instance.GetAchievementData((int)resp.next.csv_id); view.curProgress = (int)resp.next.finished; view.data = data; if (view.data.condition != 0 && view.curProgress < 100) { view.data.curStar--; } view.sort = GetSort(view); view.isReceive = resp.next.reward_collected; view.isUnlock = resp.next.is_unlock; Unlock(curCallBackView, view); } curCallBackView = null; }
public void Revcie(AchievementView view) { AchievementViewData data = view.data; view.receiveBtn.isEnabled = false; NetworkManager.Instance.AchievementReceive(data.data.id); curCallBackView = view; }
public void InitData(AchievementViewData d, int i) { index = i; data = d; if (data.data != null) { SetStar(); SetReward(); SetInfo(); CheckReceive(); } data.view = this; }
public void RestData(AchievementViewData d) { float a = preCondition / d.data.condition; data.curProgress = (int)(a * 100.0f); data = d; if (data.data != null) { SetStar(); SetReward(); SetInfo(); CheckReceive(); } }
//vm public void Unlock(AchievementView v, AchievementViewData data) { //LuaFunction f = l.GetFunction("Unlock"); //f.Call(data); List <int> list = GameShared.Instance.GetStr(v.data.data.unlockId); for (int i = 0; i < list.Count; i++) { if (list[i] != 0) { AchievementView view = pop.GetViewByTyep(data.data.type); view.RestData(data); } } }
public void AddNewItem(AchievementViewData d) { GameObject row = Instantiate(itemPrefab); row.SetActive(true); row.transform.parent = grid.transform; row.transform.localScale = Vector3.one; row.transform.position = Vector3.zero; AchievementView view = row.GetComponent <AchievementView>(); view.InitData(d, viewList.Count); viewList.Add(view.data.data.type, view); grid.Reposition(); scroll.ResetPosition(); grid.repositionNow = true; }
public string GetSort(AchievementViewData d) { int r = 1; if (!d.isReceive) { r = 2; } int u = 1; if (!d.isUnlock) { u = 2; } return(r.ToString() + u + (d.data.id * 100).ToString()); }
//vm public void AchievementListCallBack(C2sSprotoType.achievement.response resp) { List <AchievementViewData> list = new List <AchievementViewData>(); List <int> listid = new List <int>(); Hashtable temp = new Hashtable(); for (int i = 0; i < resp.achis.Count; i++) { AchievementViewData view = new AchievementViewData(); AchievementData data = GameShared.Instance.GetAchievementData((int)resp.achis[i].csv_id); view.curProgress = (int)resp.achis[i].finished; view.data = data; if (view.data.condition != 0 && view.curProgress < 100) { view.data.curStar--; } view.isReceive = resp.achis[i].reward_collected; view.isUnlock = resp.achis[i].is_unlock; //if (view.data.unlockId.Equals("0")) //{ Debug.Log("is_unlock" + resp.achis[i].is_unlock + "reward_collected" + resp.achis[i].reward_collected + "csv_id" + resp.achis[i].csv_id + "resp.achis[i].finished" + resp.achis[i].finished); //} if (temp.Contains(data.type)) {//判断解锁未领取的最小id AchievementViewData d = temp[data.type] as AchievementViewData; //如果是最后一个就插入 if (view.isUnlock && view.isReceive == true && view.data.unlockId.Equals("0")) { if (view.data.id > d.data.id) { temp[data.type] = view; } } else //if(!d.data.unlockId.Equals("0"))//如果取得了最后一个就不去最小了 { if ((view.isUnlock && view.isReceive == false && view.data.id < d.data.id)) { temp[data.type] = view; } } } else { if (view.isUnlock && view.isReceive == false) { temp.Add(data.type, view); listid.Add(data.type); } if (view.isUnlock && view.isReceive == true && view.data.unlockId.Equals("0")) { temp.Add(data.type, view); listid.Add(data.type); } } } //筛选出解锁的 for (int i = 0; i < listid.Count; i++) { AchievementViewData d = temp[listid[i]] as AchievementViewData; if (d.isUnlock) { d.sort = GetSort(d); list.Add(d); } } //LuaFunction f = l.GetFunction("AchievementListCallBack"); //object[] obj = f.Call(list,resp); dataList = list; SetPopList(list); }