public IEnumerator Init() { SingleSkillInfoList = new SingleSkillInfoList(); if (m_createInstance) { m_createInstance = false; m_skillListInstance = NGUITools.AddChild(gameObject, Prefab_SkillList); m_skillListInstance.transform.localPosition = Prefab_SkillList.transform.localPosition; SkillList = m_skillListInstance.GetComponent <SkillListBehaviour>(); m_skillAssemblyInstance = NGUITools.AddChild(gameObject, Prefab_AssemblySkill); m_skillAssemblyInstance.transform.localPosition = Prefab_AssemblySkill.transform.localPosition; AssemblySkill = m_skillAssemblyInstance.GetComponent <AssemblySkillPanel>(); m_viewSkillInstance = NGUITools.AddChild(gameObject, Prefab_ViewSkill); m_viewSkillInstance.transform.localPosition = Prefab_ViewSkill.transform.localPosition; ViewSkill = m_viewSkillInstance.GetComponent <ViewSkillPanel>(); SkillList.OnItemClick = (skillItem) => { //通知ViewSkillPanel更新 //通知AssemblySkillPanel待装备处理 ViewSkill.InitViewInfo(skillItem.ItemFielInfo); AssemblySkill.SkillInListBeSelected(skillItem); }; AssemblySkill.EquipItemClickAct = (skillsItem, index) => { if (SkillList.CurrentSelectedItem != null) //技能列表栏有选中技能的处理 { if (SkillList.CurrentSelectedItem.ItemFielInfo != skillsItem.ItemFielInfo) { //提交装备请求 SetSkillEquipInfoToSever(skillsItem.ItemFielInfo, SkillList.CurrentSelectedItem.ItemFielInfo, index); } else { SkillList.CurrentSelectedItem = null; SkillList.FocusSkillItem(skillsItem.ItemFielInfo); } } else //技能列表栏没有选中技能的处理 { if (skillsItem.ItemFielInfo != null) { ViewSkill.InitViewInfo(skillsItem.ItemFielInfo); SkillList.FocusSkillItem(skillsItem.ItemFielInfo); AssemblySkill.SkillInListBeSelected(skillsItem); } } }; ViewSkill.SkillUpgradeAct = (skillInfo) => { NetServiceManager.Instance.EntityService.SendSkillUpgrade((byte)skillInfo.localSkillData.m_skillId); }; } yield return(null); AssemblySkill.Init(SingleSkillInfoList.EquipSkillsList); SkillList.Init(SingleSkillInfoList); }
//void OnGUI() //{ // if (GUILayout.Button("EnablePvp")) // { // ShowAtkInfo(); // } //} //int i = 1; ///// <summary> ///// 显示战力信息 ///// </summary> void InitSkillData() { var playerLv = PlayerManager.Instance.FindHeroDataModel().UnitValues.sMsgPropCreateEntity_SC_UnitVisibleValue.UNIT_FIELD_LEVEL; if (playerLv <= CommonDefineManager.Instance.CommonDefine.SkillTipsStartLevel) //当玩家等级小于指定等级,不弹出新技能面板 { return; } m_playerSkillList = new SingleSkillInfoList(); foreach (SingleSkillInfo item in m_playerSkillList.singleSkillInfoList) { if (!item.Lock) { m_curUnlockList.Add(item); } } foreach (SingleSkillInfo item in m_playerSkillList.EquipSkillsList) { if (item != null) { m_curEquipList.Add(item); } } NewSkillTipsCheck(); }
private void ResetSkillPanel() { if (m_upgradePanel != null) { m_upgradePanel.ResetUpgradePanel(); } ShowAssemblySkillBtn(null); m_playerSkillList = new SingleSkillInfoList(); ItemPagerManager.InitPager(m_playerSkillList.singleSkillInfoList.Count); }
/// <summary> /// 1、记下选择装备 /// 2、从背包数据中取出装备数据,进行排序 /// 3、遍历装备数据集,实例化SingleEquipDragPanel预设件,把装备数据传入预设件实例处理 /// 4、选中之前记下的装备项 /// </summary> public void InitSkillList() { m_playerSkillList = new SingleSkillInfoList(); //m_assemblyPanel.GetComponent<AssemblySkillPanel>().InitSkillEquip(m_playerSkillList.EquipSkillsList); //foreach (var item in m_playerSkillList.singleSkillInfoList) //{ // m_playSkillGo.AddSkillBase(item.localSkillData.m_skillId); //} ItemPagerManager.InitPager(m_playerSkillList.singleSkillInfoList.Count); }
public void Init(SingleSkillInfoList singleSkillInfoList) { StartCoroutine(RefreshItem(singleSkillInfoList)); }
private IEnumerator RefreshItem(SingleSkillInfoList singleSkillInfoList) { m_singleSkillInfoList = singleSkillInfoList; Layout.transform.ClearChild(); var playerSkillList = m_singleSkillInfoList.singleSkillInfoList;// .CanUpdateSkillInfos; List <UIGrid> dragUnitGrid = new List <UIGrid>(); GameObject dragUnit = null; GameObject skillItem; UIGrid dragUnitLayout = null; m_skillsItems.Clear(); int columnAmount = Mathf.CeilToInt(playerSkillList.Count / 3.0f); m_shouldMove = playerSkillList.Count > 9; int j = 0; for (int i = 0; i < playerSkillList.Count; i++) { if (i % 3 == 0) //3项一排 { dragUnit = NGUITools.AddChild(Layout.gameObject, Prefab_SkillDragUnit); dragUnitLayout = dragUnit.GetComponentInChildren <UIGrid>(); dragUnitGrid.Add(dragUnitLayout); j++; } skillItem = NGUITools.AddChild(dragUnitLayout.gameObject, Prefab_SkillItem); var item = skillItem.GetComponent <SkillsItem>(); item.DragAmount = j / columnAmount; //监听Item事件 item.OnItemClick = ItemSelectedEventHandle; item.InitItemData(playerSkillList[i]); m_skillsItems.Add(item); //默认项选择 if (CurrentSelectedItem == null) { if (i == 0) { item.OnBeSelected(); } } else if (CurrentSelectedItem.ItemFielInfo == playerSkillList[i]) { item.OnBeSelected(); } } yield return(null); //UIGRID里面的Item重排 dragUnitGrid.ApplyAllItem(P => P.Reposition()); Layout.Reposition(); #region ` 引导注入代码 m_skillsItems.ApplyAllItem(P => { if (P.ItemFielInfo.localSkillData.m_skillId == 3) { TraceUtil.Log(SystemModel.Rocky, "开始实例化技能3"); } //P.gameObject.RegisterBtnMappingId(P.ItemFielInfo.localSkillData.m_skillId, UIType.Skill, BtnMapId_Sub.Skill_ListItem // , NoticeToDragSlerp, P.DragAmount); }); #endregion yield return(null); if (m_noticeToDragAmount != 0) { StartCoroutine(DragAmountSlerp(m_noticeToDragAmount)); m_noticeToDragAmount = 0; } else { if (HasGuideArrow) { m_dragPanelComp.LockDraggable = true; } else { m_dragPanelComp.LockDraggable = false; } } }