public void SetHp(string heroId, bool isShowTempHp) { //float fullHp = 0; int level = 0; int peak = 0; float percent = 0; if (int.Parse(heroId) < 0)//是否雇佣 { var hireInfo = LTInstanceHireUtil.GetHireInfoByHeroId(int.Parse(heroId)); if (hireInfo != null) { float fullHp = hireInfo.base_MaxHP; float curHp = 0; if (isShowTempHp) { curHp = LTHotfixManager.GetManager <SceneManager>().GetChallengeTempHp(heroId); } else { curHp = LTChallengeInstanceHpCtrl.GetCombatHp(heroId); } percent = curHp / fullHp; level = hireInfo.level; } } else { if (isShowTempHp) { float curHp = LTHotfixManager.GetManager <SceneManager>().GetChallengeTempHp(heroId); float fullHp = 0; DataLookupsCache.Instance.SearchDataByID <float>(string.Format("userCampaignStatus.challengeChapters.team.{0}.MHP", heroId), out fullHp); percent = curHp / fullHp; } else { percent = LTChallengeInstanceHpCtrl.GetCombatHPPercent(heroId); } DataLookupsCache.Instance.SearchIntByID(string.Format("heroStats.{0}.stat.level", heroId), out level); DataLookupsCache.Instance.SearchIntByID(string.Format("heroStats.{0}.proficiency.1.1", heroId), out peak); } percent = Mathf.Min(percent, 1); PercentLabel.text = percent.ToString("0%"); HpProgress.value = percent; DeathLabel.gameObject.SetActive(percent <= 0); PercentLabel.gameObject.SetActive(percent > 0); LTUIUtil.SetLevelText(LevelLabel.transform.parent.GetComponent <UISprite>(), LevelLabel, level + peak); }
private void SetColor(string heroId, bool isShowTempHp) { float hp = 0; if (isShowTempHp) { hp = LTHotfixManager.GetManager <SceneManager>().GetChallengeTempHp(heroId); } else { hp = LTChallengeInstanceHpCtrl.GetCombatHp(heroId); } if (hp <= 0) { Icon.color = GreyColor; QuantityLevelSprite.color = GreyColor; QuantityBGSprite.color = Color.gray; AttrSprite.color = GreyColor; HpSet.LevelLabel.transform.parent.GetComponent <UISprite>().color = GreyColor; for (int i = 0; i < StarList.Length; i++) { StarList[i].GetComponent <UISprite>().color = GreyColor; } } else { Icon.color = WhiteColor; QuantityLevelSprite.color = WhiteColor; //QuantityBGSprite.color = WhiteColor; AttrSprite.color = WhiteColor; HpSet.LevelLabel.transform.parent.GetComponent <UISprite>().color = WhiteColor; for (int i = 0; i < StarList.Length; i++) { StarList[i].GetComponent <UISprite>().color = WhiteColor; } } }