Ejemplo n.º 1
0
        /// <summary>
        /// 保存月卡信息到数据库,外部需保证线程安全
        /// </summary>
        /// <param name="yueKaDetail"></param>
        private static void _UpdateYKDetail2DB(GameClient client, YueKaDetail YKDetail)
        {
            string value = client.ClientData.YKDetail.SerializeToString();

            //更新缓存同时写到数据库去
            Global.SaveRoleParamsStringToDB(client, RoleParamName.YueKaInfo, value, true);
        }
Ejemplo n.º 2
0
 public static void CheckValid(GameClient client)
 {
     if (!GameFuncControlManager.IsGameFuncDisabled(GameFuncType.System1Dot4Dot1))
     {
         if (client != null)
         {
             lock (client.ClientData.YKDetail)
             {
                 if (client.ClientData.YKDetail.HasYueKa != 0)
                 {
                     int todayOffset = Global.GetOffsetDay(TimeUtil.NowDateTime());
                     if (todayOffset >= client.ClientData.YKDetail.EndOffsetDay)
                     {
                         client.ClientData.YKDetail.HasYueKa = 0;
                     }
                     else
                     {
                         int curBegOffsetDay = client.ClientData.YKDetail.CurOffsetDay - client.ClientData.YKDetail.AwardInfo.Length + 1;
                         if (todayOffset >= curBegOffsetDay + YueKaManager.DAYS_PER_YUE_KA)
                         {
                             client.ClientData.YKDetail.CurOffsetDay = todayOffset;
                             client.ClientData.YKDetail.AwardInfo    = "";
                             for (int i = curBegOffsetDay + YueKaManager.DAYS_PER_YUE_KA; i <= todayOffset; i++)
                             {
                                 YueKaDetail ykdetail2 = client.ClientData.YKDetail;
                                 ykdetail2.AwardInfo += "0";
                             }
                         }
                         else
                         {
                             for (int i = client.ClientData.YKDetail.CurOffsetDay + 1; i <= todayOffset; i++)
                             {
                                 YueKaDetail ykdetail3 = client.ClientData.YKDetail;
                                 ykdetail3.AwardInfo += "0";
                             }
                             client.ClientData.YKDetail.CurOffsetDay = todayOffset;
                         }
                     }
                     YueKaManager._UpdateYKDetail2DB(client, client.ClientData.YKDetail);
                 }
             }
         }
     }
 }