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))); }
/// <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(); /*清除非结婚任务*/ }
/// <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) { } } }