public static long GetDropNum(int ruleId, int level, ref int itemId) { List <DiaoLuo> dropsByRuleId = DropUtil.GetDropsByRuleId(ruleId); if (dropsByRuleId.get_Count() == 0) { return(0L); } DiaoLuo diaoLuo = dropsByRuleId.get_Item(0); if (diaoLuo.dropType == 1) { return(0L); } if (diaoLuo.dropType == 2) { int groupId = diaoLuo.goodsId; List <Zu> list = DataReader <Zu> .DataList.FindAll((Zu a) => a.groupId == groupId); for (int i = 0; i < list.get_Count(); i++) { if (level >= list.get_Item(i).minLv&& level <= list.get_Item(i).maxLv) { itemId = list.get_Item(i).itemId; return(list.get_Item(i).Num); } } } return(0L); }
public XDict <int, long> GetRewardItems(int id) { XDict <int, long> xDict = new XDict <int, long>(); List <DiaoLuo> dropsByRuleId = DropUtil.GetDropsByRuleId(id); if (dropsByRuleId == null || dropsByRuleId.get_Count() <= 0) { return(xDict); } for (int i = 0; i < dropsByRuleId.get_Count(); i++) { DiaoLuo dataDropCfg = dropsByRuleId.get_Item(i); int id2 = dataDropCfg.id; if (!xDict.ContainsKey(dataDropCfg.goodsId)) { if (dataDropCfg.dropType == 1) { xDict.Add(dataDropCfg.goodsId, dataDropCfg.maxNum); } else if (dataDropCfg.dropType == 2) { int carrer = EntityWorld.Instance.EntSelf.TypeID; Zu zu = DataReader <Zu> .DataList.Find((Zu a) => a.groupId == dataDropCfg.goodsId && a.profession == carrer); if (zu != null) { xDict.Add(zu.itemId, dataDropCfg.maxNum); } } } } return(xDict); }
public void SetShowItem(int itemId, Action callback) { Items config = DataReader <Items> .Get(itemId); if (config == null) { BoxBuyUI.Instance.Show(false); return; } this.m_TitleName.set_text(string.Format(GameDataUtils.GetChineseContent(508035, false), GameDataUtils.GetChineseContent(config.name, false))); this.m_BoxInfo.set_text(GameDataUtils.GetChineseContent(config.describeId1, false)); for (int i = 0; i < this.m_ScrollviewList.get_childCount(); i++) { Object.Destroy(this.m_ScrollviewList.GetChild(i).get_gameObject()); } if (config.effectId > 0) { List <DiaoLuo> list = DataReader <DiaoLuo> .DataList.FindAll((DiaoLuo a) => a.ruleId == config.effectId); if (list != null && list.get_Count() > 0) { for (int j = 0; j < list.get_Count(); j++) { DiaoLuo diaoLuo = list.get_Item(j); if (diaoLuo.dropType == 1) { ItemShow.ShowItem(this.m_ScrollviewList, diaoLuo.goodsId, diaoLuo.minNum, false, UINodesManager.T2RootOfSpecial, 2001); } } } } this.CallBack = callback; }
public long GetBatchExp(int batch) { if (batch > 0) { FJingYanFuBenBoCi data = DataReader <FJingYanFuBenBoCi> .Get(batch); if (data != null) { DiaoLuo diaoLuo = Enumerable.FirstOrDefault <DiaoLuo>(DataReader <DiaoLuo> .DataList, (DiaoLuo t) => t.ruleId == data.rewardId && t.minLv == EntityWorld.Instance.EntSelf.Lv); if (diaoLuo != null) { return(diaoLuo.minNum); } } } return(0L); }
private void OnClickSeeReward(GameObject go) { if (this.guildBossCfgData == null) { return; } List <int> list = new List <int>(); List <long> list2 = new List <long>(); if (this.rewardList == null) { this.rewardList = new List <KeyValuePair <int, long> >(); int rewardDropID = this.guildBossCfgData.rewardShow; List <DiaoLuo> list3 = DataReader <DiaoLuo> .DataList.FindAll((DiaoLuo a) => a.ruleId == rewardDropID); if (list3 == null) { return; } for (int i = 0; i < list3.get_Count(); i++) { DiaoLuo diaoLuo = list3.get_Item(i); if (diaoLuo.dropType == 1) { list.Add(diaoLuo.goodsId); list2.Add(diaoLuo.minNum); this.rewardList.Add(new KeyValuePair <int, long>(diaoLuo.goodsId, diaoLuo.minNum)); } } } else { for (int j = 0; j < this.rewardList.get_Count(); j++) { list.Add(this.rewardList.get_Item(j).get_Key()); list2.Add(this.rewardList.get_Item(j).get_Value()); } } if (list.get_Count() > 0) { RewardUI rewardUI = LinkNavigationManager.OpenRewardUI(UINodesManager.MiddleUIRoot); rewardUI.get_transform().SetAsLastSibling(); rewardUI.SetRewardItem(GameDataUtils.GetChineseContent(513163, false), list, list2, true, true, null, null); } }
private void CreateReward(int rewardId) { for (int i = 0; i < this.mSpecialRewards.get_childCount(); i++) { Object.Destroy(this.mSpecialRewards.GetChild(i).get_gameObject()); } List <DiaoLuo> dataList = DataReader <DiaoLuo> .DataList; for (int j = 0; j < dataList.get_Count(); j++) { DiaoLuo diaoLuo = dataList.get_Item(j); if (diaoLuo.ruleId == rewardId && diaoLuo.dropType == 1) { GameObject gameObject = ItemShow.ShowItem(this.mSpecialRewards, diaoLuo.goodsId, diaoLuo.minNum, false, null, 2001); gameObject.get_transform().set_localScale(new Vector3(0.5f, 0.5f, 1f)); } } }
public void GetTaskRewards(ref XDict <int, long> rewards, bool justRes = false) { rewards.Clear(); for (int i = 0; i < this.Data.reward.get_Count(); i++) { if (!justRes || this.Data.reward.get_Item(i).key <= 100) { rewards.Add(this.Data.reward.get_Item(i).key, this.Data.reward.get_Item(i).value *(long)this.Task.ratio); } } List <DiaoLuo> dataList = DataReader <DiaoLuo> .DataList; int lv = EntityWorld.Instance.EntSelf.Lv; for (int j = 0; j < this.Data.rewardId.get_Count(); j++) { int num = this.Data.rewardId.get_Item(j); for (int k = 0; k < dataList.get_Count(); k++) { DiaoLuo diaoLuo = dataList.get_Item(k); if (diaoLuo.ruleId == num) { if (!justRes || diaoLuo.goodsId <= 100) { if (diaoLuo.minLv == diaoLuo.maxLv && diaoLuo.minLv == 0) { rewards.Add(diaoLuo.goodsId, diaoLuo.minNum * (long)this.Task.ratio); } else if (diaoLuo.minLv == diaoLuo.maxLv && lv == diaoLuo.minLv) { rewards.Add(diaoLuo.goodsId, diaoLuo.minNum * (long)this.Task.ratio); } else if (diaoLuo.minLv < diaoLuo.maxLv && lv >= diaoLuo.minLv && lv < diaoLuo.maxLv) { rewards.Add(diaoLuo.goodsId, diaoLuo.minNum * (long)this.Task.ratio); } } } } } }
private void CreateDropRewards(List <DiaoLuo> diaoluos, int dropId) { int lv = EntityWorld.Instance.EntSelf.Lv; for (int i = 0; i < diaoluos.get_Count(); i++) { DiaoLuo diaoLuo = diaoluos.get_Item(i); if (diaoLuo.ruleId == dropId) { if (diaoLuo.minLv == diaoLuo.maxLv && diaoLuo.minLv == 0) { this.CreateRewards(diaoLuo.goodsId, diaoLuo.minNum); } else if (diaoLuo.minLv == diaoLuo.maxLv && lv == diaoLuo.minLv) { this.CreateRewards(diaoLuo.goodsId, diaoLuo.minNum); } else if (diaoLuo.minLv < diaoLuo.maxLv && lv >= diaoLuo.minLv && lv < diaoLuo.maxLv) { this.CreateRewards(diaoLuo.goodsId, diaoLuo.minNum); } } } }
private void FindDropReward(List <DiaoLuo> diaoluos, int dropId, XDict <int, long> rewards) { int lv = EntityWorld.Instance.EntSelf.Lv; for (int i = 0; i < diaoluos.get_Count(); i++) { DiaoLuo diaoLuo = diaoluos.get_Item(i); if (diaoLuo.ruleId == dropId) { if (diaoLuo.minLv == diaoLuo.maxLv && diaoLuo.minLv == 0) { rewards.Add(diaoLuo.goodsId, diaoLuo.minNum); } else if (diaoLuo.minLv == diaoLuo.maxLv && lv == diaoLuo.minLv) { rewards.Add(diaoLuo.goodsId, diaoLuo.minNum); } else if (diaoLuo.minLv < diaoLuo.maxLv && lv >= diaoLuo.minLv && lv < diaoLuo.maxLv) { rewards.Add(diaoLuo.goodsId, diaoLuo.minNum); } } } }
private void CreateReward(DiaoLuo data) { this.mCurRewardCount++; if (this.mCurRewardCount > 2) { return; } Items item = BackpackManager.Instance.GetItem((data.goodsId != 3001) ? data.goodsId : 2010); if (item == null) { return; } GameObject gameObject = this.CreateRewardItem(); gameObject.set_name(data.goodsId.ToString()); Image image = UIHelper.GetImage(gameObject.get_transform(), "Image"); if (this.HaveIconId(data.goodsId)) { image.get_rectTransform().set_sizeDelta(new Vector2(50f, 50f)); } else { image.get_rectTransform().set_sizeDelta(new Vector2(40f, 40f)); } ResourceManager.SetSprite(image, GameDataUtils.GetIcon((item.id >= 5) ? item.icon : item.littleIcon)); string text = Utils.SwitchChineseNumber((long)this.mTask.canFindTimes * data.minNum, 1); if (item.id == 1) { text += "+"; } UIHelper.GetText(gameObject.get_transform(), "Text").set_text(text); gameObject.SetActive(true); }
private void FindDropReward(List <DiaoLuo> diaoluos, int dropId) { int lv = EntityWorld.Instance.EntSelf.Lv; for (int i = 0; i < diaoluos.get_Count(); i++) { DiaoLuo diaoLuo = diaoluos.get_Item(i); if (diaoLuo.ruleId == dropId) { if (diaoLuo.minLv == diaoLuo.maxLv && diaoLuo.minLv == 0) { this.mFindReward.Add(diaoLuo); } else if (diaoLuo.minLv == diaoLuo.maxLv && lv == diaoLuo.minLv) { this.mFindReward.Add(diaoLuo); } else if (diaoLuo.minLv < diaoLuo.maxLv && lv >= diaoLuo.minLv && lv < diaoLuo.maxLv) { this.mFindReward.Add(diaoLuo); } } } }
public void SetShowItem(int itemId, Action callback = null) { this.CallBack = callback; Items config = DataReader <Items> .Get(itemId); if (config == null) { PayTreasureUI.Instance.Show(false); return; } this.m_TitleName.set_text(GameDataUtils.GetChineseContent(config.name, false)); for (int i = 0; i < this.m_ScrollviewList.get_childCount(); i++) { Object.Destroy(this.m_ScrollviewList.GetChild(i).get_gameObject()); } if (config.effectId > 0) { List <DiaoLuo> list = DataReader <DiaoLuo> .DataList.FindAll((DiaoLuo a) => a.ruleId == config.effectId); if (list != null && list.get_Count() > 0) { for (int j = 0; j < list.get_Count(); j++) { DiaoLuo diaoLuo = list.get_Item(j); if (diaoLuo.dropType == 1) { ItemShow.ShowItem(this.m_ScrollviewList, diaoLuo.goodsId, diaoLuo.minNum, false, UINodesManager.T2RootOfSpecial, 2001); } } } } string text = string.Empty; if (config.originalPrice.get_Count() > 0) { this.m_OriginalPrice.SetActive(true); Items.OriginalpricePair originalpricePair = config.originalPrice.get_Item(0); int key = originalpricePair.key; ResourceManager.SetSprite(this.m_OriginalIcon, GameDataUtils.GetItemLitterIcon(key)); this.m_OriginalNum.set_text(originalpricePair.value); text = originalpricePair.value; } else { this.m_OriginalPrice.SetActive(false); } if (config.discountedPrice.get_Count() > 0) { this.m_DiscountedPrice.SetActive(true); Items.DiscountedpricePair discountedpricePair = config.discountedPrice.get_Item(0); int key2 = discountedpricePair.key; ResourceManager.SetSprite(this.m_DiscountedIcon, GameDataUtils.GetItemLitterIcon(key2)); this.m_DiscountedNum.set_text(discountedpricePair.value); text = discountedpricePair.value; } else { this.m_DiscountedPrice.SetActive(false); } this.m_BoxInfo.set_text(string.Format(GameDataUtils.GetChineseContent(517003, false), text)); }
private void SetFindData(MZhaoHui findData, bool isGoldBuy) { if (findData == null) { return; } this.SetTypeVisable(false, this.mTask.canFindTimes <= 0); this.ClearRewardItem(); List <int> list; if (isGoldBuy) { list = findData.goldReward; this.mTxPrice.set_text(Utils.SwitchChineseNumber((long)this.GoldPrice, 0)); ResourceManager.SetSprite(this.mImgPrice, ResourceManager.GetIconSprite("nav_icon_gold")); } else { list = findData.diamondReward; this.mTxPrice.set_text(Utils.SwitchChineseNumber((long)this.DiamondPrice, 0)); ResourceManager.SetSprite(this.mImgPrice, ResourceManager.GetIconSprite("nav_icon_diamond")); } List <DiaoLuo> dataList = DataReader <DiaoLuo> .DataList; int lv = EntityWorld.Instance.EntSelf.Lv; if (this.mFindReward == null) { this.mFindReward = new List <DiaoLuo>(); } else { this.mFindReward.Clear(); } for (int i = 0; i < list.get_Count(); i++) { int num = list.get_Item(i); for (int j = 0; j < dataList.get_Count(); j++) { DiaoLuo diaoLuo = dataList.get_Item(j); if (diaoLuo.ruleId == num) { if (diaoLuo.minLv == diaoLuo.maxLv && diaoLuo.minLv == 0) { this.mFindReward.Add(diaoLuo); } else if (diaoLuo.minLv == diaoLuo.maxLv && lv == diaoLuo.minLv) { this.mFindReward.Add(diaoLuo); } else if (diaoLuo.minLv < diaoLuo.maxLv && lv >= diaoLuo.minLv && lv < diaoLuo.maxLv) { this.mFindReward.Add(diaoLuo); } } } } for (int k = 0; k < this.mFindReward.get_Count(); k++) { if (this.mFindReward.get_Count() < 3 || this.mFindReward.get_Item(k).goodsId != 1) { this.CreateReward(this.mFindReward.get_Item(k)); } } this.mTxDesc.set_text(string.Format(GameDataUtils.GetChineseContent(301037, false), this.mTask.canFindTimes)); this.mGoGoto.SetActive(this.mTask.canFindTimes > 0); }