// public void ClickMaterialHandler(Transform material){ // int pos = combineMaterialRootTran.IndexOf(material)+1; // uint heroId = HeroCombineProxy.instance.GetHeroInstanceIDAt((CombinePosition)pos); // if(heroId != 0 ) // HeroCombineProxy.instance.RemoveHeroFromCombineMaterial(heroId); // } public void ClickHeroCombine() { if (CanClickEnable()) { return; } List <HeroInfo> materialList = HeroCombineProxy.instance.GetMaterialHeroInfoList(); List <int> materialIds = new List <int>(); int selectHeroNum = materialList.Count; if (selectHeroNum < 2) { ShowSingleTips("请放入两个以上材料"); return; } int money = text_coin.text.ToInt32(); int star = 0; int maxLevel = 0; int maxStrengthenLevel = 0; for (int i = 0, count = materialList.Count; i < count; i++) { HeroInfo info = materialList[i]; star = info.advanceLevel; if (info.level > maxLevel) { maxLevel = info.level; } if (info.strengthenLevel > maxStrengthenLevel) { maxStrengthenLevel = info.strengthenLevel; } materialIds.Add((int)info.instanceID); } HeroCombineNeedData needData = HeroCombineNeedData.GetHeroCombineNeedDataByStar(star); if (maxLevel < needData.level) { ShowSingleTips("使用的材料等级不足"); return; } int gold = 0; GameProxy.instance.BaseResourceDictionary.TryGetValue(BaseResType.Gold, out gold); if (gold < money) { ShowSingleTips("金币不足"); return; } if (maxStrengthenLevel > 1) { Debugger.Log("有英雄强化等级>1是否继续?"); } //Debugger.Log("穿的装备有4星以上,是否继续?"); Logic.Hero.Controller.HeroController.instance.CLIENT2LOBBY_HERO_COMPOSE_REQ(materialIds); }
private void RefreshNewHeroTips() { int _selectHeroNum = HeroCombineProxy.instance.CombineMaterialDictionary.Count; if (_selectHeroNum == 0) { text_star.gameObject.SetActive(false); text_not_choice.gameObject.SetActive(true); text_coin.text = "0"; } else { text_not_choice.gameObject.SetActive(false); text_star.gameObject.SetActive(true); text_star.text = string.Format(Localization.Get("ui.hero_combine_view.text_star"), GetStartString(_selectHeroStar + 1)); HeroCombineNeedData data = HeroCombineNeedData.GetHeroCombineNeedDataByStar(_selectHeroStar); text_star_rate_num.text = string.Format("{0}%", data.GetHeroCombineRate(_selectHeroNum)); HeroCombineNeedData needData = HeroCombineNeedData.GetHeroCombineNeedDataByStar(_selectHeroStar); text_coin.text = needData.gold.ToString(); text_choice_same_star.text = string.Format(Localization.Get("ui.hero_combine_view.text_choice_same_star"), GetStartString(_selectHeroStar)); } }