public void SetUpSkillLearningView(HLHNPC npc, CallBack quitCallBack) { this.currentNpc = npc; GameManager.Instance.soundManager.PlayAudioClip(CommonData.merchantAudioName); gameObject.SetActive(true); this.skillGoodsIds = npc.npcSkillIds; this.quitCallBack = quitCallBack; skillGoodsPool.AddChildInstancesToPool(skillGoodsContainer); for (int i = 0; i < skillGoodsIds.Count; i++) { SkillGoodsInTrade skillGoodsDetail = skillGoodsPool.GetInstance <SkillGoodsInTrade>(skillGoodsModel.gameObject, skillGoodsContainer); Skill skill = GameManager.Instance.gameDataCenter.allSkills.Find(delegate(Skill obj) { return(obj.skillId == skillGoodsIds[i]); }); skillGoodsDetail.SetupSkillDetailInNPC(skill, SkillGoodsSelectCallBack); skillGoodsDetail.SetUpSelectedIcon(false); allSkillGoods.Add(skillGoodsDetail); } skillNumLeftText.text = string.Format("剩余技能点: {0}", Player.mainPlayer.skillNumLeft); for (int i = 0; i < allLearnedSkillDetails.Length; i++) { SimpleSkillDetail learnedSkillDetail = allLearnedSkillDetails[i]; if (i < Player.mainPlayer.allLearnedSkills.Count) { Skill learnedSkill = Player.mainPlayer.allLearnedSkills[i]; learnedSkillDetail.SetUpSimpleSkillDetail(learnedSkill, LearnedSkillSelectCallBack); } else { learnedSkillDetail.ClearSimpleSkillDetail(); } learnedSkillDetail.SetUpSelectedIcon(false); } //skillDetailInTrade.InitskilldetailInTrade(UpdateLearnedSkillsPlane); skillDetailInTrade.ClearSkillDetailInTrade(); EnterSkillGoodsTradeViewDisplay(); }
/// <summary> /// 技能商品被选中的回调 /// </summary> /// <param name="skill">Skill.</param> private void SkillGoodsSelectCallBack(Skill skill) { for (int i = 0; i < skillGoodsIds.Count; i++) { SkillGoodsInTrade skillDetail = allSkillGoods[i]; skillDetail.SetUpSelectedIcon(skillGoodsIds[i] == skill.skillId); } currentSelectedSkill = skill; for (int i = 0; i < allLearnedSkillDetails.Length; i++) { allLearnedSkillDetails[i].SetUpSelectedIcon(false); } skillDetailInTrade.SetUpSkillDetailInTrade(skill); }