public void ProcessRequest(HttpContext context)
        {
            bool value = false;
            string message = "Fail!";
            XElement result = new XElement("Result");

            try
            {
                int userID = int.Parse(context.Request["ID"]);
                using (PlayerBussiness db = new PlayerBussiness())
                {
                    QuestDataInfo[] quests = db.GetUserQuest(userID);
                    foreach (QuestDataInfo quest in quests)
                    {
                        result.Add(FlashUtils.CreateQuestDataInfo(quest));
                    }

                    value = true;
                    message = "Success!";
                }
            }
            catch (Exception ex)
            {
                log.Error("UserQuestList", ex);
            }

            result.Add(new XAttribute("vaule", value));
            result.Add(new XAttribute("message", message));

            context.Response.ContentType = "text/plain";
            context.Response.Write(result.ToString(false));
            //context.Response.BinaryWrite(StaticFunction.Compress(result.ToString(false)));
        }
Esempio n. 2
0
        /// <summary>
        /// 从数据库中加载当前玩家的的任务列表
        /// </summary>
        /// <param name="playerId">传入玩家编号</param>
        public void LoadFromDatabase(int playerId)
        {
            lock (_lock)
            {
                using (PlayerBussiness db = new PlayerBussiness())
                {
                    QuestDataInfo[] infos = db.GetUserQuest(playerId);

                    foreach (QuestDataInfo info in infos)
                    {
                        if (!_currentQuest.ContainsKey(info.QuestID))
                        {
                            //未开始
                            //if (info.IsExist && info.QuestInfo.TimeLimit && DateTime.Now.CompareTo(info.QuestInfo.EndDate) > 0)
                            //{
                            //    info.IsExist = false;
                            //}
                            _currentQuest.Add(info.QuestID, info);
                        }
                    }


                }
            }
            ClearConsortiaQuest();  /*清除非工会任务*/
            ClearMarryQuest();      /*清除非结婚任务*/
        }
Esempio n. 3
0
 /// <summary>
 /// 初始化用户任务记录 [操作:加载有效用户任务列表;加载监听事件]
 /// </summary>
 /// <param name="playerId"></param>
 public void LoadFromDatabase(int playerId)
 {
     lock (m_lock)
     {
         m_states = m_player.PlayerCharacter.QuestSite.Count() ==0 ? InitQuest() : m_player.PlayerCharacter.QuestSite;
         using (PlayerBussiness db = new PlayerBussiness())
         {
             QuestDataInfo[] datas = db.GetUserQuest(playerId);
             BeginChanges();
             foreach (QuestDataInfo dt in datas)
             {
                 QuestInfo info = QuestMgr.GetSingleQuest(dt.QuestID);
                 if (info != null)
                 {
                     AddQuest(new BaseQuest(info, dt));
                 }
             }
             CommitChanges();
         }
         if (m_list != null)
         { 
         }
     }
 }