public static void initFundData(GameClient client) { lock (client.ClientData.LockFund) { FundData fundData = new FundData(); if (!FundManager.IsGongNengOpened(client, false)) { client.ClientData.MyFundData = fundData; } else { fundData.IsOpen = true; fundData.FundDic.Add(1, FundManager.initFundItem(client, EFund.ChangeLife)); fundData.FundDic.Add(2, FundManager.initFundItem(client, EFund.Login)); fundData.FundDic.Add(3, FundManager.initFundItem(client, EFund.Money)); List <FundDBItem> dbItemList = FundManager.DBFundInfo(client); if (dbItemList == null) { client.ClientData.MyFundData = fundData; } else { foreach (FundDBItem dbItem in dbItemList) { if (fundData.FundDic.ContainsKey(dbItem.FundType) && dbItem.State > 0) { FundItem fundItem = fundData.FundDic[dbItem.FundType]; fundItem.BuyType = 1; fundItem.BuyTime = dbItem.BuyTime; fundItem.FundID = dbItem.FundID; fundItem.AwardID = dbItem.AwardID; fundItem.AwardType = 1; if (fundItem.FundType == 3) { fundItem.Value1 = dbItem.Value1; fundItem.Value2 = dbItem.Value2; } if (fundItem.FundType == 2 && fundItem.BuyTime > DateTime.MinValue) { fundItem.Value1 = Global.GetOffsetDay(TimeUtil.NowDateTime()) - Global.GetOffsetDay(fundItem.BuyTime) + 1; } if (dbItem.State == 1) { FundManager.initFundAwardNext(client, fundItem); } } } client.ClientData.MyFundData = fundData; FundManager.CheckActivityTip(client); } } } }