/** 这里只用于判断是否激活新英雄之章的判断 */ public bool isActiveHeroRoad(Card c) { if (c == null) { return(false); } int type = c.getEvolveNextSid(); if (type > 0) { HeroRoad obj = null; if (map.ContainsKey(type)) { obj = map[type]; if (obj.activeCount < obj.sample.getMissionCount()) { return(true); } } else { return(true); } } return(false); }
//解析ErlKVMessgae public void parseKVMsg(ErlKVMessage message) { HeroRoadManagerment.Instance.map.Clear(); ErlArray array = message.getValue("msg") as ErlArray; if (array != null) { ErlType[] values = array.Value; ErlArray a, b; int sid, active, conquest; HeroRoad obj; for (int i = 0; i < values.Length; i++) { a = values [i] as ErlArray; sid = StringKit.toInt(a.Value [0].getValueString()); b = a.Value [1] as ErlArray; active = StringKit.toInt(b.Value [0].getValueString()); conquest = StringKit.toInt(b.Value [1].getValueString()); obj = new HeroRoad(); obj.sample = HeroRoadSampleManager.Instance.getSampleBySid(sid); obj.activeCount = active; obj.conquestCount = conquest; HeroRoadManagerment.Instance.map.Add(sid, obj); } } }
public void init(HeroRoad heroRoad) { this.heroRoad = heroRoad; ChapterSample cs = ChapterSampleManager.Instance.getChapterSampleBySid(heroRoad.sample.chapter); int missionSid = cs.missions [Mathf.Min(heroRoad.conquestCount, cs.missions.Length - 1)]; mission = MissionSampleManager.Instance.getMissionSampleBySid(missionSid); lblName.text = string.Format(LanguageConfigManager.Instance.getLanguage("s0389"), heroRoad.activeCount, heroRoad.sample.getMissionCount(), Mathf.Min(heroRoad.conquestCount + 1, heroRoad.sample.getMissionCount())); roleView.LockOnClick = false; int bossID = mission.bossSid; CardSample cardSample = CardSampleManager.Instance.getRoleSampleBySid(bossID); cardSample.level = StringKit.toInt(mission.other[2]); roleView.init(cardSample, window, null); HeroRoad.State state = heroRoad.getState(); if (state == HeroRoad.State.COMPLETED) { buttonFight.GetComponent <BoxCollider> ().enabled = false; buttonFight.transform.FindChild("Label").GetComponent <UILabel> ().color = Color.gray; } else if (state == HeroRoad.State.WAIT) { //TODO } UpdateAward(); }
public void initHeroRoad(int honorGap, int rmbGap) { this.honorGap = honorGap; this.rmbGap = rmbGap; honorValue.text = honorGap.ToString(); rushMoneyValue.text = rmbGap.ToString(); HeroRoadManagerment.Instance.currentHeroRoad.conquestCount++; HeroRoad road = HeroRoadManagerment.Instance.currentHeroRoad; Card card = CardManagerment.Instance.createCard(road.sample.sid); ResourcesManager.Instance.LoadAssetBundleTexture(ResourcesManager.CARDIMAGEPATH + card.getImageID(), roadRoleTexture); chapterLabel.text = LanguageConfigManager.Instance.getLanguage("prefabzc16", road.conquestCount.ToString()); //string.Format (chapterLabel.text, road.conquestCount); roadRoleQuality.spriteName = QualityManagerment.qualityIDToString(card.getQualityId()) + "Bg"; NextSetp(); }
void UpdateTalent() { Utils.DestoryChilds(roadItemRoot); HeroRoad heroRoad = heroRoadItem.heroRoad; MissionSample[] missions = heroRoad.getMissionsByChapter(); if (missions == null) { return; } EvolutionSample sample = EvolutionManagerment.Instance.getEvoInfoByType(heroRoad.sample.sid); if (sample == null) { return; } int[] awakeInfo = heroRoad.getAwakeInfo(); for (int i = 0, j = 0; i < awakeInfo.Length; i++) { if (awakeInfo [i] == -1) { continue; } int state = awakeInfo [i]; GameObject talentitemObj = Instantiate(talentitem) as GameObject; CardAttrTalentItem talentItem = talentitemObj.GetComponent <CardAttrTalentItem>(); talentItem.text2.text = missions[i].other[3]; talentItem.gameObject.SetActive(true); talentItem.transform.parent = roadItemRoot.transform; talentItem.transform.localPosition = new Vector3(0, -115 + (j * -100), 0); talentItem.transform.localScale = new Vector3(0.8f, 0.8f, 1); if (heroRoad.activeCount < (i + 1)) { talentItem.text2.color = Color.gray; } else { talentItem.text2.color = Color.white; } talentItem.text1.gameObject.SetActive(true); talentItem.text1.text = string.Format(LanguageConfigManager.Instance.getLanguage("s0445"), i + 1, getTalentNeedTimes(sample, j)); j++; } }
/** 获取当前卡片已激活天赋前置次数 */ public int getOpenTalentNum(Card card) { int num = 0; if (HeroRoadManagerment.Instance.isHaveBySid(card.getEvolveNextSid())) { HeroRoad heroRoad = HeroRoadManagerment.Instance.map [card.getEvolveNextSid()]; int[] awakeInfo = heroRoad.getAwakeInfo(); for (int i = 0; i < awakeInfo.Length; i++) { if (awakeInfo [i] == 1) { num++; } } return(num); } else { return(num); } }
/** 不能随便调用,因为判断成功的同时,就等于激活了新的英雄之章 */ public bool activeHeroRoadIfNeed(Card c) { if (c == null) { return(false); } // Debug.LogError("c.getQualityId()" + c.getQualityId()); if (c.getQualityId() == 6) { return(false); } int type = c.getEvolveNextSid(); if (type > 0) { HeroRoad obj = null; if (map.ContainsKey(type)) { obj = map[type]; if (obj.activeCount < obj.sample.getMissionCount()) { obj.activeCount++; return(true); } } else { obj = new HeroRoad(); obj.sample = HeroRoadSampleManager.Instance.getSampleBySid(type); obj.activeCount = 1; map.Add(type, obj); return(true); } } return(false); }
public HeroRoad currentHeroRoad; //正在进行的英雄之章 public void clean() { currentHeroRoad = null; }