public void OnClickCellItem() { if (ItemLogic != null) { var e = new UIEvent_SkillFrame_SkillSelect(ItemLogic); EventDispatcher.Instance.DispatchEvent(e); } }
private void OnClick() { var item = itemLogic.Item as SkillItemDataModel; if (item != null && item.SkillId != -1) { var e = new UIEvent_SkillFrame_SkillSelect(item); EventDispatcher.Instance.DispatchEvent(e); } }
private IEnumerator SetupSkillTalent(SkillDataModel dataModel) { var holder = ResourceManager.PrepareResourceWithHolder <GameObject>(skillTalentPrefab[roleID]); yield return(holder.Wait()); var skillTalentFrame = Instantiate(holder.Resource) as GameObject; var t = skillTalentFrame.transform; //t.parent = SkillTalentRoot; t.SetParentEX(SkillTalentRoot); //touch.Initialize(t); var skillGuide = SkillTalentRoot.GetComponentsInChildren <SkillGuideHelper>(true); for (var i = 0; i < skillGuide.Length; i++) { skillGuide[i].Initialize(t); } t.localPosition = Vector3.zero; t.localRotation = Quaternion.identity; t.localScale = Vector3.one; if (!t.gameObject.activeSelf) { t.gameObject.SetActive(true); } var talentDic = new Dictionary <int, TalentCellDataModel>(); { // foreach(var talent in dataModel.Talents) var __enumerator2 = (dataModel.Talents).GetEnumerator(); while (__enumerator2.MoveNext()) { var talent = __enumerator2.Current; { talentDic.Add(talent.TalentId, talent); } } } var cacheDic = new Dictionary <int, List <TalentCellDataModel> >(); var skillCellLogicContainer = skillTalentFrame.GetComponentsInChildren <SkillTalentCell>(true); { var __array3 = skillCellLogicContainer; var __arrayLength3 = __array3.Length; for (var __i3 = 0; __i3 < __arrayLength3; ++__i3) { var logic = __array3[__i3]; { var talentEnable = false; TalentCellDataModel talentDataModel; if (talentDic.TryGetValue(logic.SkillTalentId, out talentDataModel)) { talentEnable = true; logic.CellDataModel = talentDataModel; } if (!talentEnable) { var talent = new TalentCellDataModel(); talent.TalentId = logic.SkillTalentId; talent.Count = 0; logic.CellDataModel = talent; var e = new UIEvent_SkillFrame_AddUnLearnedTalent(talent); EventDispatcher.Instance.DispatchEvent(e); } var talentTable = Table.GetTalent(logic.CellDataModel.TalentId); if (talentTable.ModifySkill != -1) { List <TalentCellDataModel> list; if (cacheDic.TryGetValue(talentTable.ModifySkill, out list)) { list.Add(logic.CellDataModel); } else { var l = new List <TalentCellDataModel>(); l.Add(logic.CellDataModel); cacheDic.Add(talentTable.ModifySkill, l); } } } } } var skillBoxContainer = skillTalentFrame.GetComponentsInChildren <SkillOutBox>(true); { dataModel.SkillBoxes.Clear(); var skillbox = skillBoxContainer; var length = skillbox.Length; var fristId = 0; for (var i = 0; i < length; ++i) { var skillBoxLogic = skillbox[i]; { var skillBox = new SkillBoxDataModel(); skillBox.SkillId = skillBoxLogic.SkillId; List <TalentCellDataModel> talentList; if (cacheDic.TryGetValue(skillBox.SkillId, out talentList)) { { var __list5 = talentList; var __listCount5 = __list5.Count; for (var __i5 = 0; __i5 < __listCount5; ++__i5) { var cellDataModel = __list5[__i5]; { skillBox.SkillTalents.Add(cellDataModel); } } } } skillBox.ShowSkillBox = 0; skillBoxLogic.BoxDataModel = skillBox; var e = new UIEvent_SkillFrame_AddSkillBoxDataModel(skillBox); EventDispatcher.Instance.DispatchEvent(e); if (i == 0) { fristId = skillBox.SkillId; } } } // EventDispatcher.Instance.DispatchEvent( // new UIEvent_SkillFrame_OnSkillTalentSelected(fristId)); var skilldata = PlayerDataManager.Instance.mAllSkills; var ievent = new UIEvent_SkillFrame_SkillSelect(skilldata[fristId]); EventDispatcher.Instance.DispatchEvent(ievent); } //天赋球数据好了初始化开放和已加点特效 var c = skillCellLogicContainer.Length; for (var i = 0; i < c; i++) { var logic = skillCellLogicContainer[i]; logic.InitEffect(); } initFinish = true; }