示例#1
0
        public bool Available(uint TypeID, uint Quantity)
        {
            var ListSet = IFFEntry.GetIff.SetItem.SetList(TypeID);

            switch (TypeID.GetItemGroup())
            {
            case IffGroupFlag.ITEM_TYPE_SETITEM:
            {
                if (ListSet.Count <= 0)
                {
                    return(false);
                }

                else
                {
                    foreach (var data in ListSet)
                    {
                        Available(data.Keys.FirstOrDefault(), data.Values.FirstOrDefault());
                    }
                    return(true);
                }
            }

            case IffGroupFlag.ITEM_TYPE_CHARACTER:
            {
                return(true);
            }

            case IffGroupFlag.ITEM_TYPE_HAIR_STYLE:
            {
                return(true);
            }

            case IffGroupFlag.ITEM_TYPE_PART:
            {
                return(true);
            }

            case IffGroupFlag.ITEM_TYPE_CLUB:
            {
                if (ItemWarehouse.IsClubExist(TypeID))
                {
                    return(false);
                }
                else
                {
                    return(true);
                }
            }

            case IffGroupFlag.ITEM_TYPE_AUX:
            case IffGroupFlag.ITEM_TYPE_BALL:
            case IffGroupFlag.ITEM_TYPE_USE:
            {
                if (GetQuantity(TypeID) + Quantity > 32767)
                {
                    return(false);
                }
                return(true);
            }

            case IffGroupFlag.ITEM_TYPE_CADDIE:
            {
                if (ItemCaddie.IsExist(TypeID))
                {
                    return(false);
                }
                return(true);
            }

            case IffGroupFlag.ITEM_TYPE_CADDIE_ITEM:
            {
                if (ItemCaddie.CanHaveSkin(TypeID))
                {
                    return(true);
                }
                return(false);
            }

            case IffGroupFlag.ITEM_TYPE_SKIN:
            {
                if (ItemWarehouse.IsSkinExist(TypeID))
                {
                }
                return(true);
            }

            case IffGroupFlag.ITEM_TYPE_MASCOT:
            {
                return(true);
            }

            case IffGroupFlag.ITEM_TYPE_CARD:
            {
                return(true);
            }
            }
            return(false);
        }