Exemplo n.º 1
0
    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);
    }
Exemplo n.º 2
0
 void Awake()
 {
     if (UI.MainUI.MainUIController.Instance.IsShowCommonTool)
     {
         CreatObjectToNGUI.InstantiateObj(CommonToolPrefab, transform);
     }
     m_guideBtnID = new int[2];
     RegisterEventHandler();
     m_uiCamera      = UICamera.currentCamera;
     m_heroVocation  = PlayerManager.Instance.FindHeroDataModel().PlayerValues.PlayerCommonValue.PLAYER_FIELD_VISIBLE_VOCATION;//玩家职业
     m_assemblyPanel = CreatObjectToNGUI.InstantiateObj(AssemblySkillPanel, DragParent.transform).GetComponent <AssemblySkillPanel>();
     m_upgradePanel  = CreatObjectToNGUI.InstantiateObj(UpgradeSkillPanel, UpgradeSkillPanelPos).GetComponent <UpgradeSkillPanel>();
 }