Example #1
0
        private static FundItem initFundItem(GameClient client, EFund fundType)
        {
            FundItem result;

            lock (client.ClientData.LockFund)
            {
                FundInfo fundInfo = (from info in FundManager._fundDic.Values
                                     where info.FundType == (int)fundType
                                     orderby info.FundID
                                     select info).First <FundInfo>();
                FundItem item = new FundItem();
                item.FundID   = fundInfo.FundID;
                item.FundType = (int)fundType;
                item.BuyType  = 3;
                if (client.ClientData.VipLevel >= fundInfo.MinVip)
                {
                    item.BuyType = 2;
                }
                FundAwardInfo awardInfo = (from info in FundManager._fundAwardDic.Values
                                           where info.FundType == (int)fundType && info.FundID == fundInfo.FundID
                                           orderby info.AwardID
                                           select info).First <FundAwardInfo>();
                item.AwardID   = awardInfo.AwardID;
                item.AwardType = 3;
                FundManager.checkFundItemValue(client, item);
                result = item;
            }
            return(result);
        }