示例#1
0
    private void OnInitEquip()
    {
        equipGridDic = new Dictionary <GameCmd.EquipPos, UIEquipGrid>();
        equipDic     = new Dictionary <GameCmd.EquipPos, uint>();

        GameObject cloneObj = m_trans_UIEquipGrid.gameObject;

        //创建装备格子初始化
        if (null != m_trans_EquipmentGridRoot)
        {
            UIEquipGrid equipGridTemp = null;
            Transform   equipTs       = null;
            GameObject  equipTemp;
            uint        equipId       = 0;
            string      equipTypeName = "";
            string      name          = "";
            GameObject  tempEquipGrid = null;
            for (GameCmd.EquipPos i = GameCmd.EquipPos.EquipPos_Hat; i < GameCmd.EquipPos.EquipPos_Max; i++)
            {
                if (i == GameCmd.EquipPos.EquipPos_Capes ||
                    i == GameCmd.EquipPos.EquipPos_Office)
                {
                    continue;
                }
                name    = i.ToString().Split(new char[] { '_' })[1];
                equipTs = Util.findTransform(m_trans_EquipmentGridRoot, name);
                if (null == equipTs)
                {
                    continue;
                }
                tempEquipGrid = NGUITools.AddChild(equipTs.gameObject, cloneObj);
                if (null == tempEquipGrid)
                {
                    continue;
                }
                equipGridTemp = tempEquipGrid.GetComponent <UIEquipGrid>();
                if (null == equipGridTemp)
                {
                    equipGridTemp = tempEquipGrid.gameObject.AddComponent <UIEquipGrid>();
                }

                equipGridTemp.InitEquipGrid(i);
                equipGridTemp.RegisterUIEventDelegate(OnEquipGridEventCallback);
                equipGridDic.Add(i, equipGridTemp);
            }
        }
        OnInitSuit(cloneObj);
    }
示例#2
0
 /// <summary>
 /// 装备格子事件回调
 /// </summary>
 /// <param name="eventType"></param>
 /// <param name="data"></param>
 /// <param name="param"></param>
 private void OnEquipGridEventCallback(UIEventType eventType, object data, object param)
 {
     switch (eventType)
     {
     case UIEventType.Click:
     {
         UIEquipGrid equipGrid = data as UIEquipGrid;
         if (null != equipGrid.Data)
         {
             DataManager.Manager <UIPanelManager>().ShowOtherItemTips(equipGrid.Data, null, GetEquipGem(), m_showInfo.user_level);
         }
         else
         {
             Engine.Utility.Log.Info("Equip pos is null");
         }
     }
     break;
     }
 }
示例#3
0
    private void OnInitSuit(GameObject prefab)
    {
        m_dicSuitGrid = new Dictionary <GameCmd.EquipSuitType, UIEquipGrid>();
        Transform   equipTs       = null;
        UIEquipGrid equipGridTemp = null;

        for (GameCmd.EquipSuitType i = GameCmd.EquipSuitType.Clothes_Type; i <= GameCmd.EquipSuitType.Magic_Pet_Type; i++)
        {
            if (i == GameCmd.EquipSuitType.Back_Type || i == GameCmd.EquipSuitType.Face_Type)
            {
                continue;
            }
            string name  = "";
            int    index = i.ToString().LastIndexOf('_');
            if (index != -1)
            {
                name = i.ToString().Substring(0, index);
            }
            if (string.IsNullOrEmpty(name))
            {
                continue;
            }
            equipTs = Util.findTransform(m_widget_Fashion.transform, name);
            if (equipTs == null)
            {
                continue;
            }
            GameObject tempEquipGrid = NGUITools.AddChild(equipTs.gameObject, prefab);
            if (null == tempEquipGrid)
            {
                continue;
            }
            equipGridTemp = tempEquipGrid.GetComponent <UIEquipGrid>();
            if (null == equipGridTemp)
            {
                equipGridTemp = tempEquipGrid.AddComponent <UIEquipGrid>();
            }
            equipGridTemp.InitSuitGrid(i);
            equipGridTemp.RegisterUIEventDelegate(OnSuitGridEvent);
            m_dicSuitGrid.Add(i, equipGridTemp);
        }
    }
示例#4
0
 private void OnSuitGridEvent(UIEventType eventType, object data, object param)
 {
     switch (eventType)
     {
     case UIEventType.Click:
     {
         UIEquipGrid equipGrid = data as UIEquipGrid;
         if (equipGrid.SuitData.suitBaseID != 0)
         {
             table.SuitDataBase database = GameTableManager.Instance.GetTableItem <table.SuitDataBase>(equipGrid.SuitData.suitBaseID, 1);
             if (database != null)
             {
                 DataManager.Manager <UIPanelManager>().ShowPanel(PanelID.FashionTips, data: database);
             }
         }
         else
         {
             Engine.Utility.Log.Info("Equip pos is null");
         }
     }
     break;
     }
 }
示例#5
0
    /// <summary>
    /// 显示装备
    /// </summary>
    /// <param name="itemList"></param>
    private void OnShowEquipGridInfo(List <GameCmd.ItemSerialize> itemList)
    {
        //装备栏
        GameCmd.ItemSerialize equipItem = null;
        uint        cacheEquipId        = 0;
        UIEquipGrid equipGrid           = null;
        BaseItem    baseItem            = null;
        bool        needSetData         = false;

        //GameCmd.eItemAttribute

        for (GameCmd.EquipPos i = GameCmd.EquipPos.EquipPos_Hat; i < GameCmd.EquipPos.EquipPos_Max; i++)
        {
            if (i == GameCmd.EquipPos.EquipPos_Capes ||
                i == GameCmd.EquipPos.EquipPos_Office)
            {
                continue;
            }
            needSetData = false;
            if (equipGridDic.TryGetValue(i, out equipGrid))
            {
                if (Equip(itemList, (int)i, out equipItem))
                {
                    baseItem = new BaseEquip(equipItem.dwObjectID, equipItem);
                    if (equipDic.TryGetValue(i, out cacheEquipId) &&
                        cacheEquipId != equipItem.qwThisID)
                    {
                        equipDic[i] = equipItem.qwThisID;
                        needSetData = true;
                    }
                    else if (!equipDic.ContainsKey(i))
                    {
                        equipDic.Add(i, equipItem.qwThisID);
                        needSetData = true;
                    }

                    if (needSetData)
                    {
                        equipGrid.SetGridData(baseItem);
                    }
                }
                else
                {
                    baseItem = null;
                    if (equipDic.ContainsKey(i))
                    {
                        equipDic[i] = 0;
                    }
                    needSetData = true;
                }

                if (needSetData)
                {
                    equipGrid.SetGridData(baseItem);
                }

                //强化等级
                GameCmd.StrengthList strengthData = this.m_showInfo.strengthList.Find((data) => { return(data.equip_pos == i); });
                if (strengthData != null)
                {
                    equipGrid.UpdateStrengthenInfo(strengthData.level, baseItem != null);
                }
                else
                {
                    equipGrid.UpdateStrengthenInfo(0, baseItem != null);
                }
            }
        }
    }