コード例 #1
0
    void OnMetalSelected(object sender)
    {
        MetalScanItem_N item = sender as MetalScanItem_N;

        if (item == null)
        {
            return;
        }
        byte          voxelType = item.mType;
        MetalScanItem msi       = MetalScanData.GetItemByVoxelType(voxelType);

        if (null != msi)
        {
            mMetalSpr.spriteName = msi.mTexName;
            mMetalSpr.MakePixelPerfect();
            mMetalDes.text = PELocalization.GetString(msi.mDesID);
        }

        for (int i = 0; i < mMetalScanItemList.Count; ++i)
        {
            if (mMetalScanItemList[i] == item)
            {
                MetalScanData.m_ScanState[i] = item.mCheckBox.isChecked;
                break;
            }
        }
//		MetalScanData.m_ScanState[i] = true;
    }
コード例 #2
0
    void ResetMetal()
    {
        if (GameUI.Instance != null && GameUI.Instance.mMainPlayer != null)
        {
//            foreach (MetalScanItem_N item in mMetalScanItemList)
//            {
//                item.transform.parent = null;
//                GameObject.Destroy(item.gameObject);
//            }
//            mMetalScanItemList.Clear();

            if (mMetalScanItemList.Count < MetalScanData.m_ActiveIDList.Count)
            {
                for (int i = MetalScanData.m_ActiveIDList.Count - mMetalScanItemList.Count; i >= 0; --i)
                {
                    MetalScanItem_N item = Instantiate(mMetalScanItemPerfab) as MetalScanItem_N;
                    item.transform.parent        = mMetalScanGrid.transform;
                    item.transform.localPosition = Vector3.back;
                    item.transform.localScale    = Vector3.one;
                    item.e_OnClick          += OnMetalSelected;
                    item.mCheckBox.isChecked = true;
                    mMetalScanItemList.Add(item);
                }
            }

            for (int i = 0; i < mMetalScanItemList.Count; i++)
            {
                if (i < MetalScanData.m_ActiveIDList.Count)
                {
                    MetalScanItem msi = MetalScanData.GetItemByID(MetalScanData.m_ActiveIDList[i]);
                    if (msi == null)
                    {
                        continue;
                    }
                    mMetalScanItemList[i].gameObject.SetActive(true);
                    mMetalScanItemList[i].SetItem(msi.mMatName, msi.mColor, msi.mType, msi.mDesID);
                    mMetalScanItemList[i].mCheckBox.isChecked = MetalScanData.m_ScanState[i];
                }
                else
                {
                    mMetalScanItemList[i].gameObject.SetActive(false);
                }
            }
            mMetalScanGrid.repositionNow = true;
        }
    }