示例#1
0
        public ItemObject GetItemObj(int index)
        {
            ShortCutItem shortCutItem = GetItem(index);

            if (null == shortCutItem)
            {
                return(null);
            }

            ItemObject itemObj = ItemMgr.Instance.Get(shortCutItem.itemInstanceId);

            if (null == itemObj)
            {
                if (shortCutItem.UseProtoID)
                {
                    if (null != mPkg)
                    {
                        return(mPkg.GetItemByProtoID(shortCutItem.protoId));
                    }
                }

                return(null);
            }

            if (null != mPkg)
            {
                SlotList slotList = mPkg.GetSlotList(shortCutItem.protoId);
                if (null != slotList && slotList.HasItem(shortCutItem.itemInstanceId))
                {
                    return(itemObj);
                }
            }

            if (null != mEquip)
            {
                for (int i = 0; i < mEquip._ItemList.Count; i++)
                {
                    if (mEquip._ItemList[i].instanceId == shortCutItem.itemInstanceId)
                    {
                        return(mEquip._ItemList[i]);
                    }
                }
            }

            return(null);
        }