Esempio n. 1
0
    //lz-2016.08.08 更新可以合成当前选择的Item的脚本列表
    private void UpdateCurItemScriptList(int itemID)
    {
        this.m_BackupScriptItem = null;
        this.RecoveryScriptItem();
        if (!this.m_Formulas.ContainsKey(itemID))
        {
            return;
        }
        this.m_CurItemID = itemID;
        int scriptCount = this.m_Formulas[itemID].Count;

        for (int i = 0; i < scriptCount; i++)
        {
            UIScriptItem_N item = GetNewScriptItem();
            item.UpdateInfo(itemID, i);
            item.SelectEvent = (scriptItem) =>
            {
                if (item != this.m_BackupScriptItem)
                {
                    this.ScriptItemEvent(scriptItem.ItemID, scriptItem.ScriptIndex);
                    if (null != this.m_BackupScriptItem)
                    {
                        this.m_BackupScriptItem.CanSelectItem();
                    }
                    this.m_BackupScriptItem = item;
                }
            };
            item.transform.localPosition = new Vector3(i * this.mScriptItemPaddingX, 0, 0);
            this.mCurScriptItemList.Add(item);
            if (scriptCount == 1)
            {
                item.gameObject.SetActive(false);
            }
        }
    }
Esempio n. 2
0
 //lz-2016.08.09 选中第一个ScriptItem
 private void SelectFirstScritItem(bool execEvent = true)
 {
     if (this.mCurScriptItemList.Count > 0)
     {
         this.mCurScriptItemList[0].SelectItem(execEvent);
         this.m_BackupScriptItem = this.mCurScriptItemList[0];
     }
 }
Esempio n. 3
0
    //lz-2016.08.08 获取一个新的ScirptItem
    private UIScriptItem_N GetNewScriptItem()
    {
        UIScriptItem_N item = null;

        if (this.mScriptItemPool.Count > 0)
        {
            item = this.mScriptItemPool.Dequeue();
            item.gameObject.SetActive(true);
        }
        else
        {
            GameObject Go = GameObject.Instantiate(this.m_UIScriptItemPrefab.gameObject);
            Go.transform.parent        = this.mScriptListParent;
            Go.transform.localPosition = Vector3.zero;
            Go.transform.localScale    = Vector3.one;
            Go.transform.localRotation = Quaternion.identity;
            item = Go.GetComponent <UIScriptItem_N>();
        }
        return(item);
    }